• В чем же сила Node.js ?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Сила в том что все знают JS. Кто может писать на PHP/Ruby/Python? Те кто пишут на PHP/Ruby/Python соответственно (и скажем по 10%-15% от количества каждых кто может писать хотя бы на двух из трех языков. Кто может писать на JS? Все фронтэндеры + добрых каких 60%-70% от всех этих php/ruby/python/java/c# разработчиков...

    Что это дает? ОГРОМНЕЙШЕЕ комьюнити... большая часть быдло конечно но засчет огромнейшего количества разработчиков инструментарий начал просто очень быстро развиваться. Кому нужен инструмент написанный на Ruby если его можно написать на JS и его сможет поддерживать на порядок больше людей?

    Вопрос производительности по началу стоял как основная фишка языка. Все кричали наконец-то, V8 на сервере, асинхронность! Самый быстрый интерпритируемый язык на планете и все такое. Но на деле все чуть сложнее. JS реально быстрый. По сравнению с тем же Ruby он в разы быстрее! Но по большому счету на это адекватным людям плевать с высокой колокольни, так как js нифига не асиинхронный. JS работает в один поток. Причем в этом же потоке работает и сборщик мусора. Если он начнет все чистить - все замрет. Обычно это не сильно большая проблема но как-то забавно. Асинхронное в JS только работа с IO которая на плюсах/си реализована...

    Революционности так же нету. JS на сервере не новая идея и практиковался еще лет за 5 до. Просто это была очень удачная реализация да ктому же если бы не V8 то так же все было бы не так круто.

    Что до сравнения с PHP и т.д. - это инструменты для разных сфер. PHP - разработка web-сайтов. node.js - демоны, инструменты разработки, шины данных, доставка данных и т.д. Для всего остального PHP подходит больше. Есть правда пара интересных проектов главная цель которой устранить дублирование кода на сервере и на клиенте.... но подходят эти наработки пока только для очень простых проектов (хотя все относительно).

    Если вас прям плющит от нового, быстрого, современного, с клевым дизайном и тоже где повлиял гугл - golang.
    Ответ написан
    11 комментариев
  • Какой front-end фреймворк выбрать для проекта?

    aen
    @aen
    Keep calm and 'use strict';
    На фронтенде никогда не было вменяемого MVC, давно уже используется общий термин MVW (Model-View-Whatever). Как указал уважаемый @fornit1917 существует TodoMVC, на примере которого можно попытаться посмотреть как работает тот или иной инструмент. "Попытаться" - потому что реализованный функционал в TodoMVC довольно слаб. Нет банального роутинга.

    Выбирать вам скорее всего придется из Angular.js, Ember.js, Backbone.js (с архитектурой на Marionette/Thorax/Chaplin) и Knockout.js (к нему нужен роутер и какой то каркас типа Falcon.js).

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

    Видео-курсов по каждому из перечисленных вариантов уже куча. Найти курс можно в гугле в течение 5 минут. Как легально, так и напиратить по торрентам (тут уже я полагаюсь на вашу совесть).
    Ответ написан
    Комментировать