Когда использовать node.js vs sinatra vs rails?

Каковы наилучшие варианты использования этих трех языков/фреймворков? Полезно ли смешивать все (или 2)?

Ответ 1

Если вы создаете полное веб-приложение, вам, вероятно, следует использовать Rails, поскольку он предоставляет наиболее полные сервисы. Вы также можете использовать огромный объем работы, созданной сообществом.

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

node.js - отличная новая структура для создания гибких, масштабируемых приложений, но у нее почти нет библиотеки надстроек, которую создает зрелая платформа, такая как Rails. node.js действительно превосходит приложения, основанные на потоковой передаче и преобразовании данных по требованию. Некоторые из примеров, приведенных в Node Knockout, очень интересны, но они были созданы некоторыми исключительными командами.

В то время как записи Node Knockout очень хорошо сделаны по сравнению с типами приложений, выпущенных в 2009 году Rails Rumble, они кажется, сталкиваются как игрушки, не имеющие глубины и сложности. Это не значит дискредитировать работу, выполняемую командами новичков Node, но это показывает, что сильные стороны node.js в основном связаны с событиями в реальном времени и меньше с обычными более обычными приложениями на базе БД.

Ответ 2

Используйте Rails, если вы работаете на клиента и нуждаетесь в быстрых денежных средствах. Если вы хотите наслаждаться кодированием своего приложения и сохранять максимальную гибкость и скорость приложения, используйте Sinatra. Легко создавать с ним большие приложения, люди, которые говорят иначе, не использовали его.

Node.js больше похож на Rack, в котором Rails и Sinatra построены и на самом деле не сравниваются. Express.js, который вы можете использовать поверх Node.js, сопоставим с Sinatra, могут быть другие фреймворки, которые сравниваются с раздутым стеклом Rails, google it. Если вам нравится кодирование async Javascript, используйте Node.js. Это также быстрее, чем Sinatra и Rails, но кодирование в Ruby имеет свои преимущества, поскольку вы можете использовать множество действительно хороших рубиновых камней, что облегчает жизнь.