| |
| |
|
|
 |
|
| |
Architektur Bau- & Umwelttechnik Belletristik Betriebswirtschaft Biologie Briefe, Bewerbung, Rhetorik Chemie Entspannung & Meditation Esoterik & Anthroposophie Essen und Trinken Fitness, Aerobic, Bodybuilding, Gymnastik Garten, Pflanzen, Natur Geowissenschaften Geschenkbücher Geschichte Gesundheit, Körperpflege Heimwerken Hobby, Freizeit, Natur Informatik & EDV Innenarchitektur & Design Journalistik & Presse Kinder- & Jugendliteratur Kunst Lebensführung Literaturwissenschaft Lyrik, Dramatik, Essays Management Mathematik Mechanik & Akustik Medien & Kommunikation Medizin & Pharmazie Musik Nachschlagewerke Naturmedizin & Homöopathie Naturwissenschaft & Technik Partnerschaft, Beziehungen Pädagogik Philosophie Physik & Astronomie Politik, Gesellschaft, Arbeit Psychologie Recht Reise Religion Romane, Erzählungen & Anthologien Sachbuch / Ratgeber Schule & Lernen Soziologie Sport Sprachwissenschaft Steuern Technik Theater, Ballett & Film Tiere Tiermedizin Umwelt, Land- & Forstwirtschaft Verlagswesen, Buchhandel, Bibliothekswesen Völkerkunde & Volkskunde Werbung & Marketing Wirtschaft |
|
| |
|
 |
|
| |
Design, Architektur & bildende Kunst Aktuelle Buchempfehlungen |
|
|
 |
|
| |
|
|
| |
|
|
|
|
| |
|
| |
|
 |
