Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Patterns in Java Api

Empfohlene Antworten

Veröffentlicht

Guten Morgen alle zusammen.

Ich habe folgendes Problem, ich habe soeben eine Aufgabe bekommen in der es darum geht verschiedene Patterns in 2 Packages der Java Api ausfindig zu machen.

Dabei handelt es sich um die Packages: java.util.logging, ava.util.jar j

Irgendwie bekomme ich das aber nicht so richtig hin, ich habe sofort erkannt, dass das Strategy Pattern benutzt wurde aber ein weiteres finde ich lieder nicht. Ich kenne zwar die Aufgaben vieler Patterns, aber ich kann sie nicht in der Java Api erkennen. Jetzt wollte ich fragen ob mir vielleicht jemand dabei helfen kann und mir eine kleine Strategie zeigen kann, am besten mit einem Beispiel, damit ich die Patterns finden kann.

Gruß p.

Bearbeitet von p2k

Ich nehme an, Du meinst Design Pattern? Wenn ja, welche? Die GoF-Pattern?

Welche Pattern sollst Du denn genau finden?

Wenn es alle Standard GoF Design Patterns sein sollten, könntest Du Dir z.B. java.util.jar.JarInputStream und den passenden OutputStream anschauen und überlegen, ob hier ein Pattern versteckt sein könnte (aber schnell, der riesige Zaunpfahl wird schnell zu schwer).

Peter

  • Autor

Ja die Rede war von den Design Patterns, genauer die von der Gang.. Und ich suche da eigentlich alle möglichen Patterns (Composite, Iterator, Decorator, Observer, Strategy, Proxy, Adapter, Facade, Command, State) und noch andere die mir grad nicht einfallen.

Naja, alle GoF Design Pattern wirst Du in den zwei Packages wahrscheinlich nicht finden. Es ist ja nicht so, dass man versucht, möglichst alle Design Pattern in einem Framework zu verwenden, sondern für ein bestimmtes Problem versucht, das passende Pattern zu finden.

Was fällt Dir denn zu den Streams ein, die ich oben angesprochen habe?

Schöne Grüße,

Peter

  • Autor

Also alle müssen wir auch nicht finden, es reicht wenn wir bis zu 8 stück finden. 1 oder 2 würden auch schon reichen, wenn das package nicht mehr besitzt.

Allerdings fällt mir wenn ich ehrlich bin nicht bei dem Stream auf. Ich habe mir die Java Doc angeschaut, allerdings verstehe ich nicht, welches Pattern sich dort verstecken könnte.

Gruß p.

Schau Dir mal nicht nur den konkreten Stream an, sondern wie Streams in Java allgemein funktionieren. Dann springt Dich das Design Pattern förmlich an.

Nachtrag: speziell bei den Konstruktoren der einzelnen Streams fällt das ganz gut auf.

Peter

  • Autor

ach jetzt wo du das mit den konstruktoren sagt...

da wird ja gewrappt und sozusagen decoriert..weil man ja immer den InputStream darein packt..

also so ja:

InputStream in = new JarInputStream(new ZipInputStream(new InputStream));

Damit ist es ja das Decorator Pattern oder nicht?

  • Autor

InputStream in = new JarInputStream(new ZipInputStream(new InputStream));

das quatsch.. ich meine sowas :)

InputStream in = new JarInputStream(new ZipInputStream(new FileInputStream(new File(C:\Test.txt))));

Und nochmaol danke für die Hilfe :)

Sehr gut! Weiter gehts, diesmal im logging-Package. Schau Dir doch mal die Logger-Klasse an, dort sind gleich ein paar Design Pattern versteckt (allerdings nicht ganz so offensichtlich wie bei den Streams, finde ich). Schau Dir mal an, wie Logger organisiert sind und was sie so für Eigenschaften (Attribute) haben.

ist übrigens eine schöne Aufgabe, die Du bekommen hast.

Peter

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.