Есть. Хотя бы TypeScript из самых популярных. Есть и другие языки, преобразующиеся в JavaScript. Кроме того современные браузеры научились выполнять код на WebAssembly, в него можно компилировать даже C, хотя это пока не распространено, в будущем, вероятно, можно будет писать практически на любом языке программирования.
Есть self и static модификаторы доступа, это что-то плохое? По-моему это просто шикарная вещь, хотя ни разу не приходилось использовать.
Не ради разжигания срача (да и какой срач в комментах четырехдневной давности). Но я не мог не скинуть эту ссылку, увидев вопрос "чем плох php".
Тут как бы статья совсем немного устарела. Примерно на дохуя. Первый скриншот - дата публикации статьи. Второй скриншот - поддерживаемые версии php.
Да всё с ним так, это язык, на котором написано 90% веба. С выходом 7 версии PHP стал здоровым, взрослым языком. Вся критика - от хипстеров, которым нечем заняться.
Не, есть в его словах логика. ReactPHP - если вы его используете - вы нехороший человек, нормальных нагрузок он не выдержит, он и по hello world примерам не очень, а в реальных приложениях от него толку ноль, туда же относится и amp и workerman и.т.д, на нормальные нагрузки они не рассчитаны. Я пробовал даже в сам писать основу - ничего лишнего, набросал код - в jmeter после 10 потоков производительность тупо убивается на виртуалке с 1гб памяти и 1 ядром, и это просто отдача hello world. Не, я видел тесты ab на серверах с кучей ядер и памяти - но смысл? там они также отстают в 100 раз в лучшем случае. Проще тогда уже писать на java и выше (можете go, с и.т.д.). А все дело - опкоды, двойная работа будет происходить все время. Но, возьмем Swoole, и производительность уже достаточно хорошая) C++ все-таки под капотом, но пишем мы так-же на PHP) На самом деле я сам расстроен производительностью PHP в роли web-сервера, но надеюсь на jit, возможно, у самого руки дойдут - протестирую код на нем. Про бенчмарки PHPPM + ReactPHP + Laravel|Symfony|Pixie - тоже самое, это типичный hello world + малые нагрузки, на нормальных нагрузках IO также будет проседать из-за тройной работы, просто на мелочи все это выигрывает по времени связанной с инициализацией ядра cms. А когда начнет обрабатываться запрос на 100ms, другие коннекты начнут простаивать на то же время, причем сам прием данных от них остановится) Походу нашел, чем заняться на выходные - пошел ставить эксперементалку с jit)
Да но все ещё выигрывает низкий порог вхождения, одних только Drupal / Wordpress разрабов как грязи которые могут только на поверхности поколупать, но при этом считают себя высококвалифицированными спецами и зп от 60 хотят, стаж 1 год
Это ты PHP разрабам расскажи ...
Они будут писать UI на этом используя какой-нибудь php-gui и ссать кипятком.
И кстати тут уже без многопоточки, с костылями через кролика или сторонним расширением который хуй ты на php-fpm развернёшь. Так и живут, а нахуя она им, лучше рефакторить код и добавлять очередные 100500 оберток, поставить через конченный composer зависимостей и ждать 10 минут когда ебаных 5 пакетов развернутся, потому что composer это гребаный phar архив
Сейчас задену чувства верующих в слоника. Да ладно, я сам пару часов назад на Laravel проект пилил:))
Ммм горутины великолепны, го как глоток свежого воздуха с нормальной многопоточностью, остальные древние мамонты через анус все делают
Благодаря сахару async await для асинхронщины и либе TPL (Parallel, plinq) ситуация в шарпе стала в разы лучше. И местами не менее удобнее, чем с горутинами.
Параллельное программирование:
https://docs.microsoft.com/en-us/dotnet/standard/parallel-pr...
Асинхронное программирование:
https://docs.microsoft.com/en-us/dotnet/csharp/async
https://docs.microsoft.com/en-us/dotnet/csharp/programming-g...
И блог Стивена Клири с его кукбуком:
JS на бэке, хуже не придумаешь. Один только node_modules на простой сервис с тысячами зависимостей. Ебаные извращенцы.
Напоминает эпоху статей как на jquery одной строчкой сделать слайдер. Вот только там ебаная либа в 100кб тянется со всем дерьмом. Зато смотрите, одна строчка... омг
И ещё главное использовать только "последний писк ИТ-моды"... "Ты используешь MySQL? Ну ты лох, MongoDB лучше!", и пофиг, что там только мелочь хранить...
И я уже молчу о возможностях серверов и хостингов, на которых всё должно работать... Я редко у заказчиков видел что-то больше нежели "поддержка html, php, MySQL, cron, 10 ГБ диска", и этого при разумном подходе к разработке всегда за глаза хватало.
Тоже от этого припекает. PHP - composer, на каждый чих - зависимость тянущая еще парочку, но по сравнению с js еще нормально - на каждую зависимость тянет еще сотню, папка node_modules разрастается до невероятных размеров просто после установки пары библиотек. Я, конечно, тоже не любитель колес, но когда на каждый чих делают библиотеку, и пере используют - это бред, если это, конечно, не в рамках 1 проекта. Про безопасность и поддерживаемость, вообще, молчу. Недавно в какой-то либе js поменялся маинтейнер и залил бэкдор, збс че... Также - либа может пропасть, не, можно свои репы настроить и.т.д., но поддержка этих тысяч зависимостей в своих репах тоже будет не очень легкой.
"Нужно сделать это" - "вот есть либа с куевой тучей зависимостей, возьми ее ради пары методов" - "но я же могу сам написать, выйдет в 200 строк, я же программист" - "нет, так не правильно". PHP-FIG - припекает. Раньше - ой, нужно по PSR, эти интерфейсы и.т.д. Я понимаю - форматирование кода, это логично, хотя и без FIG бы все было нормально - в других языках есть неформальные стандарты, и все их используют. Но начинается - Request, Cache, Container и.т.д.... Почему я должен писать так, как мне кто-то сказал? В итоге: Laravel, Symfony и другие послали PHP-FIG, это уже не тренд, и 100% кроме форматирования кода, ничем из этого пользоваться не будут. Я понимаю - ложкой нужно есть жидкое. Но почему мне должны говорить - что есть, когда есть, какой рукой есть, сколько раз подуть, какая должна быть фаза Луны и.т.д. При этом должна быть обязательно написана куча абстракций - только зачем? Иногда это тупо лишнее, а иногда - привет PSR. Есть контейнер с PSR интерфейсом, напишем еще 10 абстракций... Про сборщики в js - там вообще ногу можно сломать, да и с количеством синтаксисов. Я не буду писать новый язык - напишу новый синтаксис, компилятор для интерпретируемого кода... ReactPHP говно, NodeJS - гуд для сервера. Сравнивал я производительность всего этого - разницы почти нет, для реальной нагрузки они оба пролетят - тут только сишки, java, хотя она будет по медленнее, но проще в разработке. Горутины - что за бред? Корутины придумали кучу лет назад... Про хайпы просто не хочется рассуждать. Потихоньку решил перейти на Си, ибо при сборке проектов для работы заметил: нету тонн зависимостей, если нужно 10 библиотек, то эти 10 библиотек не используются для чихов, чтобы заменить пару сотен строк, а используются из-за того, что это рабочие, проверенные комплексы решений.
IT-юмор
5.6K поста52.5K подписчиков
Правила сообщества
Не публикуем посты:
1) с большим количеством мата
2) с просьбами о помощи
3) не относящиеся к IT-юмору