|
| |
Andrew Hunt, David Thomas
Übersetzt von Steffen Gemkow, Andreas Braig
Der Pragmatische Programmierer
erschienen März 2003 307 Seiten, Paperback
Carl Hanser GmbH & Co. KG | ISBN: 3446223096
| |  | 39.90 EUR |  | | |
|
|
|
|
| |
Innerhalb 24 Stunden versandfertig. Expressversand: In Deutschland versandkostenfrei | Österreich: 4 € | Schweiz: ab 4 € | Europaweit ab 6 €. Versandkostenübersicht weltweit. Alle Preise inkl. MwSt. |
|
|
Ähnliche Bücher anzeigen
|
|
|
| |
| |
| VORWORT | öffnen |
|
Vorwort Als fachlicher Lektor hatte ich frühzeitig die Gelegenheit, das Buch zu lesen, das Sie jetzt in Händen halten. Schon in der Rohfassung war es großartig. David Thomas und Andrew Hunt haben etwas zu sagen, und sie wissen, wie man es sagen muss. Ich hatte erkannt, was sie taten, und wusste, dass es funktionieren würde. Ich bat sie, dieses Vorwort schreiben zu dürfen, um zu erklären, wieso. Einfach gesagt, zeigt Ihnen dieses Buch auf nachvollziehbare Weise, wie man programmiert. Sie werden...
[weiter lesen]
|
|
|
| KLAPPENTEXT | öffnen |
|
Der Pragmatische Programmierer Zunehmende Spezialisierung und Technisierung verstellen den Softwareentwicklern oft den Blick auf das Wesentliche: Anforderungen in ein funktionierendes und wartbares Programm zu überführen, das die Anwender begeistert. Der Pragmatische Programmierer rückt dies wieder in den Mittelpunkt. Wer dieses Buch liest, lernt, •die Anwender zu begeistern, •die echten Anforderungen zu finden, •den Verfall von Software zu bekämpfen, •gegen Redundanz anzugehen, •dynamischen u... [weiter lesen] |
|
|
| INHALTSVERZEICHNIS | öffnen |
Inhalt Vorwort.IX Vorwort der Übersetzer.XIII Einleitung.XVII 1 Eine Pragmatische Philosophie. 1 1 Der Hund hat meinen Quelltext gefressen. 2 2 Softwareentropie. 4 3 Steinsuppe und gekochte Frösche. 6 4 Gut ist gut genug. 9 5 Ihr Wissensportfolio. 11 6 Kommuniziere!16 2 Ein Pragmatisches Vorgehen. 23 7 Die Übel der Wiederholung. 24 8 Orthogonalität. 31 9 Umkehrbarkeit. 40 10 Leuchtspurmunition. 44 11 Prototypen und Post-it-Zettel. 48 12 Fachsprachen. 52 13 Abschätzen. 59 3 Das Handwerkszeug. 65 14 Die Kraft von Klartext. 66 15 Kommandospiele. 71 16 Profi-Editor. 75 17 Versionskontrolle. 79 18 Fehlersuche. 82 19 Textbearbeitung. 91 20 Quelltextgeneratoren. 94 4 Pragmatisch paranoid. 99 21 Design by Contract. 100 22 Tote Programme lügen nicht. 111 23 Abgesichert Programmieren. 113 24 Ausnahmsweise. 116 25 Wie man Ressourcen balanciert. 120 5 Biegen oder Zerbrechen. 129 26 Entkopplung und das Demeter-Gesetz. 130 27 Metaprogrammierung. 135 28 Zeitliche Abhängigkeiten. 140 29 Ansichtssache. 147 30 Blackboards. 155 6 Beim Implementieren. 161 31 Programmieren mit dem Zufall. 162 32 Algorithmengeschwindigkeit. 166 33 Refaktorisieren. 173 34 Einfach testbar. 179 35 Böse Zauberer. 187 7 Vor dem Projekt. 189 36 Die Anforderungsgrube. 190 37 Unlösbare Rätsel. 199 38 Nicht bevor Sie bereit sind. 202 39 Die Spezifikationsspirale. 204 40 Kästchen und Pfeile. 207 8 Pragmatische Projekte. 211 41 Pragmatische Teams. 212 42 Alles automatisch. 218 43 Schonungsloses Testen. 224 44 Es geht ums Schreiben. 233 45 Hohe Erwartungen. 240 46 Stolz und Vorurteil. 243 Anhang A: Quellen. 245 Anhang B: Lösungen zu den Übungen. 263 Register. 297
[weiter lesen] |
|
|
|
|
| REGISTER | öffnen |
Register A abhängiger Quelltext - zeitliche Abhängigkeit 140 Abschätzen 59 - Aufzeichnungen 63 - Modelle 61 - Problemgebiet 61 - Projektpläne 63 - Testen 171 Abschätzung 166 - Genauigkeit 59 Adapter 123, 125 Advanced C++ Programming Styles and Idioms 248 Aegis transaction-based configuration management 255 Agent 70, 108 aktiver Quelltextgenerator 95 Aktivitätsdiagramm 141 Algorithmus - Abschätzung 166 - Auswahl 171 - binäres Ausschließen 169 - linearer 167 - sublinearer 167 - Teile-und-Herrsche 169 Analysemuster 248 Analysieren - Log-Meldungen 185 Anbieter - Abhängigkeit von 36 Anforderungen 190 - DbC 101 - Feature-itis 196 - Formale Methoden 207 - Geschäftsproblem 191 - Glossar 197 - Invariante formulieren 107 - Richtilinien 190 - sich ändernde 24 - überspezifizieren 195 - Usability-Test 227 - Verteilung 197 - Wildwuchs 196 Annahme - überprüfen 165 Anonymität 243 Ansicht 150 Anwender - Erwartungen 241 Anwendungsbereich - Metadaten 137 Anwendungsfall 192 - Diagramme 195 AOP 36 Arbeitsablauf 141 - inhaltsgesteuert 221 arbeitsscheuer Quelltext 103 Architektur - Deployment 146 - Flexibilität 42 - Prototypen 51 - Verteilung 146 Aspekt-orientierte Programmierung (AOP) 36, 257 Assistent (Wizard) 187 at Befehl 219 Aufruf - Methode 163 ausführbare Dokumente 236 Ausnahmen - Auswirkung von 118 - Fehlerbehandlungsroutine 119 - Ressourcenverwaltung 124 Aussterben 139 auto_ptr 125 Automatisierung 218 - Build-Prozess 81, 220 - cron 219 - Dokumentation 236 - Genehmigungsprozeduren 222 - Kompilieren 219 - Team 216 - Testen 26, 225 - Webseiten erzeugen 222 awk 91 B Backus-Naur-Form (BNF) 54 bash Shell 73, 75 Basisklasse 103 Baumdarstellung 151 Beck, Kent 184, 243 Benutzerschnittstelle - grafische Benutzeroberfläche 71 Beowulf-Projekt 252 Beschränkung - Handhabung von 200 Bibliotheken 35 binäres Ausschließen 169 Binärformat - Probleme beim Lesen 68 bison 55, 254 Blackboard-System 155 - Arbeitsablauf 158 - Einteilung 157 - Workflow 158 BNF 54 Branding 213 Brant, John 252 Brooks, Frederick 248 Browser, Refactoring 252 Bug 82 Build-Lauf - finaler 221 - nächtlich 219 Build-Prozess - Abhängigkeiten 223 - Automatisierung 81, 220 - Refaktorisieren 176 C C++ 42, 106 - auto_ptr 125 - Ausnahmen 124 - DOC++-Dokumentationsgenerator 236, 253 - Entkopplung 133 - Wiederholung 27 Caching 28 Cascading Style Sheets (CSS) 238 Cetus Links 249 ClearCase 255 Cockburn, Alistair XXIII, 192, 248, 257 Code Profiler 171 COM 50 comp.object FAQ 256 Component Object Model (COM) 50 Concurrent Version System (CVS) 255 Constantine, Larry L. 32 Controller (MVC) 152 Coplien, Jim 248 CORBA 27, 35, 42 - Ereignisdienst 149 Cox, Brad J. 179 C-Programmiersprache 106 - DbC 105 - Fehlerbehandlung 112 - Makros 112 - Object Pascal-Schnittstelle 93 - Wiederholung 27 cron 219 CSS 238 CVS 255 Cygwin 73, 254 D Data Display Debugger (DDD) 86, 252 Databank - Schema 136 Datei - Header- 27 - Implementierung 27 - Log- 185 - Makefile 219 - Quelltext 95 Daten - Blackboard-System 158 - Caching 28 - Data-Dictionary 136 - dynamische Datenstrukturen 126 - globale 37 - lesbar gegenüber verständlich 68 - Normalisierung 27 - Sichten 150 - Sprache 55 - Test 92, 228 - Zwischenspeichern 28 Datenbankschema - Pflege 92 DbC 100, 101 DDD 86 Deadlock 123 Debugging - Sicht 153 defensives Programmieren 99 Delphi 50 Demeter-Projekt 258 Deployment 146 Deployment Descriptor 139 Design by Contract (DbC) 100, 101, 145 - Agenten 108 - dynamische Verträge 108 - iContract 252 - Klassen-Invarianten 101 - Kommentare 104 - Prädikate 102 - Sprachunterstützung 105 - Unittests 180 - Vor- und Nachbedingungen 101, 104 - Zusicherung 104 Design Pattern 148 Destruktor 123 Dienste, entwerfen 144 DOC++-Dokumentationsgenerator 253 Doc++-Dokumentationsgenerator 236
[weiter lesen] |
|
|
|
|
|
|
| |
|
|

|
|