JS или PHP

JS
9
Нейтральная
сторона
12
PHP
4
JavaScript рулит
Прежде чем писать комментарии или выбрать сторону вы должны авторизироваться!
PHP the best

10-07-2009 21:57 0

Учил яваскрипт значит за него ))

4 комментария
WinuX 10-07-2009 23:45 0

Zell, как можно сравнивать телевизор и холодильник?

Lelik 10-07-2009 23:48 0

WinuX, незнаю как он сравнивает но вот хотелосб понизить карму автору а я не нашел где

Lelik 10-07-2009 23:50 0

Lelik, а все нашел наконец, может теперь не сможет создавать вары

Recko 11-07-2009 00:35 0

Zell, и мне понизь карму

16-02-2016 12:00 +3

Прошло 6 с хуем лет и теперь этот вар не выглядит бессмысленным. Недавно писал ТЗ под систему с бэкендом на JS.
Можно уже и посравнивать.

10 комментариев
opera.rulez 16-02-2016 13:04 0

cherepets, Был в своё время ещё ActiveX-объект PHP active script, который можно было вызывать из Интернет Эксплорера. Так что теоретически можно было и на фронтенде использовать PHP.

Правда, из ветки PHP 5.3 его исходники удалили и больше не обновляли. Чтобы скомпилировать его с новыми пыхами, придётся слишком много дописывать (с тех пор в ядре PHP у многих функций изменилось количество аргументов).

cherepets 16-02-2016 15:15 0

opera.rulez, Ну, ты можешь просто генерить разметку из PHP и на каждый чих перезагружать страницу. Или сделать свой аналог runat из Asp.Net.

opera.rulez 16-02-2016 16:01 0

cherepets, Ну так-то сейчас реализованы компиляторы с кучи языков на JS. Теперь можно чуть ли не машинные коды в него переводить: en.wikipedia.org/wiki/Emscripten

Известный программист-маньяк Фабрис Белляр даже Линукс запустил в браузере поверх JS: bellard.org/jslinux/

Вопрос лишь в том, насколько это всё будет тормозить...

А что такое runat?

cherepets 16-02-2016 16:42 0

opera.rulez, Ну, типо у тебя генерится серверный обработчик на каждую фигню и ajax запрос к нему, и какой-то js-коллбэк. И получаешь нечто странное, которое хз как работает, но обычно работает.

opera.rulez 16-02-2016 17:07 0

cherepets, Т. е. в текст страницы вставляешь что-то типа <script language="X3-kakoy-yazyk">bla-bla-bla</script>, js-код аяксом отправляет bla-bla-bla на сервер и забирает результат отработки скрипта?

cherepets 16-02-2016 17:55 0

opera.rulez, Да. И этот скрипт херачится твоим фреймворком для бэкенда.

opera.rulez 16-02-2016 18:08 0

cherepets, С одной стороны, выполнять всё на сервере удобно, потому что экономится драгоценная оперативка мобильных телефонов.

С другой стороны, если скрипт хранится у клиента, но исполняется на сервере, то это должно увеличивать трафик.

Лучше уж совсем свести к минимуму количество клиентских скриптов.

Slimmer 16-02-2016 22:51 +1

cherepets, систему с бэкендом на JS
чем обусловлен такой выбор?

cherepets 17-02-2016 01:09 +2

Slimmer, Пишет один фрилансер фуллстак, может переиспользовать модель данных. Да и вообще лучше всего знает JS => пусть на нём и пишет.
Ну и в принципе на Node.JS сейчас можно довольно быстро запуститься.

Из серьёзных минусов пока вижу, что если система разрастется, то будет сложно поддерживать всю эту слаботипизированную ересь (ну, можно будет начать медленно идти в сторону TS) и проблемы с производительностью (интерпретация и однопоточность - это сурово), но это всё только в далеком будущем если проект выживет..

Jotun 17-02-2016 01:20 0

cherepets, Из серьёзных минусов пока вижу, что если система разрастется, то будет сложно поддерживать всю эту слаботипизированную ересь
Люто плюсую. Разбираться в чужом коде (или своем, написанном давно) сложно. Разбираться в коде, написанном на слаботипизированных языках, сложно втройне.

проблемы с производительностью (интерпретация и однопоточность - это сурово)
Проблема с однопоточностью нормально решается широким пулом сервера.
Не так-то часто нам нужна асинхронность внутри обработки одного отдельного запроса.

10-07-2009 15:09 +4

автор, учите матчасть, а потом сравнивайте

3 комментария
boringbunny 10-07-2009 17:56 0

bFree, я бы предложил еще холивар "белое против квадратного"

Lelik 10-07-2009 21:35 0

boringbunny, да да это точно

Recko 11-07-2009 00:35 0

bFree, я хз

10-07-2009 20:01 +2

прописываю автору "Убейсебин" 5 раз в день

0 комментариев
16-02-2016 12:56 0

В JS ООП через жопу.

9 комментариев
cherepets 16-02-2016 15:05 0

opera.rulez, 1) TypeScript
2) ES6

opera.rulez 16-02-2016 16:06 0

cherepets, Голосую за ES6. Промежуточные языки меня не впечатлили.

При использовании в качестве серверного языка или в качестве встроенного в софт — неплохо.

Проблемы возникают при использовании в браузере. В 2016-м году нельзя полагаться на полную поддержку не только ES5, но даже ES3.

cherepets 16-02-2016 16:40 0

opera.rulez, Мне сам язык нравится, но среда расчитана не на него => ничего о его типах не знает => код местами работает не так как написан, рефлексия не работает, цеплять сторонние либы - мука.

BerkutOi 16-02-2016 16:48 0

cherepets, вроде webstorm поддерживает ES6

cherepets 16-02-2016 16:50 0

BerkutOi, Я про TS. Для него ж дефенишны еще нужны под каждую либу.

Jotun 17-02-2016 00:10 0

opera.rulez, Но в PHP через жопу все.
А если не юзать JS для серверной части и использовать всякие там милые jquery, angular, node, backbone и прочие фреймворки, то писать на нем код становится относительно приятно (из-за огромного разнообразия возможностей). Плюс опять же описание стандарта ES6 радует.

cherepets 17-02-2016 01:10 0

Jotun, Но в PHP 4 через жопу все.

Пофиксил.

Jotun 17-02-2016 01:22 0

cherepets, Не знаю, по ощущениям 5.5 тоже говно какое-то по сравнению с более продвинутыми прикладными языками (я имею в виду в первую очередь Java и C#, но и Ruby с JS тоже).

opera.rulez 18-02-2016 13:21 0

Jotun, Ты просто не изучил phpsadness.com/ , поэтому тебе всё кажется говном.

28-02-2016 18:20 0

Попытка примирения: govnokod.ru/18109

Код на сервере и на клиенте одинаковый, и это даже не Node.js.

2 комментария
Jotun 28-02-2016 22:49 0

opera.rulez, www.govnokod.ru/4183

opera.rulez 28-02-2016 23:12 0

Jotun, Держите некрофила!

В текущей версии ХВ для вывода комментариев Embedded JS уже не используется.