. miradlo bloggt   
« Kurz und gut III Feeds lesen : online : gekürzte Feeds : mit Akregator »

Architekturmuster und Design Patterns verwenden

8. März 2009 roland

Wenn man ein Haus baut gibt es bestimmte Regeln an die man sich halten sollte.

Beispielsweise wäre es nicht sehr ratsam ein Dach so zu konstruieren, dass das Wasser nicht abläuft sondern zur Mitte des Dachs hinfließt. Ein weiteres nicht ratsames Beispiel wäre es eine Decke so zu konstruieren, dass sie sich nicht selbst tragen könnte. Wenn man dann noch auf die Idee kommt, auf diese Decke einen Stuhl zu stellen, findet man sich höchstwahrscheinlich ein Stockwerk tiefer wieder.

Unsere Vorfahren haben also Architekturmuster erfunden. Daneben haben wir vor ein paar tausend Jahren auch noch das Rad erfunden. Wir empfanden das als ziemlich praktisch. Man kann mit so einem Rad die Reibungsverluste beim Schieben verringern. Und heute sagen wir immer wieder mal, dass wir das Rad nicht neu erfinden sollen.

Wie sieht das in der IT aus?

Die IT ist ein relativ neues Themengebiet. Vor ein paar Jahren erfand jeder Entwickler seine Räder jeden Tag nochmals. Irgendwie haben viele von uns, dann viele Stunden verbracht auf Problemen rumzunagen, die es eigentlich schon längst nicht mehr geben sollte.

Und genau hier setzen Architekturmuster und Design Patterns an.

Wir generieren heute eine Webapplikation, indem wir die Architektur auf den Browser, den Webserver, den Datenbankserver und das Netzwerk verteilen.

Wir verwenden Factory Patterns um bestimtme Objekte zu erzeugen.

Wir mixen die diversen Observer, Strategy und Composite Patterns und erstellen Model View Controller Patterns.

Das einzige Problem mit all den schönen Patterns ist, dass die Dinger ziemlich unverständlich sein können. Wenn ein neuer Entwickler anfängt, ist er mit Schleifen, if-Abfragen und anderen Schweinereien schon ziemlich ausgelastet. Wenn dann noch ein Roland vorbei kommt und ihm sagt “heute bauen wir mal ein Singleton”, dann fühlt sich der Anfänger irgendwie nicht wohl. Deshalb habe ich bei guggat emol Blog eine Designpattern Einführung erstellt. Ich werde nicht noch einmal alle Design Patterns, die zur Genüge beschrieben wurden, beschreiben. Ich werde hier die Design Patterns, die ich in den Programmierbeispielen verwende, erläutern. Später werden diese Patterns dann für reelle Aufgaben verwendet.

Wer weiß, vielleicht bauen wir in ein paar Jahren weniger IT-Decken die sich nicht selbst tragen können? :)

Merken und weiterempfehlen Diese Icons verlinken auf Bookmark Dienste bei denen Nutzer neue Inhalte finden und mit anderen teilen können.
  • TwitThis
  • Technorati
  • Wikio DE
  • Digg
  • del.icio.us
  • MisterWong
  • Y!GG

Ähnliche Beiträge

Wir erstellen Webseiten, Blogs, Webapplikationen und mehr...

Der Beitrag wurde am Sonntag, den 8. März 2009 um 00:01 Uhr veröffentlicht und wurde unter software abgelegt.

Dir gefiel der Artikel? Dann abonniere doch den RSS Feed oder abonniere die Beiträge per E-Mail. Du kannst die Kommentare zu diesem Eintrag durch den RSS 2.0 Feed verfolgen. Du kannst einen Kommentar schreiben, oder einen Trackback auf deiner Seite einrichten.

5 Reaktionen zu “Architekturmuster und Design Patterns verwenden”

  1. Chris sagt:

    Ein Hauptproblem, warum in der IT, anders als in der Architektur etc. Pattern noch nicht so essentiell sind, liegt wahrscheinlich daran, dass eine Software erstmal auch mit “schlechtem” Code läuft. Erst später, wenn also neue Programmierer an das Projekt gehen oder die Software erweitert werden soll, stellt man fest wie qualitativ der Code dann wirklich ist.

    Ich für meinen Teil nutze CakePHP für Webprojekte und das darunterliegende MVC ist wirklich genial, wenn man sich erstmal daran gewöhnt hat.

    Zitieren

  2. Roland sagt:

    Hi Chris,
    du hast absolut recht. Wenn ein System rennt gibt es ja den Spruch “Never Change A Running System”.
    Oft genug muss man Legacy Code so stehen lassen wie er ist, da keiner mehr versteht was da so geht.

    Danke für den CakePHP Tipp. Ich habe das noch nicht ausprobiert, werde es mir aber bei Gelegenheit mal anschauen.
    An MVC muss man sich wirklich erst gewöhnen, da dieses Pattern aus mehreren Grundpattern aufgebaut wurde.
    Aber wie du schon sagtest, wenn man sich mal dran gewöhnt hat, geht einiges leichter.

    Zitieren

  3. Chris sagt:

    Ja absolut, es hat bei mir auch eine Zeit gedauert, bis ich mich an CakePHP gewöhnt habe, einfach weil ich vorher keine Pattern verwendet habe. Aber wenn man erstmal die Hürde überwunden hat und ein Grundprojekt mit CakePHP gebastelt hat, ist es einfach genial!! Wenn ich jetzt z.b. ein neues Projekt starte, kann ich mir die Grundfunktionalität ganz einfach zurechtkopieren, also User-Funktionen wie Anmelden (mit Email Check), Login Logout, Authentifizierung etc. und etliche andere Dinge, Tagging z.b.

    Die Dokumentation ist seit einem Jahr auch recht gut, für den Einstieg würde ich aber folgendes Buch empfehlen: “CakePHP Application Development” das hat mir erst das richtige Verständnis gegeben. Im Buch selbst sind die ersten 200 Seiten nur Erklärung zu den ganzen Bereichen, das ist erstmal was seltsam, aber danach kommen Kapitel in denen eine ganze Anwendung gebaut wird und wenn man das nachbastelt, hat man seine Grundfunktionen für zukünftige Projekte und vorallem das Verständnis!

    Also, kann CakePHP nur empfehlen :)

    Zitieren

  4. roland sagt:

    Hi Chris,
    ich bin am Freitag “zufällig” an einer Bücherei vorbeigekommen und habe mir Webentwicklung mit CakePHP von O’Reilly gekauft.
    CakePHP gefällt mir unheimlich gut!
    Was ich bisher gesehen habe ist, dass die dahinterliegende Philosophie sich voll und ganz mit meiner Vorgehensweise trifft.
    Im Moment habe ich unter http://www.baldenhofer.eu/blog/series/newssystem für Ausbildungszwecke ein Newssystem beschrieben. Dieses Teil werde ich jetzt mal mit CakePHP umsetzen.
    Das freut mich ungemein, denn jetzt lerne ich mit den Newssystem auch noch was :)

    Danke für den Tipp!

    Zitieren

  5. Chris sagt:

    Ja super, das freut mich!
    Wie gesagt, anfangs kann es etwas fustrierend sein (zumindest ging es mir so), doch wenn man sich erstmal durchgebissen hat, ist es einfach super.

    Viel Erfolg!

    Zitieren

Schreibe mir

Subscribe without commenting

zum Seitenanfang