Desenvolvimento	
  web	
  em	
  poucos	
  passos	
  

Eder	
  Magalhães	
  
@edermag	
  
Agenda	
  
ü  Qual	
  é	
  o	
  seu	
  foco	
  em	
  TI?	
  
ü  Pontos	
  importantes	
  na	
  escolha	
  da	
  linguage...
Oportunidades	
  
ü  O	
  mercado	
  de	
  desenvolvimento	
  de	
  soPware	
  é	
  excelente;	
  
ü  A	
  demanda	
  po...
Tenho	
  uma	
  idéia,	
  mas…	
  
ü  Existem	
  várias	
  técnologias…	
  
ü  Qual	
  escolher?	
  
ü  O	
  ideal	
  s...
Ou,	
  quero	
  trabalhar	
  com	
  dev,	
  mas…	
  
ü  Existem	
  várias	
  técnologias…	
  
ü  Qual	
  escolher?	
  
ü...
E	
  o	
  Java	
  (EE)	
  
ü  Uma	
  suíte	
  completa	
  para	
  desenvolvimento	
  corpora]vo;	
  
ü  Atende	
  o	
  d...
Outros	
  pontos	
  
ü  Plataforma	
  consolidada;	
  
ü  Muita	
  documentação	
  (material	
  bom	
  e	
  gratuito);	
...
Mas	
  …	
  
ü  São	
  tantas	
  tecnologias:	
  
ü  JSF,	
  JSP,	
  EL,	
  Servlet,	
  CDI,	
  EJB,	
  JPA,	
  Bean	
  ...
Não	
  se	
  esqueça…	
  
ü  Sistema	
  operacional;	
  
ü  Ambiente	
  de	
  desenvolvimento	
  –	
  IDE;	
  
ü  Banco...
Forge	
  
ü  Ferramenta	
  RAD	
  para	
  desenvolvimento	
  Java	
  EE;	
  
ü  Disponibiliza	
  um	
  “shell”	
  alto-­...
Forge++	
  
ü  Compá]vel	
  com	
  o	
  modelo	
  de	
  desenvolvimento	
  ágil;	
  
ü  Segue	
  o	
  conceito	
  de	
  ...
Primeiro	
  passo,	
  iniciando	
  o	
  projeto	
  
ü  Criar	
  um	
  novo	
  projeto;	
  
$ new-project --named {nome} -...
Segundo	
  passo,	
  o	
  ]po	
  de	
  aplicação	
  
ü  Escolher	
  o	
  modelo/]po	
  de	
  aplicação	
  (web):	
  
$ sc...
Terceiro	
  passo,	
  a	
  persistência	
  
ü  Indicar	
  o	
  provider	
  JPA:	
  
$ persistence setup --provider {JPA I...
Quarto	
  passo,	
  a	
  en]dade	
  
ü  Definir	
  uma	
  classe	
  en]dade	
  (modelo)	
  do	
  sistema:	
  
$ entity --n...
Quinto	
  passo,	
  o	
  resto	
  das	
  camadas	
  
ü  Vamos	
  usar	
  o	
  conceito	
  scaffold	
  para	
  construir	
 ...
Sexto	
  passo,	
  configurar	
  o	
  server	
  
ü  No	
  exemplo	
  vou	
  demonstrar	
  como	
  usar	
  o	
  JBoss	
  AS...
Pronto!	
  
ü  Agora	
  é	
  só	
  executar	
  o	
  projeto:	
  

$ build
$ as7 deploy
Running	
  
Uma	
  mudança	
  
ü  Criar	
  um	
  serviço	
  rest	
  

$ rest setup
$ rest endpoint-from-entity –contentType applicati...
Teste,	
  sempre!	
  
ü  Oferece	
  integração	
  com	
  o	
  projeto	
  Arquillian;	
  

$ arquillian setup
$ arquillian...
O	
  que	
  mais?	
  
ü  Deploy	
  em	
  cloud	
  (OpenshiP)	
  –	
  hqp://goo.gl/fH08XD	
  

	
  
