Demoiselle 2.0
cleverson.sacramento
serge.rehem
   
frameworkdemoiselle
www.
gov.br
   
Demoiselle 
framework open source
p/ desenvolvimento 
Java/web
   
Framework IntegradorFramework Integrador
   
InfraInfraFrameworkFramework ProcessProcess
sample wizard
components
ComunidadeComunidade
   
1
1
3
1
2
equipeequipe
4
3
   framework
              processo
comunidade
   
   
+
   
comunidade
   
   
demoiselle community council
demoiselle technical council
o que fazer?
quais as metas?
como fazer?
qual arquitetura e ...
   
http://www.frameworkdemoiselle.gov.br
   
http://sf.net/projects/demoiselle
   
   
http://sf.net/apps/mediawiki/demoiselle
   
http://sf.net/apps/mantisbt/demoiselle
   
maior
menor
projeto­<maior>.<menor>.<micro>­qualificador
           demoiselle­2.0.0­ALPHA1
micro
manutenção
evolução
...
   
mar2008
0.1
dez2008
1.0
abr2009
1.0.3
nov2009
1.1.0
ago2010
1.1.5
dezdez20102010
2.0.02.0.0
set2010
1.2.0
outout201020...
   
MP ­ Ministério do Planejamento
                             ANP ­ Agência Nacional de Petróleo
          DATASUS
    ...
   
2009
   
padronização
orientação  
flexibilidade    flexibilidade    
comunicação  
   
framework
   
apresentação
negócio
persistência
   
Demoiselle Framework
   
JSF
JPA
Facelets
Maven
Eclipse
Tomcat
JBoss Tools
   
2010
   produtividade
   
Demoiselle Component
   
Demoiselle Monitoring
@MBean(name = "br.gov.demoiselle:name=Monitoring")
@OID(prefix = ".1.2.3.4.1")
public class Demo...
   
crud
   
abstraçãotela  mb  bc  dao
programaçãopor exceção
implícitobc
dao
ponto de extensão
tela  mb  bc  dao
tags
máscaras
an...
   
view
<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
template="/META-INF/template/super/superCrud.xhtml">
...
   
http://www.youtube.com/watch?v=erhn0bxGYbM
Coding­Dojo Demoiselle
   
infrainfra
   apt­get install demoiselle­dev
   
2.0
   
jsf 2.0
ejb 3.1
jee 6
test+mock
jsr­299
jpa 2.0
   
   
http://sf.net/apps/apps/demoiselle
   
   
http://sf.net/apps/wordpress/demoiselle
   
http://demoiselle.svn.sf.net/svnroot/demoiselle/framework
/branches/demoiselle­2.0
   
@ViewController
class AlunoMB {
...
}
@BusinessController
class AlunoBC {
...
}
@PersistenceController
class AlunoDAO ...
   
@ViewController
class AlunoMB {
@Inject
AlunoBC bc;
void inserir(){
bc.algumaCoisa();
}
}
@BusinessController
class Al...
   
@SeuController
class AlunoXX {
...
}
@Controller
@interface SeuController {
...
}
   
@ViewController
class AlunoMB {
@Transactional
void inserir(){...}
}
frameworkdemoiselle.transaction.class=
br.gov.fra...
   
@BusinessController
class AlunoBC {
void inserir(...){...}
@HandleException
void tratar(CrecaException e){...}
}
   
@PersistenceController
class AlunoDAO {
@Startup
void carga(){...}
@Shutdown
void descarga(){...}
}
   
@SeuController
class AlunoXX {
@Inject Logger log;
@Inject ResourceBundle bundle;
@Inject Transaction transaction;
@In...
   
templates
tags
independência
segurança
documentação
utilitários
configuração
validação
   
Obrigado!Obrigado!
www.frameworkdemoiselle.gov.br
demoiselle­users@lists.sourceforge.net
twitter.com/fwkdemoiselle
Ser...
Upcoming SlideShare
Loading in...5
×

Demoiselle Frawework 2.0

1,905

Published on

Palestra apresentada no II Fórum de Tecnologia em Software Livre do Serpro – Regional Belém, em 10/11/2010.
http://www.softwarelivre.serpro.gov.br/belem

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,905
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
24
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Demoiselle Frawework 2.0

