Node.js Экспресс против Флэтайрон - PullRequest
18 голосов
/ 30 января 2012

Сродни этому вопросу , «Я ищу плюсы и минусы каждой структуры и почему одна особенно полезна по сравнению с другой» (но в основном то, что Flatiron может предложить, из-за того, чтоэтот Экспресс уже подробно описан в этом вопросе).

Из моего небольшого опыта работы с Экспрессом, похоже, речь идет только о том, что вам нужно, и не более.Flatiron, кажется, делает это, но гораздо более минималистично.Если вы посмотрите на их веб-сайт , то увидите, что они предлагают около 5-7 основных функций по сравнению со многими другими, включенными в Express.

Наконец, что представляется наиболее перспективным длямасштабируемые веб-приложения, и почему я должен использовать ту или иную инфраструктуру, а не использовать инфраструктуру вообще?

Ответы [ 3 ]

12 голосов
/ 03 сентября 2013

Некоторое обновление через полтора года после того, как был задан этот вопрос:

Первое отличие, которое приходит на ум при сравнении Express с Flatiron , заключается в том, что Expressявляется серверной средой, в то время как Flatiron объявляется изоморфной, охватывающей как серверную, так и клиентскую стороны, и поэтому должен подходить для разработки традиционных серверных приложений, одностраничных приложений на стороне клиента и всего, что между ними (многонапример, Derby или Meteor ).Однако мне не удалось найти какие-либо примеры использования Flatiron на стороне клиента, и не из-за отсутствия попыток.

Существует проблема в GitHub для предоставления простого примера приложения TODOэто было открыто более двух лет, и (из того, что я понимаю, читая комментарии там), вы не можете создать клиентское приложение, используя только Flatiron, без добавления таких вещей, как jQuery , Backbone и т. д.потому что клиентский аспект Flatiron еще не готов («Мы работаем над этим. У нас еще есть несколько шагов, чтобы сделать его полностью изоморфным».), что кажется реальной проблемой длярамки, которые пытались быть изоморфными с самого начала.(См. Также связанную проблему TodoMVC: Добавить пример FlatIron ).

Вывод таков: Flatiron еще не готов.Когда он готов, он может охватывать гораздо больше областей веб-разработки, чем Express, но на самом деле трудно сказать, когда это может произойти, если простой пример приложения TODO не мог быть представлен годами.

Между тем существует множество фреймворков Node, и их очень сложно отследить, поэтому я рекомендовал бы сделать это сейчас и в будущем, чтобы увидеть список веб-фреймворков вВики Joyent / Node на GitHub и сравните их с инфраструктурой на стороне клиента в проекте TodoMVC - где эти оба списка пересекаются, будут структуры, которые охватывают как сервер, так и клиент и способны написать простое TODOприложение в них - которое, надеюсь, будет включать Flatiron однажды.

6 голосов
/ 30 января 2012

я считаю, что экспресс минимален, а флатирон кажется более полным / сложным.Лучшее для масштабирования - сложный вопрос, потому что оба ничего не делают для увеличения масштабируемости вашего приложения.Они облегчают разработку приложения, предоставляя простые способы, например, exmpl для добавления маршрутов (вместо того, чтобы вы сходили с ума из-за собственного неисправного регулярного выражения).

Лично я полюбил все маленькое промежуточное программное обеспечение connect и expressа также dynamicHelpers (для шаблонов), который, похоже, не поддерживается flatiron (да, у них есть промежуточное ПО, но не похоже, что вы могли бы использовать те из connect. EDIT ; как оказалосьout, Union, который является обработчиком промежуточного программного обеспечения flatirons, совместим для подключения, так что вы можете использовать промежуточное программное обеспечение connect).

Я бы порекомендовал кому-то использовать Express поверх flatiron, но опять же;Я бы хотел, чтобы меня лучше доказали.

1 голос
/ 03 июня 2016

Мне кажется, что Экспресс битвы против Флэтайрона явно выиграл Экспресс.

Нет активной разработки для банкомата Flatiron Framework.

См. Репозиторий GitHub: https://github.com/flatiron/flatiron. Последний выпуск 0.4.2 от 16 сентября 2014 года.

Официальный сайт Flatiron http://flatironjs.org/ недоступен.

...