Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

910 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

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/  

×