Cheguei nesse resultado após ficar tendencioso entre quatro servidores (cortei a extensão js para simplificar): Express, Restify, Hapi e Sails (por favor não entenda que os outros são ruins apenas não me adaptei a eles). Agora não tinha mais escolha o máximo que poderia fazer era um teste de campo com cada um e ver qual deles me atendia.
A lista abaixo de prós e contras representam as observações que tive sobre cada um deles, não é uma regra geral ou uma opinião formada pelo mundo.
Express
Prós:- Bom ponto de partida
- Baixa curva de aprendizado
- Próximo ao padrão Node.js para Web Middleware
- Totalmente customizável
- Alvo no navegador e template
- Todos os endpoints devem ser criados manualmente
- Sem padrão ou prescrição, tipo DIY (Do it yourself - Faça você mesmo)
Restify
Prós:- Boa estabilidade
- DTrace automático e suporte para todo handlers ou plataformas
- Construído em throding
- Suporte SPDY*
- Estrita API com total controle sobre as interações HTTP
- Visibilidade dentro das características da App
- Todos os endpoints devem ser criados manualmente
- Sem padrão ou prescrição, tipo DIY
- Pouca documentação
Hapi
Prós:- Suportado pelo Labs Walmart
- Controle granular
- Detalhada referencia da API com suporte para geração da documentação
- Significantemente mais funcional para construção de Web Servers
- Pseuda prescrição com abordagem para configuração cêntrica
- Caching, Autenticação e validação de dados
- Bom conjunto de Plugins, com base em arquitetura escalável
- Boa construção de blocos, mas deixa para você seis próprios dispositivos para padrões de projeto
- Esconde módulos específicos
- Todos os endpoints devem ser criados manualmente
Sails
Prós:- MVC - possibilidade de fazer Visão e Serviços em um só lugar
- Rápido desenvolvimento RESTful API
- Convenção sobre a configuração (estende o Express)
- Construído sobre modelos de uso (ORM)
- Suporte a RPC, Web e Mobile SDK
- Conectores de dados
- Totalmente configurado quando necessário.
- Extensa documentação
- Suporte comercial e fulltime ao projeto (Loopback)
- Serviços Mobile (Push, Geo, Storage, Sync, Offline, File, Device, User)
- Autenticação, validação e autorização
- Endpoints são criados através de geração automática
- Alta curva de aprendizado
- Deve obrigatoriamente seguir o modelo prescrito (fiquei na dúvida se colocava isso como um pró ou contra)
Deseja aprender mais sobre o Sails.js? Baixe aqui uma apostila gratuita que criei.
Obrigado e até a próxima
Fernando Anselmo
* SPDY (pronunciado speedy) é um protocolo de rede desenvolvido principalmente pela Google para transporte de dados pela internet. Apesar de não ser atualmente um protocolo padrão, o grupo que está desenvolvendo o SPDY está trabalhando em direção a uma padronização cuja última versão é o spdy/4 (Wikipédia).
0 comentários:
Postar um comentário