SlideShare a Scribd company logo
1 of 32
Der Plan
Die
Umsetzung
Der Blick ins
  Innere
Die Stimmung
  im Projekt
Best Practices
     für große
        Wicket
Anwendungen
Olaf Siefart, Michael Plöd - Senacor Technologies AG
Olaf Siefart

Chief Developer
bei Senacor Technologies AG

Autor dpunkt Verlag
Michael Plöd
   Partner und Principal Architect bei
            Senacor Technologies AG

                  Autor Java Magazin

                    Twitter: @bitboss

   http://www.slideshare.net/mploed
Es gibt 3
Kernprobleme
Wildwuchs von Komponenten
Gefährliches
Halbwissen
Performance
und Memory
Mit 5 einfachen
    Best
  Practices
zur besseren Wicket
    Anwendung
Best Practice #1
 Sauberes Design von
    Komponenten
Definition klarer
 Komponenten
    grenzen
Kein Zugriff auf
      Interna
einer Komponente
Kollaboration von
Komponenten über Model-
       Chaining
Klassisches
OO-Design
Best Practice #2
        Bessere
 Übersichtlichkeit durch
   korrekte Markup
       Definition
Abbildung von
querschnittlichen
  Aspekten über
Lifecycle-Listener
  und Behaviors
Einsatz von Wicket-
 Tags und eigenen
       Tags
Einsatz von
  Border
 Behavior
Best Practice #3

Reduktion von


   Java Code
Wenige CSS
Behaviors im Java
     Code
Einsatz des
CompoundPropertyModels
Keine
 programmatische
  Anbindung von
RessourceBundles
IVisitor + getParent
Best Practice #4
Verständnis des Wicket Lifecycles
Best Practice #5

         Korrekter
        Einsatz von
        JavaScript
Wrapping von JS
 Bibliotheken in
   Behaviors
JS Libraries via
Singleton laden
Lazy Javascipt statt
  onDomReady()
Vielen Dank!!!
Interesse das Gehörte in der Praxis
            umzusetzen?
 Senacor sucht laufend Entwickler,
      Architekten und Berater!

     http://www.senacor.com
                   Photos / Grafiken (c) Michael Plöd
     Ausnahme: Photos von Michael Plöd (Folien 7) (c) Matthias Heyde
                  Pointy Font lizensiert von Bitfoundry

More Related Content

Viewers also liked

Zehn Jahre JPA – Architekturkonzepte und Best Practices revisited
Zehn Jahre JPA – Architekturkonzepte und Best Practices revisitedZehn Jahre JPA – Architekturkonzepte und Best Practices revisited
Zehn Jahre JPA – Architekturkonzepte und Best Practices revisitedOPEN KNOWLEDGE GmbH
 
Effiziente datenpersistierung mit JPA 2.1 und Hibernate
Effiziente datenpersistierung mit JPA 2.1 und HibernateEffiziente datenpersistierung mit JPA 2.1 und Hibernate
Effiziente datenpersistierung mit JPA 2.1 und HibernateThorben Janssen
 
Erfolgsgeschichten: Social Business - Drama in drei Akten - Rollenspiel
Erfolgsgeschichten: Social Business - Drama in drei Akten - RollenspielErfolgsgeschichten: Social Business - Drama in drei Akten - Rollenspiel
Erfolgsgeschichten: Social Business - Drama in drei Akten - RollenspielJoachim Haydecker
 
Werbung für den Community Manager
Werbung für den Community ManagerWerbung für den Community Manager
Werbung für den Community ManagerJoachim Haydecker
 
Designing JEE Application Structure
Designing JEE Application StructureDesigning JEE Application Structure
Designing JEE Application Structureodedns
 
Java EE Pattern: Entity Control Boundary Pattern and Java EE
Java EE Pattern: Entity Control Boundary Pattern and Java EEJava EE Pattern: Entity Control Boundary Pattern and Java EE
Java EE Pattern: Entity Control Boundary Pattern and Java EEBrockhaus Consulting GmbH
 
Der beigebracht.com Seminarraum
Der beigebracht.com SeminarraumDer beigebracht.com Seminarraum
Der beigebracht.com Seminarraumbeigebracht
 
