SlideShare ist ein Scribd-Unternehmen logo
1 von 64
Fundamentale Muster
Schnittstellen
Schnittstellen ,[object Object],[object Object],[object Object],[object Object],[object Object]
Ein paar Zahlen ,[object Object],[object Object],[object Object],[object Object]
Namensgebung für Schnittstellen ,[object Object],[object Object],[object Object]
Namensgebung für Schnittstellen ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Interface/Implementation Pair ,[object Object],[object Object],[object Object],[object Object],[object Object]
Beispiele für das I/I-Pair bei Swing ,[object Object],[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object],[object Object]
Union-Pattern ,[object Object],[object Object],[object Object],[object Object]
Programmieren gegen Schnittstellen
Schnittstellen-orientierte Programmierung ,[object Object],[object Object],[object Object],[object Object],[object Object]
Schnittstellen und Implementierung ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Klassen: Kleinstmöglicher Typ ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Fabriken ,[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Markierungsschnittstellen
Markierungsschnittstellen ,[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Wert von Markierungsschnittstellen ,[object Object],[object Object],[object Object],[object Object],[object Object]
Markierungsschnittstelle RandomAccess ,[object Object],[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object]
Markieren in Java 5 ,[object Object],[object Object],[object Object],[object Object],[object Object]
Delegate/Delegation
Delegation ,[object Object],[object Object]
Immutable
Immutable Pattern ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Immutable-Objekte verwalten ,[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Neue Objekte für die Rückgabe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Immutable Interface ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Stateful oder Stateless Session Beans ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Null-Objekte
Null-Objekt-Muster ,[object Object],[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object]
Aufgabe ,[object Object]
Collecting Parameter Pattern
Collecting Parameter Pattern ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ergebnisse einsammeln ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object]
JavaBeans
Attribute sind privat ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Bean Pattern ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Orte, wo man Beans findet ,[object Object],[object Object],[object Object]
Vorteile der Zugriffsmethoden ,[object Object],[object Object],[object Object],[object Object]
Späte Initialisierung ,[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object],[object Object]
Ereignisse ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object],[object Object]
Aufgabe ,[object Object],[object Object]
Nachteile der Bean-Methoden ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Der Begriff „Model-Objekt“ ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
„Große“ Konstruktoren ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Argumenten-Sammler ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Professionelle IT-Qualifizierung
tutego über tutego ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Unsere Themen
Unsere Themen

Weitere ähnliche Inhalte

Andere mochten auch

Progreso de la adecuación al Esquema Nacional de Interoperabilidad, en la reu...
Progreso de la adecuación al Esquema Nacional de Interoperabilidad, en la reu...Progreso de la adecuación al Esquema Nacional de Interoperabilidad, en la reu...
Progreso de la adecuación al Esquema Nacional de Interoperabilidad, en la reu...Miguel A. Amutio
 
Mi entorno
Mi entornoMi entorno
Mi entornobabo21
 
Acrosport para ponencia
Acrosport para ponenciaAcrosport para ponencia
Acrosport para ponenciamatildeprino
 
Malca oleadas 1820/30/48_4ºESO
Malca oleadas 1820/30/48_4ºESOMalca oleadas 1820/30/48_4ºESO
Malca oleadas 1820/30/48_4ºESOMA LopezCozar
 
I_Gerardo Morales actividad 2
I_Gerardo Morales actividad 2I_Gerardo Morales actividad 2
I_Gerardo Morales actividad 2igerardomorales
 
Cuaderno de prácticas
Cuaderno de prácticasCuaderno de prácticas
Cuaderno de prácticasnenamaryx
 
Aportaciones y limitaciones de las tic
Aportaciones y limitaciones de las ticAportaciones y limitaciones de las tic
Aportaciones y limitaciones de las ticzinihorio01
 
DER LAUF DES LEBE
DER  LAUF  DES  LEBEDER  LAUF  DES  LEBE
DER LAUF DES LEBEDidolf
 
Mensch aergere dich nicht GPADJP
Mensch aergere dich nicht GPADJPMensch aergere dich nicht GPADJP
Mensch aergere dich nicht GPADJPoegb
 
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...Benjamin Jörissen
 
SARONIA - Feedback Recap V7
SARONIA - Feedback Recap V7SARONIA - Feedback Recap V7
SARONIA - Feedback Recap V7Team Saronia
 
Dia del ferroviario 2012
Dia del ferroviario 2012Dia del ferroviario 2012
Dia del ferroviario 2012Pedro Gomez
 
2012022 Cómo ha evolucionado el Esquema Nacional de Seguridad (ENS).
2012022 Cómo ha evolucionado el Esquema Nacional de Seguridad (ENS).2012022 Cómo ha evolucionado el Esquema Nacional de Seguridad (ENS).
2012022 Cómo ha evolucionado el Esquema Nacional de Seguridad (ENS).Miguel A. Amutio
 
Creador De Ingresos 1
Creador De Ingresos 1Creador De Ingresos 1
Creador De Ingresos 1Pedro Gomez
 
Arbeitsmarkt in oe 2010 auge_pdf
Arbeitsmarkt in oe 2010 auge_pdfArbeitsmarkt in oe 2010 auge_pdf
Arbeitsmarkt in oe 2010 auge_pdfAUGE
 
Werbekurs BR GPADJP
Werbekurs BR GPADJPWerbekurs BR GPADJP
Werbekurs BR GPADJPoegb
 
Lotus speisekarte pdf
Lotus speisekarte pdfLotus speisekarte pdf
Lotus speisekarte pdfThuy Nguyen
 

Andere mochten auch (20)

Progreso de la adecuación al Esquema Nacional de Interoperabilidad, en la reu...
Progreso de la adecuación al Esquema Nacional de Interoperabilidad, en la reu...Progreso de la adecuación al Esquema Nacional de Interoperabilidad, en la reu...
Progreso de la adecuación al Esquema Nacional de Interoperabilidad, en la reu...
 
Practica 3
Practica 3Practica 3
Practica 3
 
Mi entorno
Mi entornoMi entorno
Mi entorno
 
Acrosport para ponencia
Acrosport para ponenciaAcrosport para ponencia
Acrosport para ponencia
 
Malca oleadas 1820/30/48_4ºESO
Malca oleadas 1820/30/48_4ºESOMalca oleadas 1820/30/48_4ºESO
Malca oleadas 1820/30/48_4ºESO
 
I_Gerardo Morales actividad 2
I_Gerardo Morales actividad 2I_Gerardo Morales actividad 2
I_Gerardo Morales actividad 2
 
Historia
HistoriaHistoria
Historia
 
Cuaderno de prácticas
Cuaderno de prácticasCuaderno de prácticas
Cuaderno de prácticas
 
Aportaciones y limitaciones de las tic
Aportaciones y limitaciones de las ticAportaciones y limitaciones de las tic
Aportaciones y limitaciones de las tic
 
DER LAUF DES LEBE
DER  LAUF  DES  LEBEDER  LAUF  DES  LEBE
DER LAUF DES LEBE
 
Lectura
LecturaLectura
Lectura
 
Mensch aergere dich nicht GPADJP
Mensch aergere dich nicht GPADJPMensch aergere dich nicht GPADJP
Mensch aergere dich nicht GPADJP
 
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...
 
SARONIA - Feedback Recap V7
SARONIA - Feedback Recap V7SARONIA - Feedback Recap V7
SARONIA - Feedback Recap V7
 
Dia del ferroviario 2012
Dia del ferroviario 2012Dia del ferroviario 2012
Dia del ferroviario 2012
 
2012022 Cómo ha evolucionado el Esquema Nacional de Seguridad (ENS).
2012022 Cómo ha evolucionado el Esquema Nacional de Seguridad (ENS).2012022 Cómo ha evolucionado el Esquema Nacional de Seguridad (ENS).
2012022 Cómo ha evolucionado el Esquema Nacional de Seguridad (ENS).
 
Creador De Ingresos 1
Creador De Ingresos 1Creador De Ingresos 1
Creador De Ingresos 1
 
Arbeitsmarkt in oe 2010 auge_pdf
Arbeitsmarkt in oe 2010 auge_pdfArbeitsmarkt in oe 2010 auge_pdf
Arbeitsmarkt in oe 2010 auge_pdf
 
Werbekurs BR GPADJP
Werbekurs BR GPADJPWerbekurs BR GPADJP
Werbekurs BR GPADJP
 
Lotus speisekarte pdf
Lotus speisekarte pdfLotus speisekarte pdf
Lotus speisekarte pdf
 

Ähnlich wie Fundamentale Muster in Java

Workshop zu Hibernate 3.2.2 GA
Workshop zu Hibernate 3.2.2 GAWorkshop zu Hibernate 3.2.2 GA
Workshop zu Hibernate 3.2.2 GAOliver Belikan
 
Objektorientierte Techniken und UML
Objektorientierte Techniken und UMLObjektorientierte Techniken und UML
Objektorientierte Techniken und UMLSebastian Hempel
 
Einstieg In Oop
Einstieg In OopEinstieg In Oop
Einstieg In Oopflashdev
 
Java 8, mit Lambdas das hohe Lied des Functional Programming singen
Java 8, mit Lambdas das hohe Lied des Functional Programming singenJava 8, mit Lambdas das hohe Lied des Functional Programming singen
Java 8, mit Lambdas das hohe Lied des Functional Programming singengedoplan
 
A Pattern Language - Patterns for Javascript
A Pattern Language - Patterns for JavascriptA Pattern Language - Patterns for Javascript
A Pattern Language - Patterns for Javascriptjoergreichert
 
The Lotus Code Cookbook
The Lotus Code CookbookThe Lotus Code Cookbook
The Lotus Code CookbookUlrich Krause
 
C Sharp Einfuehrung Teil 2
C Sharp Einfuehrung Teil 2C Sharp Einfuehrung Teil 2
C Sharp Einfuehrung Teil 2DraphonyGames
 
Python Bootcamp - Grundlagen
Python Bootcamp - GrundlagenPython Bootcamp - Grundlagen
Python Bootcamp - GrundlagenDatamics
 
FH Wedel - SS11 - Seminar - Marcus Riemer - LEDA
FH Wedel - SS11 - Seminar - Marcus Riemer - LEDAFH Wedel - SS11 - Seminar - Marcus Riemer - LEDA
FH Wedel - SS11 - Seminar - Marcus Riemer - LEDAMarcus Riemer
 
Die freie Programmiersprache Python
Die freie Programmiersprache Python Die freie Programmiersprache Python
Die freie Programmiersprache Python Andreas Schreiber
 
Gute Zeilen schlechte Zeilen, JUG Ostfalen 29.8.2013
Gute Zeilen schlechte Zeilen, JUG Ostfalen 29.8.2013Gute Zeilen schlechte Zeilen, JUG Ostfalen 29.8.2013
Gute Zeilen schlechte Zeilen, JUG Ostfalen 29.8.2013gedoplan
 
Morphia, Spring Data & Co
Morphia, Spring Data & CoMorphia, Spring Data & Co
Morphia, Spring Data & CoTobias Trelle
 
Java Magazin 5 / 2010 - Twitter nachgebaut mit Lift
Java Magazin 5 / 2010 - Twitter nachgebaut mit LiftJava Magazin 5 / 2010 - Twitter nachgebaut mit Lift
Java Magazin 5 / 2010 - Twitter nachgebaut mit LiftJohannes Hohenbichler
 
Cassandra - Eine Einführung
Cassandra - Eine EinführungCassandra - Eine Einführung
Cassandra - Eine EinführungMikio L. Braun
 
Praxisorientierte Nutzung von Prototypen in JavaScript am Beispiel von jQuery
Praxisorientierte Nutzung von Prototypen in JavaScript am Beispiel von jQueryPraxisorientierte Nutzung von Prototypen in JavaScript am Beispiel von jQuery
Praxisorientierte Nutzung von Prototypen in JavaScript am Beispiel von jQueryRobert Schweda
 
MDA in der Praxis - Modelltransformation und Code-Generierung mit dem Enterpr...
MDA in der Praxis - Modelltransformation und Code-Generierung mit dem Enterpr...MDA in der Praxis - Modelltransformation und Code-Generierung mit dem Enterpr...
MDA in der Praxis - Modelltransformation und Code-Generierung mit dem Enterpr...Andreas Schreiber
 

Ähnlich wie Fundamentale Muster in Java (20)

Workshop zu Hibernate 3.2.2 GA
Workshop zu Hibernate 3.2.2 GAWorkshop zu Hibernate 3.2.2 GA
Workshop zu Hibernate 3.2.2 GA
 
Objektorientierte Techniken und UML
Objektorientierte Techniken und UMLObjektorientierte Techniken und UML
Objektorientierte Techniken und UML
 
Einstieg In Oop
Einstieg In OopEinstieg In Oop
Einstieg In Oop
 
Scala und Lift
Scala und LiftScala und Lift
Scala und Lift
 
Java 8, mit Lambdas das hohe Lied des Functional Programming singen
Java 8, mit Lambdas das hohe Lied des Functional Programming singenJava 8, mit Lambdas das hohe Lied des Functional Programming singen
Java 8, mit Lambdas das hohe Lied des Functional Programming singen
 
JavaSPEKTRUM - Scala 1
JavaSPEKTRUM - Scala 1JavaSPEKTRUM - Scala 1
JavaSPEKTRUM - Scala 1
 
A Pattern Language - Patterns for Javascript
A Pattern Language - Patterns for JavascriptA Pattern Language - Patterns for Javascript
A Pattern Language - Patterns for Javascript
 
The Lotus Code Cookbook
The Lotus Code CookbookThe Lotus Code Cookbook
The Lotus Code Cookbook
 
C Sharp Einfuehrung Teil 2
C Sharp Einfuehrung Teil 2C Sharp Einfuehrung Teil 2
C Sharp Einfuehrung Teil 2
 
Python Bootcamp - Grundlagen
Python Bootcamp - GrundlagenPython Bootcamp - Grundlagen
Python Bootcamp - Grundlagen
 
FH Wedel - SS11 - Seminar - Marcus Riemer - LEDA
FH Wedel - SS11 - Seminar - Marcus Riemer - LEDAFH Wedel - SS11 - Seminar - Marcus Riemer - LEDA
FH Wedel - SS11 - Seminar - Marcus Riemer - LEDA
 
Die freie Programmiersprache Python
Die freie Programmiersprache Python Die freie Programmiersprache Python
Die freie Programmiersprache Python
 
Gute Zeilen schlechte Zeilen, JUG Ostfalen 29.8.2013
Gute Zeilen schlechte Zeilen, JUG Ostfalen 29.8.2013Gute Zeilen schlechte Zeilen, JUG Ostfalen 29.8.2013
Gute Zeilen schlechte Zeilen, JUG Ostfalen 29.8.2013
 
Bit WiSe 2013 | Basisinformationstechnologie I - 08: Programmiersprachen I
Bit WiSe 2013 | Basisinformationstechnologie I - 08: Programmiersprachen IBit WiSe 2013 | Basisinformationstechnologie I - 08: Programmiersprachen I
Bit WiSe 2013 | Basisinformationstechnologie I - 08: Programmiersprachen I
 
Morphia, Spring Data & Co
Morphia, Spring Data & CoMorphia, Spring Data & Co
Morphia, Spring Data & Co
 
Java Magazin - Lift
Java Magazin - LiftJava Magazin - Lift
Java Magazin - Lift
 
Java Magazin 5 / 2010 - Twitter nachgebaut mit Lift
Java Magazin 5 / 2010 - Twitter nachgebaut mit LiftJava Magazin 5 / 2010 - Twitter nachgebaut mit Lift
Java Magazin 5 / 2010 - Twitter nachgebaut mit Lift
 
Cassandra - Eine Einführung
Cassandra - Eine EinführungCassandra - Eine Einführung
Cassandra - Eine Einführung
 
Praxisorientierte Nutzung von Prototypen in JavaScript am Beispiel von jQuery
Praxisorientierte Nutzung von Prototypen in JavaScript am Beispiel von jQueryPraxisorientierte Nutzung von Prototypen in JavaScript am Beispiel von jQuery
Praxisorientierte Nutzung von Prototypen in JavaScript am Beispiel von jQuery
 
MDA in der Praxis - Modelltransformation und Code-Generierung mit dem Enterpr...
MDA in der Praxis - Modelltransformation und Code-Generierung mit dem Enterpr...MDA in der Praxis - Modelltransformation und Code-Generierung mit dem Enterpr...
MDA in der Praxis - Modelltransformation und Code-Generierung mit dem Enterpr...
 

Mehr von tutego

Der C++ Standard
Der C++ StandardDer C++ Standard
Der C++ Standardtutego
 
CSS Seminar
CSS SeminarCSS Seminar
CSS Seminartutego
 
Schulung jQuery JavaScript-Bibliothek
Schulung jQuery JavaScript-BibliothekSchulung jQuery JavaScript-Bibliothek
Schulung jQuery JavaScript-Bibliothektutego
 
Schulung C++ Boost Bibliotheken
Schulung C++ Boost BibliothekenSchulung C++ Boost Bibliotheken
Schulung C++ Boost Bibliothekentutego
 
SQL-Updates mit der JDBC-API
SQL-Updates mit der JDBC-APISQL-Updates mit der JDBC-API
SQL-Updates mit der JDBC-APItutego
 
Die JSTL Tag-Library
Die JSTL Tag-LibraryDie JSTL Tag-Library
Die JSTL Tag-Librarytutego
 
JdbcTemplate aus Spring
JdbcTemplate aus SpringJdbcTemplate aus Spring
JdbcTemplate aus Springtutego
 
Schieberegler und analoge Anzeigen in Swing
Schieberegler und analoge Anzeigen in Swing Schieberegler und analoge Anzeigen in Swing
Schieberegler und analoge Anzeigen in Swing tutego
 
Einführung in den EventBus
Einführung in den EventBusEinführung in den EventBus
Einführung in den EventBustutego
 
Erweiteres for (foreach) in Java 5
Erweiteres for (foreach) in Java 5Erweiteres for (foreach) in Java 5
Erweiteres for (foreach) in Java 5tutego
 
Autoboxing in Java 5
Autoboxing in Java 5Autoboxing in Java 5
Autoboxing in Java 5tutego
 

Mehr von tutego (12)

Klassen
KlassenKlassen
Klassen
 
Der C++ Standard
Der C++ StandardDer C++ Standard
Der C++ Standard
 
CSS Seminar
CSS SeminarCSS Seminar
CSS Seminar
 
Schulung jQuery JavaScript-Bibliothek
Schulung jQuery JavaScript-BibliothekSchulung jQuery JavaScript-Bibliothek
Schulung jQuery JavaScript-Bibliothek
 
Schulung C++ Boost Bibliotheken
Schulung C++ Boost BibliothekenSchulung C++ Boost Bibliotheken
Schulung C++ Boost Bibliotheken
 
SQL-Updates mit der JDBC-API
SQL-Updates mit der JDBC-APISQL-Updates mit der JDBC-API
SQL-Updates mit der JDBC-API
 
Die JSTL Tag-Library
Die JSTL Tag-LibraryDie JSTL Tag-Library
Die JSTL Tag-Library
 
JdbcTemplate aus Spring
JdbcTemplate aus SpringJdbcTemplate aus Spring
JdbcTemplate aus Spring
 
Schieberegler und analoge Anzeigen in Swing
Schieberegler und analoge Anzeigen in Swing Schieberegler und analoge Anzeigen in Swing
Schieberegler und analoge Anzeigen in Swing
 
Einführung in den EventBus
Einführung in den EventBusEinführung in den EventBus
Einführung in den EventBus
 
Erweiteres for (foreach) in Java 5
Erweiteres for (foreach) in Java 5Erweiteres for (foreach) in Java 5
Erweiteres for (foreach) in Java 5
 
Autoboxing in Java 5
Autoboxing in Java 5Autoboxing in Java 5
Autoboxing in Java 5
 

Fundamentale Muster in Java

Hinweis der Redaktion

  1. #toc1
  2. #toc2
  3. http://c2.com/cgi/wiki?DontDistinguishBetweenClassesAndInterfaces
  4. Nicht abstrakt
  5. #toc2
  6. #index Programmieren gegen Schnittstellen #index Schnittstellen-orientierte Programmierung
  7. #toc2
  8. #index RandomAccess, Schnittstelle
  9. #toc2
  10. #toc2
  11. #toc2
  12. #toc2
  13. #toc2
  14. #index JavaBean
  15. #index PropertyChangeSupport
  16. #index Model-Objekt (MO)
  17. http://www.davethehat.com/articles/aa.pdf