  1. 1.     Demoiselle 2.0 cleverson.sacramento serge.rehem
  2. 2.     frameworkdemoiselle www. gov.br
  3. 3.     Demoiselle  framework open source p/ desenvolvimento  Java/web
  4. 4.     Framework IntegradorFramework Integrador
  5. 5.     InfraInfraFrameworkFramework ProcessProcess sample wizard components ComunidadeComunidade
  6. 6.     1 1 3 1 2 equipeequipe 4 3    framework               processo comunidade
  7. 7.    
  8. 8.     +
  9. 9.     comunidade
  10. 10.    
  11. 11.     demoiselle community council demoiselle technical council o que fazer? quais as metas? como fazer? qual arquitetura e padrões serão usados?
  12. 12.     http://www.frameworkdemoiselle.gov.br
  13. 13.     http://sf.net/projects/demoiselle
  14. 14.    
  15. 15.     http://sf.net/apps/mediawiki/demoiselle
  16. 16.     http://sf.net/apps/mantisbt/demoiselle
  17. 17.     maior menor projeto­<maior>.<menor>.<micro>­qualificador            demoiselle­2.0.0­ALPHA1 micro manutenção evolução inovação
  18. 18.     mar2008 0.1 dez2008 1.0 abr2009 1.0.3 nov2009 1.1.0 ago2010 1.1.5 dezdez20102010 2.0.02.0.0 set2010 1.2.0 outout20102010 2.0.0­A12.0.0­A1
  19. 19.     MP ­ Ministério do Planejamento                              ANP ­ Agência Nacional de Petróleo           DATASUS                                            Caixa Econômica Federal Ministério Público do Paraná                                                            STN                                                                 CELEPAR              ATI­PE                                                                       Prodemge USP / UFPR / UFBA / UFRJ / ...                                                     Empresas privadas                   Desenvolvedores autônomos ComunidadeComunidade
  20. 20.     2009
  21. 21.     padronização orientação   flexibilidade    flexibilidade     comunicação  
  22. 22.     framework
  23. 23.     apresentação negócio persistência
  24. 24.     Demoiselle Framework
  25. 25.     JSF JPA Facelets Maven Eclipse Tomcat JBoss Tools
  26. 26.     2010
  27. 27.    produtividade
  28. 28.     Demoiselle Component
  29. 29.     Demoiselle Monitoring @MBean(name = "br.gov.demoiselle:name=Monitoring") @OID(prefix = ".1.2.3.4.1") public class DemoiselleMonitoring implements DemoiselleMonitoringMBean { @OID(value = ".1", mode = Mode.READ_WRITE) public String getFrameworkVersion() { return FRAMEWORK_VERSION; } @OID(value = ".2") public int getRequestCount() { return requestCount; } @OID(value = ".3") public long getUptime() { long uptime = System .currentTimeMillis() - initialTime; return uptime; } }
  30. 30.     crud
  31. 31.     abstraçãotela  mb  bc  dao programaçãopor exceção implícitobc dao ponto de extensão tela  mb  bc  dao tags máscaras anotações
  32. 32.     view <ui:composition xmlns:ui="http://java.sun.com/jsf/facelets" template="/META-INF/template/super/superCrud.xhtml"> <ui:param name="mbean" value="#{paisMB}" /> </ui:composition> MB @CrudPaged(title="Cadastro de País", view = "pais_crud") public class PaisMB extends SuperCrudMB<Pais> { } BC public interface IPaisBC extends ICrudBC<Pais> { } public class PaisBC extends SuperCrudBC<Pais> implements IPaisBC { } DAO public interface IPaisDAO extends ICrudDAO<Pais> { } public class PaisDAO extends SuperCrudDAO<Pais> implements IPaisDAO { } 120   2: → 99% CRUD
  33. 33.     http://www.youtube.com/watch?v=erhn0bxGYbM Coding­Dojo Demoiselle
  34. 34.     infrainfra
  35. 35.    apt­get install demoiselle­dev
  36. 36.     2.0
  37. 37.     jsf 2.0 ejb 3.1 jee 6 test+mock jsr­299 jpa 2.0
  38. 38.    
  39. 39.     http://sf.net/apps/apps/demoiselle
  40. 40.    
  41. 41.     http://sf.net/apps/wordpress/demoiselle
  42. 42.     http://demoiselle.svn.sf.net/svnroot/demoiselle/framework /branches/demoiselle­2.0
  43. 43.     @ViewController class AlunoMB { ... } @BusinessController class AlunoBC { ... } @PersistenceController class AlunoDAO { ... }
  44. 44.     @ViewController class AlunoMB { @Inject AlunoBC bc; void inserir(){ bc.algumaCoisa(); } } @BusinessController class AlunoBC { void algumaCoisa(){...} }
  45. 45.     @SeuController class AlunoXX { ... } @Controller @interface SeuController { ... }
  46. 46.     @ViewController class AlunoMB { @Transactional void inserir(){...} } frameworkdemoiselle.transaction.class= br.gov.frameworkdemoiselle.transaction.JPATransaction
  47. 47.     @BusinessController class AlunoBC { void inserir(...){...} @HandleException void tratar(CrecaException e){...} }
  48. 48.     @PersistenceController class AlunoDAO { @Startup void carga(){...} @Shutdown void descarga(){...} }
  49. 49.     @SeuController class AlunoXX { @Inject Logger log; @Inject ResourceBundle bundle; @Inject Transaction transaction; @Inject EntityManager em; @Inject FacesContext context; }
  50. 50.     templates tags independência segurança documentação utilitários configuração validação
  51. 51.     Obrigado!Obrigado! www.frameworkdemoiselle.gov.br demoiselle­users@lists.sourceforge.net twitter.com/fwkdemoiselle Serge Rehem serge.rehem@serpro.gov.br twitter.com/serge_rehem
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×