2010-06-27 3 views
5

Auf der Suche nach einem Referenzmaterial, wo ich einige OO-Design-Probleme und eine Lösung zum Üben und Verbessern von Design-Fähigkeiten bekommen kann.Gibt es eine Website/Ressource/Buch, um OO-Design-Probleme zu üben und zu lösen?

Vielen Dank für Ihr Interesse.

EDIT: Ich habe gelesen: - Refactoring von Martin Fowler - Headfirst Design Patterns (Es hatte Problemlösung Ansatz aber sehr begrenzt auf ein Muster im Zusammenhang). und haben eine Idee über gemeinsame Design-Muster.

Ich bin auf der Suche nach einer Referenz, die sehr spezifisch ist für designbezogene Probleme und Lösungen.

Antwort

2

Ich denke, dass dies eine wirklich interessante Frage ist. Wie bereits erwähnt, gibt es viele gute Hinweise auf nützliche Entwurfsmuster, OO-Prinzipien und andere Techniken.

Ich habe noch keine Ressourcen gesehen, die es jemandem erlauben, die Anwendung dieser Techniken auszuüben. Als jemand mit einem Hintergrund in der Bildung habe ich über diese Art von Ressourcen nachgedacht und meine Schlussfolgerung ist, dass die Entwicklung nützlicher Resorption extrem anspruchsvoll ist. Es ist nicht schwer, kleine Fragen zu stellen, die eine Antwort "backen" (zB ein Problem entwickeln, das mit einer abstrakten Fabrik behandelt werden könnte), aber das sind triviale Probleme, die wahre Kunst kommt, wenn die Systeme größer sind und es gibt Kompromisse zu berücksichtigen; wo es mehr als eine "richtige" Antwort geben kann.

Ich kann mir vorstellen, dass qualitativ hochwertige formelle Kurse solches Material enthalten könnten, aber etwas frei zu finden? Wenn wir etwas finden können, wäre das wirklich nett.

Ich vermute, dass Sie derzeit auf Mentoring, Lernen am Arbeitsplatz und langwierige Erfahrung verlassen müssen.

Vielleicht eine Sache zu versuchen: Buoild Ihr eigenes Material! Nehmen Sie zum Beispiel ein nicht-triviales Problem in einer Ihnen bekannten Domäne und versuchen Sie, eine Lösung zu finden. Während Sie Fortschritte machen, stellen Sie hier Fragen zu kleinen Designstücken (oder vielleicht eine eher diskursive Seite). Es wird schwierig, die Fragen klein und aufdringlich zu halten. Aber ich denke, das Wichtigste, was Sie brauchen, ist Feedback und Zusammenarbeit.

1

Vielleicht bin ich ein bisschen OT, aber da Ihre Frage eine ziemlich breite Antwort erfordern würde, empfehle ich Ihnen, sich mit Büchern/Seiten über "Muster" vertraut zu machen.

Kurz gesagt, Muster sind standardisierte Lösungen für häufige OO-Design-Probleme (Sie sollten nicht "das Rad neu erfinden").

Die erste und am meisten gelesene IMO ist "Entwurfsmuster: Elemente der wiederverwendbaren objektorientierten Software". Es ist von 1994 mit Beispielen in C++ und Smalltalk, aber sein Ansatz ist mit jeder OO-Sprache verwendbar.

0

Versuchen Sie "Domain Driven Design" (oder DDD), die Entwurfsmuster für die objektorientierte Programmierung definiert. Eric Evans ist der Autor, der alles begann. Martin Fowler ist ein anderer, der Enterprise Design Patterns http://martinfowler.com/articles/enterprisePatterns.html hat. Sie haben beide einen großen Einfluss auf Designmuster. Entwurfsmuster sind die üblichen Methoden, um Ihren Code einzurichten und objektorientierte Programmierprobleme zu lösen.

Hoffe, das ist die Art von was Sie suchen. Viel Glück!

0

Nun, GoF ist ein Klassiker und ein guter Anfang.

Verwandte Themen