Kreativitätstechniken in 4 Schritten
Kreativitätstechniken in 4 SchrittenKreativitätstechniken in 4 Schritten
Kreativitätstechniken in 4 SchrittenGeorgBayer
 
Wie aus einer feder fünf tote hühner wurden
Wie aus einer feder fünf tote hühner wurdenWie aus einer feder fünf tote hühner wurden
Wie aus einer feder fünf tote hühner wurdenJoachim Haydecker
 

Viewers also liked (19)

Zehn Jahre JPA – Architekturkonzepte und Best Practices revisited
Zehn Jahre JPA – Architekturkonzepte und Best Practices revisitedZehn Jahre JPA – Architekturkonzepte und Best Practices revisited
Zehn Jahre JPA – Architekturkonzepte und Best Practices revisited
 
Effiziente datenpersistierung mit JPA 2.1 und Hibernate
Effiziente datenpersistierung mit JPA 2.1 und HibernateEffiziente datenpersistierung mit JPA 2.1 und Hibernate
Effiziente datenpersistierung mit JPA 2.1 und Hibernate
 
Java EE Pattern: The Control Layer
Java EE Pattern: The Control LayerJava EE Pattern: The Control Layer
Java EE Pattern: The Control Layer
 
How to impress the CEO
How to impress the CEOHow to impress the CEO
How to impress the CEO
 
bzp-Strategie Check
bzp-Strategie Checkbzp-Strategie Check
bzp-Strategie Check
 
Erfolgsgeschichten: Social Business - Drama in drei Akten - Rollenspiel
Erfolgsgeschichten: Social Business - Drama in drei Akten - RollenspielErfolgsgeschichten: Social Business - Drama in drei Akten - Rollenspiel
Erfolgsgeschichten: Social Business - Drama in drei Akten - Rollenspiel
 
Flipchart 0214
Flipchart 0214Flipchart 0214
Flipchart 0214
 
Logo
LogoLogo
Logo
 
Werbung für den Community Manager
Werbung für den Community ManagerWerbung für den Community Manager
Werbung für den Community Manager
 
bzp-Mehrdimensionales Zielvereinbarungssystem
bzp-Mehrdimensionales Zielvereinbarungssystembzp-Mehrdimensionales Zielvereinbarungssystem
bzp-Mehrdimensionales Zielvereinbarungssystem
 
bzp-Großgruppenveranstaltung
bzp-Großgruppenveranstaltungbzp-Großgruppenveranstaltung
bzp-Großgruppenveranstaltung
 
Empfehlungsmarketing
EmpfehlungsmarketingEmpfehlungsmarketing
Empfehlungsmarketing
 
Designing JEE Application Structure
Designing JEE Application StructureDesigning JEE Application Structure
Designing JEE Application Structure
 
Java EE Pattern: Entity Control Boundary Pattern and Java EE
Java EE Pattern: Entity Control Boundary Pattern and Java EEJava EE Pattern: Entity Control Boundary Pattern and Java EE
Java EE Pattern: Entity Control Boundary Pattern and Java EE
 
Flipchart Gestaltung
Flipchart GestaltungFlipchart Gestaltung
Flipchart Gestaltung
 
Java EE Pattern: The Boundary Layer
Java EE Pattern: The Boundary LayerJava EE Pattern: The Boundary Layer
Java EE Pattern: The Boundary Layer
 
Der beigebracht.com Seminarraum
Der beigebracht.com SeminarraumDer beigebracht.com Seminarraum
Der beigebracht.com Seminarraum
 
Kreativitätstechniken in 4 Schritten
Kreativitätstechniken in 4 SchrittenKreativitätstechniken in 4 Schritten
Kreativitätstechniken in 4 Schritten
 
Wie aus einer feder fünf tote hühner wurden
Wie aus einer feder fünf tote hühner wurdenWie aus einer feder fünf tote hühner wurden
Wie aus einer feder fünf tote hühner wurden
 

More from Michael Plöd

