produtividade infinito e além com we.js

25
Produtividade Ao infinito e além!

Upload: alberto-souza

Post on 12-Apr-2017

222 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Produtividade infinito e além com We.js

Produtividade

Ao infinito e além!

Page 2: Produtividade infinito e além com We.js

Vou focar no We.js mas muitas coisas também valem para outros frameworks ...

Page 3: Produtividade infinito e além com We.js

Produtividade: capacidade de criar sistemas e partes de sistemas em pouco tempo e com pouco esforço

Page 4: Produtividade infinito e além com We.js

Generators!

Agiliza a construção gerando partes da aplicação como models, CRUD, templates e até o projeto inteiro.

https://github.com/wejs/generator-wejs

Page 5: Produtividade infinito e além com We.js

Gerando um app …

# Criando um projetoyo wejs:app tweet

# Criando um resourceyo wejs:resource tweet text:string lang:string userName:string userDisplayName:string userImage:text imageUrl:text

# Adicionado uma configuração para deploy no # Herokuyo wejs:heroku

Page 6: Produtividade infinito e além com We.js

Model-view-controller (MVC)!

1. Model - Powered by sequelize2. Controller - Com as ACTIONS básicas para criar um

CRUD3. View - por padrão o we-core possuí os formatos de

resposta em JSON ou JSONAPI e o formato de resposta com HTML está disponível no plugin de view (we-plugin-view)

https://pt.wikipedia.org/wiki/MVC

Page 7: Produtividade infinito e além com We.js

[MVC] Model

Responsável pela “estrutura e manipulação” dos dados salvos no banco de dados

Em uma aplicação com We.js os models são acessíveis no objeto: we.db.models e em um controller: req.we.db.models

Page 8: Produtividade infinito e além com We.js

[MVC] Controller

No We.js o controller possuí actions que são responsáveis por carregar, processar, montar os dados de acordo com cada requisição e emviar para a função de resposta adequada ex: res.ok() para sucesso ou res.queryError() para um erro de query

Page 9: Produtividade infinito e além com We.js

Context Loader

Controller Action

Model

Response method

Response Formater

ACL

Page 10: Produtividade infinito e além com We.js

(MVC) View ou resposta

Page 11: Produtividade infinito e além com We.js

Formas de selecionar o formato de resposta

● Com o Accept header: Accept application/vnd.api+json● Com o query param: responseType● Com extenção: .json ou .rss

https://en.wikipedia.org/wiki/Content_negotiation

Page 12: Produtividade infinito e além com We.js

(MVC) View ou resposta

HTML: http://albertosouza.net/article

RSS: http://albertosouza.net/article.rss

JSON: http://albertosouza.net/article.json

E que tal: http://albertosouza.net/article.money

Page 13: Produtividade infinito e além com We.js

Interoperabilidade

● JSONAPI incluído no core do We.js● Os formatos de resposta são extensíveis com plugins● Gerador de documentação com swagger

Page 14: Produtividade infinito e além com We.js

Interoperabilidade ...

# Criando uma documentação no formato Swaggeryo wejs:doc

# Get tweets list in JSONAPI:curl -i -H "Accept: application/vnd.api+json" http://localhost:4000/tweet

# Pegando um artigo do meu site em JSONAPIcurl -i -H "Accept: application/vnd.api+json" http://albertosouza.net/artigo/8

Page 15: Produtividade infinito e além com We.js

Plug and extend

Sistema avançado de plugins- Install, update and extend!- Public folders (optional)- Autoload

Sistema de eventos e hooks - do something on …- Eventos são EventEmiters- Hooks tem callback

Page 16: Produtividade infinito e além com We.js

E muito mais ...

Plug and play, modules

Theme modules

Code with Javascript!

Suport to Linux, Mac and Windows

Object-relational mapping (ORM)

Access Control List (ACL)

Simpler structure

Generate forms from JSON or models Extensive response formats

Administrative interface

Layout, regions and Widgets

Url alias

Generate Swagger documentation

Compatible with Express.js middlewares

Project distributions

Hooks and events

Page 17: Produtividade infinito e além com We.js

ROADMAP

Mas isso tudo é só o começo!

Page 18: Produtividade infinito e além com We.js

A maioria das pequenas empresas e startups não podem pagar ou esperar por um sistema “perfeito” ...

Tempo é dinheiroProduto mínimo viável (MVP )

Page 19: Produtividade infinito e além com We.js

Mas como permitir que todas essas ideias virem realidade?

Page 20: Produtividade infinito e além com We.js

Através de um serviço online onde o usuário poderia escolher o que deseja e depois mandar o serviço “gerar” seu app

… e talvez já realizar o deploy ...

Page 21: Produtividade infinito e além com We.js

Várias empresas já estão avançando para criar algo parecido ex:

https://treeline.io

Node machine spec:

Page 22: Produtividade infinito e além com We.js

Mas todas essas opções exigem conhecimentos de desenvolvimento ...

Page 23: Produtividade infinito e além com We.js

BOOM! aí surge o projeto We Build

● SaaS + BaaS = Serviço online para construír e realizar o deploy de sistemas

● Self service de desenvolvimento de APIs● Os “desenvolvedores” vão montar os seus sistemas

descrevendo o que querem com suporte á templates e ajuda virtual

● Geranciamento de equipes e tarefas ● E muito mais ...

Page 24: Produtividade infinito e além com We.js

Ei, você aí tem uma empresa se possível de hosting e gostou do We Build

Entre em contato, precisamos de apoio $$ para avançar ...

Email: [email protected] [email protected]

Page 25: Produtividade infinito e além com We.js

We.js

Github: https://github.com/wejs/we

Site: https://wejs.org

Twitter: https://twitter.com/we_js

We.js CMF project: https://github.com/wejs/we/issues/158

Email: [email protected]