Prinzipien des Softwaredesigns

Prinzipien des Softwaredesigns

Taschenbuch
4.75
RedesignCode-SmellProgrammierungObjektorientierte Programmierung

Durch das Verwenden dieser Links unterstützt du READO. Wir erhalten eine Vermittlungsprovision, ohne dass dir zusätzliche Kosten entstehen.

Beschreibung

Mit durchdachtem Softwaredesign zu besserem Code US-Bestseller des renommierten Stanford-Professors John Ousterhout Kombiniert eingängige Codebespiele (v. a. Java und C++) und High-Level-Konzepte, durch die Sie Ihr Verständnis von Softwaredesign deutlich vertiefen werden. Bewährte Didaktik: Die Inhalte wurden im Rahmen eines Kurses an der Stanford University mehrfach mit Studierenden durchgespielt.

Die Prinzipien guten Softwaredesigns zu verstehen, hält John Ousterhout für eine Schlüsselqualifikation in der Softwareentwicklung. Sein Buch gibt Impulse für eine anregende und notwendige Diskussion und bietet praxistaugliche Hilfestellungen für gute Designentscheidungen.

Ausgehend von der Frage »Wie können wir die Komplexität in großen Softwaresystemen reduzieren und managen?« arbeitet John Ousterhout Prinzipien für das Softwaredesign heraus, die als Leitlinie für den gesamten Softwareentwicklungsprozess dienen können.

Sie erfahren in diesem Buch:

Wie Sie komplexe Systeme in möglichst unabhängige Module mit einfachen Schnittstellen zerlegen Wie Sie Spezialisierung in Modulen vermeiden Wie Sie die Anzahl der Stellen im Code minimieren, an denen Exceptions behandelt werden müssen Wie Sie Kommentare und gut gewählte Namen nutzen, um Ihren Code verständlicher zu machen Wie Sie vermeiden, dass sich Komplexität einschleicht, wenn Systeme sich weiterentwickeln Welche Warnhinweise darauf hindeuten, dass Sie Designentscheidungen überprüfen sollten

Ousterhout stellt Überzeugungen infrage, die weit verbreitet sind: Er rät davon ab, die Anzahl der Codezeilen einer Methode oder Klasse als Gradmesser für die Komplexität von Software zu verstehen, und plädiert dafür, sich auf ihre »Tiefe« zu konzentrieren – wie gut sie also Komplexität verstecken. Und während viele Entwicklerinnen und Entwickler meinen, dass sich gut geschriebene Programme von selbst dokumentierten, zeigt Ousterhout, wie essenziell Kommentare sind: Das Schreiben guter Kommentare ermöglicht Abstraktion, und es wird zu besserem Softwaredesign führen.

Buchinformationen

Haupt-Genre
Fachbücher
Sub-Genre
Informatik
Format
Taschenbuch
Seitenzahl
192
Preis
25.60 €

Autorenbeschreibung

John Ousterhout ist Professor für Informatik an der Stanford University. Er hat die Entwicklung weit verbreiteter Softwaresysteme wie Raft, Tcl/Tk, Sprite und Magic geleitet und eigene Unternehmen gegründet. Er ist Mitglied der National Academy of Engineering und erhielt zahlreiche Auszeichnungen wie den U.C. Berkeley Distinguished Teaching Award.

Beiträge

3
Alle
5

I really enjoyed reading this book, especially if you've read [b:Clean Code: A Handbook of Agile Software Craftsmanship|3735293|Clean Code A Handbook of Agile Software Craftsmanship|Robert C. Martin|https://i.gr-assets.com/images/S/compressed.photo.goodreads.com/books/1436202607l/3735293._SX50_.jpg|3779106] before. This one isn't that religious, but certainly similar opinionated. In general most of the ideas felt more reasonable, like the points about shallow and deep modules or when to split classes. Also I really like how essential code docs are for the author, because I feel the same. Normally, business code rarely includes comments at all and I usually have to make my own, to avoid re-learning blocks I've already visited.

4

Really interesting concepts. The third portion of the book has lost some of my interest though, mainly because I already follow conventions for things as naming variables, and I generally agreed with the author on this.

4.5

Excellent book on how to design your part of the software, especially for beginners

The overall goal is to reduce complexity and conversely increase the ease in understanding and maintaining the software. The book is well structured and the discussions are all well made and drice home the point of the author. It is however mostly directed at newer software developers. Interfaces, naming, descriptions, all these things are important but are just the foundation to any developer out there.

Beitrag erstellen