Building Microservices with Event Sourcing and CQRS
Building Microservices with Event Sourcing and CQRSBuilding Microservices with Event Sourcing and CQRS
Building Microservices with Event Sourcing and CQRSMichael Plöd
 
Migrating from Grails 2 to Grails 3
Migrating from Grails 2 to Grails 3Migrating from Grails 2 to Grails 3
Migrating from Grails 2 to Grails 3Michael Plöd
 
Event Sourcing: Introduction & Challenges
Event Sourcing: Introduction & ChallengesEvent Sourcing: Introduction & Challenges
Event Sourcing: Introduction & ChallengesMichael Plöd
 
Caching in Hibernate
Caching in HibernateCaching in Hibernate
Caching in HibernateMichael Plöd
 
Anatomie von Microservice Landschaften
Anatomie von Microservice LandschaftenAnatomie von Microservice Landschaften
Anatomie von Microservice LandschaftenMichael Plöd
 
Event Sourcing für reaktive Anwendungen
Event Sourcing für reaktive AnwendungenEvent Sourcing für reaktive Anwendungen
Event Sourcing für reaktive AnwendungenMichael Plöd
 
Spring One 2 GX 2014 - CACHING WITH SPRING: ADVANCED TOPICS AND BEST PRACTICES
Spring One 2 GX 2014 - CACHING WITH SPRING: ADVANCED TOPICS AND BEST PRACTICESSpring One 2 GX 2014 - CACHING WITH SPRING: ADVANCED TOPICS AND BEST PRACTICES
Spring One 2 GX 2014 - CACHING WITH SPRING: ADVANCED TOPICS AND BEST PRACTICESMichael Plöd
 
Caching - Hintergründe, Patterns und Best Practices
Caching - Hintergründe, Patterns und Best PracticesCaching - Hintergründe, Patterns und Best Practices
Caching - Hintergründe, Patterns und Best PracticesMichael Plöd
 
Integrating Wicket with Java EE 6
Integrating Wicket with Java EE 6Integrating Wicket with Java EE 6
Integrating Wicket with Java EE 6Michael Plöd
 

More from Michael Plöd (10)

Building Microservices with Event Sourcing and CQRS
Building Microservices with Event Sourcing and CQRSBuilding Microservices with Event Sourcing and CQRS
Building Microservices with Event Sourcing and CQRS
 
Migrating from Grails 2 to Grails 3
Migrating from Grails 2 to Grails 3Migrating from Grails 2 to Grails 3
Migrating from Grails 2 to Grails 3
 
Event Sourcing: Introduction & Challenges
Event Sourcing: Introduction & ChallengesEvent Sourcing: Introduction & Challenges
Event Sourcing: Introduction & Challenges
 
Caching in Hibernate
Caching in HibernateCaching in Hibernate
Caching in Hibernate
 
Anatomie von Microservice Landschaften
Anatomie von Microservice LandschaftenAnatomie von Microservice Landschaften
Anatomie von Microservice Landschaften
 
Event Sourcing für reaktive Anwendungen
Event Sourcing für reaktive AnwendungenEvent Sourcing für reaktive Anwendungen
Event Sourcing für reaktive Anwendungen
 
Spring One 2 GX 2014 - CACHING WITH SPRING: ADVANCED TOPICS AND BEST PRACTICES
Spring One 2 GX 2014 - CACHING WITH SPRING: ADVANCED TOPICS AND BEST PRACTICESSpring One 2 GX 2014 - CACHING WITH SPRING: ADVANCED TOPICS AND BEST PRACTICES
Spring One 2 GX 2014 - CACHING WITH SPRING: ADVANCED TOPICS AND BEST PRACTICES
 
Caching - Hintergründe, Patterns und Best Practices
Caching - Hintergründe, Patterns und Best PracticesCaching - Hintergründe, Patterns und Best Practices
Caching - Hintergründe, Patterns und Best Practices
 
Hibernate Tuning
Hibernate TuningHibernate Tuning
Hibernate Tuning
 
Integrating Wicket with Java EE 6
Integrating Wicket with Java EE 6Integrating Wicket with Java EE 6
Integrating Wicket with Java EE 6
 

Best Practices für große Wicket Anwendungen