Upload
eder-magalhaes
View
345
Download
0
Embed Size (px)
DESCRIPTION
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.
Citation preview
Desenvolvimento web em poucos passos
Eder Magalhães
@edermag
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;
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;
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!
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!
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 …
Outros pontos
ü Plataforma consolidada;
ü Muita documentação (material bom e gratuito);
ü Conta com uma grande comunidade;
ü Apoiada por grandes players;
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?
Não se esqueça…
ü Sistema operacional;
ü Ambiente de desenvolvimento – IDE;
ü Banco de dados;
ü Build;
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;
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;
Primeiro passo, iniciando o projeto
ü Criar um novo projeto;
$ new-project --named {nome} --topLevelPackage {br.com.projeto} --projectFolder {/diretorio}
Segundo passo, o ]po de aplicação
ü Escolher o modelo/]po de aplicação (web):
$ scaffold setup
Terceiro passo, a persistência
ü Indicar o provider JPA:
$ persistence setup --provider {JPA Impl} --container { ... }
Quarto passo, a en]dade
ü Definir uma classe en]dade (modelo) do sistema:
$ entity --name {nome}
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
Sexto passo, configurar o server
ü No exemplo vou demonstrar como usar o JBoss AS (v. 7):
$ forge install-plugin jboss-as-7 $ as7 setup
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 application/json
Teste, sempre!
ü Oferece integração com o projeto Arquillian;
$ arquillian setup $ arquillian create-teste {classe}
O que mais?
ü Deploy em cloud (OpenshiP) – hqp://goo.gl/fH08XD
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
Links
ü hqp://forge.jboss.org/
ü hqps://github.com/forge/core
ü hqp://forge.jboss.org/docs/using/samples.html#content
ü hqps://twiqer.com/JBossForge
Vídeo aulas / projetos exemplo
ü hqp://www.yaw.com.br/screencast
ü hqp://www.yaw.com.br/open/projetos/
Obrigado!
ü hqps://twiqer.com/edermag
ü hqp://github.com/edermag
ü hqp://edermag.blogspot.com.br/
ü hqps://bitbucket.org/edermag/