Log	
  	
  de	
  tudo	
  
$ new-project –-named webdrive --topLevelPackage br.com.yaw.webdrive
--projectFolder .
$ scaffol...
Links	
  
ü  hqp://forge.jboss.org/	
  
ü  hqps://github.com/forge/core	
  
ü  hqp://forge.jboss.org/docs/using/samples...
Vídeo	
  aulas	
  /	
  projetos	
  exemplo	
  
ü  hqp://www.yaw.com.br/screencast	
  
ü  hqp://www.yaw.com.br/open/proje...
Obrigado!	
  
ü  eder@yaw.com.br	
  
ü  hqps://twiqer.com/edermag	
  
ü  hqp://github.com/edermag	
  
ü  hqp://edermag...
Upcoming SlideShare
Loading in …5
×

Desenvolva uma app Java web em poucos passos, com o Forge

669 views
544 views

Published on

Apresentação da palestra aonde falei sobre a tecnologia JBoss Forge. Com foco prático demonstrei como criar uma aplicação web Java, do zero, em poucos passos com o Forge.

Published in: Technology
2 Comments
3 Likes
Statistics
Notes
No Downloads
Views
Total views
669
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
18
Comments
2
Likes
3
Embeds 0
No embeds

No notes for slide

Desenvolva uma app Java web em poucos passos, com o Forge

  1. 1. Desenvolvimento  web  em  poucos  passos   Eder  Magalhães   @edermag  
  2. 2. Agenda   ü  Qual  é  o  seu  foco  em  TI?   ü  Pontos  importantes  na  escolha  da  linguagem;   ü  Java  é  uma  opção,  mas  existem  muitos  frameworks  e   configurações;   ü  A  proposta  do  JBoss  Forge;   ü  Vamos  criar  um  projeto  web,  com  Forge,  em  7  passos;   ü  Executar  e  testar  o  projeto;   ü  Links  e  complementos;  
  3. 3. Oportunidades   ü  O  mercado  de  desenvolvimento  de  soPware  é  excelente;   ü  A  demanda  por  novas  soluções  é  crescente;   ü  Startups  nascendo  todos  os  dias,  em  diversos  cantos  do   Brasil;  
  4. 4. Tenho  uma  idéia,  mas…   ü  Existem  várias  técnologias…   ü  Qual  escolher?   ü  O  ideal  seria  uma  tecnologia  simples,  eficiênte  e  poderosa.   ü  E,  principalmente,  que  viabilize  a  criação  do  produto!  
  5. 5. Ou,  quero  trabalhar  com  dev,  mas…   ü  Existem  várias  técnologias…   ü  Qual  escolher?   ü  O  ideal  seria  uma  tecnologia  simples,  eficiênte  e  poderosa.   ü  E,  principalmente,  que  ofereça  uma  boa  remuneração!  
  6. 6. E  o  Java  (EE)   ü  Uma  suíte  completa  para  desenvolvimento  corpora]vo;   ü  Atende  o  desenvolvimento:   ü  Web;   ü  Componentes  de  persistência;   ü  Componentes  de  integração;   ü  Segurança  ,  escalabilidade  …  
  7. 7. Outros  pontos   ü  Plataforma  consolidada;   ü  Muita  documentação  (material  bom  e  gratuito);   ü  Conta  com  uma  grande  comunidade;   ü  Apoiada  por  grandes  players;  
  8. 8. Mas  …   ü  São  tantas  tecnologias:   ü  JSF,  JSP,  EL,  Servlet,  CDI,  EJB,  JPA,  Bean  Validator,  JMS,  JAX-­‐RS,   JAX-­‐WS,  Hibernate,  Spring,  Struts,  Wicket,  GWT,  Tapestry,   Freemaker…  ufa;   ü  E  as  configurações???   ü  Montar  a  estrutura  de  desenvolvimento  é  buracrá]co;   ü  Quais  componentes  u]lizar?   ü  Como  testar?  
  9. 9. Não  se  esqueça…   ü  Sistema  operacional;   ü  Ambiente  de  desenvolvimento  –  IDE;   ü  Banco  de  dados;   ü  Build;  
  10. 10. Forge   ü  Ferramenta  RAD  para  desenvolvimento  Java  EE;   ü  Disponibiliza  um  “shell”  alto-­‐nível;   ü  Facilita  a  construção  de  projeto;   ü  Facilita  o  uso  e  configuração  de  frameworks;   ü  Facilita  a  definição  de  testes  automa]zados;  
  11. 11. Forge++   ü  Compá]vel  com  o  modelo  de  desenvolvimento  ágil;   ü  Segue  o  conceito  de  plugin/extensões;   ü  É  e  promove  o  uso  de  tecnologias  open  source;   ü  Projeto  JBoss,  man]do  pela  Red  Hat;  
  12. 12. Primeiro  passo,  iniciando  o  projeto   ü  Criar  um  novo  projeto;   $ new-project --named {nome} --topLevelPackage {br.com.projeto} --projectFolder {/diretorio}
  13. 13. Segundo  passo,  o  ]po  de  aplicação   ü  Escolher  o  modelo/]po  de  aplicação  (web):   $ scaffold setup
  14. 14. Terceiro  passo,  a  persistência   ü  Indicar  o  provider  JPA:   $ persistence setup --provider {JPA Impl} --container { ... }
  15. 15. Quarto  passo,  a  en]dade   ü  Definir  uma  classe  en]dade  (modelo)  do  sistema:   $ entity --name {nome}
  16. 16. Quinto  passo,  o  resto  das  camadas   ü  Vamos  usar  o  conceito  scaffold  para  construir  os   componentes  do  model  ao  front-­‐end  (por  en]dade  criada):   $ scaffold from-entity
  17. 17. Sexto  passo,  configurar  o  server   ü  No  exemplo  vou  demonstrar  como  usar  o  JBoss  AS  (v.  7):   $ forge install-plugin jboss-as-7 $ as7 setup
  18. 18. Pronto!   ü  Agora  é  só  executar  o  projeto:   $ build $ as7 deploy
  19. 19. Running  
  20. 20. Uma  mudança   ü  Criar  um  serviço  rest   $ rest setup $ rest endpoint-from-entity –contentType application/json
  21. 21. Teste,  sempre!   ü  Oferece  integração  com  o  projeto  Arquillian;   $ arquillian setup $ arquillian create-teste {classe}
  22. 22. O  que  mais?   ü  Deploy  em  cloud  (OpenshiP)  –  hqp://goo.gl/fH08XD    
  23. 23. Log    de  tudo   $ new-project –-named webdrive --topLevelPackage br.com.yaw.webdrive --projectFolder . $ scaffold setup $ persistence setup –-provider HIBERNATE –-container JBOSS_AS7 $ entity –-named Fabricante $ field string --named nome $ entity --named Marca $ field string --named descricao $ entity --named Veiculo $ field string --named placa $ field string --named renavam $ field manyToOne --named marca –fieldType br.com.yaw.webdrive.model.Marca $ field manyToOne --named fabricante –fieldType br.com.yaw.webdrive.model.Fabricante $ scaffold from-entity (navegar pelas três entidade no shell) $ as7 setup $ build $ as7 deploy
  24. 24. Links   ü  hqp://forge.jboss.org/   ü  hqps://github.com/forge/core   ü  hqp://forge.jboss.org/docs/using/samples.html#content   ü  hqps://twiqer.com/JBossForge  
  25. 25. Vídeo  aulas  /  projetos  exemplo   ü  hqp://www.yaw.com.br/screencast   ü  hqp://www.yaw.com.br/open/projetos/  
  26. 26. Obrigado!   ü  eder@yaw.com.br   ü  hqps://twiqer.com/edermag   ü  hqp://github.com/edermag   ü  hqp://edermag.blogspot.com.br/   ü  hqps://bitbucket.org/edermag/  

×