Node.js для простых сайтов. Стоит ли забивать на PHP?
Сразу с кажу, что PHP знаю поверхностно, а Node.js, совсем не знаю, но знаю JS. Так или иначе нужно будет углубляться в серверные технологии. Стоит ли сразу начать с ноды и использовать ее для простых сайтов (50–150 т.р. с соответствующими требованиями)?
За ноду:
+ Виртуальные хостинги для нее уже есть, тут особых проблем не будет.
+ Пока все приложения, которые пишу, не работают под высокими нагрузками, но если такое случится, придется так или иначе переходить либо на нее либо на подобную технологию.
+ Асинхронную концепцию давно усвоил.
+ Возможно, в серверной части будет не так много асинхронных задач, как во фронтэнде и не будет такой лапши из колбеков.
Против:
— Ненавижу лапшу из колбеков. Не представляю как можно писать что-либо серьезное на JS не используя Фреймворки, которые хоть как-то имитируют синхронность. На худой конец jQuery. Если node.js близок к нативному JS, будет сложнее. Либо придется искать фреймворк для него.
— ПХП нравится за кучу встроенных функций (работы с массивами, строками, БД, обработкой картинок и т.д.). Если в ноде функционал уровня ES4 и тупо нет библиотеки, чтобы ужать картинку на сервере не будет ли это слишком плачевным?
— Так ли страшен черт как его малюют. Понятно зачем нужна асинхронность на клиенте. Но на сервере? Только БД и связь с другими серверами (если такое встречается в реальной жизни). Может быть есть способы оптимизировать это и без асинхронности? Может быть ПХПшники через пол года придумают?
Прошел год. Поработал с нодой. Не растекаясь мыслью по древу скажу подписчикам, что уже пора начинать ее ковырять. Через год разовьются генераторы, koa наберет популярность, на ее основе появятся высокоуровневые фреймворки и разработка сильно упроститься. Думаю, как-то так будет)
Скорее надуманная проблема и дело привычки. Можно структурировать код и без лапши.
Так ли страшен черт как его малюют.
Плюс nodejs в поддержке множества соединений без особых накладных расходов. Для http (без сокетов) не очень важно. Для меседжеров, игр, какого-то специфичного интерактивного функционала маст хев.
Люблю, когда это за меня делают фреймворки :-) Но если там нет такой кучи разных событий как во фронтенде от каждой кнопочки, то может быть терпимо. В том то и вопрос, легче ли на практике его структурировать в отличие от задач клиентского JS?
Для меседжеров, игр, какого-то специфичного интерактивного функционала маст хев.
А разработку простого сайта за 50–150 т.р. не слишком усложнит?
А разработку простого сайта за 50–150 т.р. не слишком усложнит?
Я бы пока не использовал его там, где это не нужно. Для объемного кода пока не доросли ни фреймворки ни библиотеки. Вы ниже пишите, что используете чистый PHP, тогда может быть и альтернатива, но лично для меня фреймворки очень экономят время.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.