Veikko Krypczyk, Elena Bochkor

Handbuch für Softwareentwickler

eBook Ausgabe. 2. Auflage
eBook (epub), 896 Seiten
EAN 9783836279796
Veröffentlicht Dezember 2021
Verlag/Hersteller Rheinwerk eBooks

Auch erhältlich als:

Buch (Hardcover)
49,90
49,90 inkl. MwSt.
Teilen
Beschreibung

Das Standardwerk für professionelles Software Engineering. Jeder Entwickler weiß, dass es mit der Kenntnis von Sprachen und Programmierplattformen nicht getan ist. Wer erfolgreich Software entwickeln möchte, sollte mit vielen Fachgebieten und Methoden vertraut sein - von der Architektur über Datenhaltung, Anforderungsmanagement, Sicherheitsfragen bis zum Projektmanagement. Hier finden Sie eine umfassende Behandlung dieser Themenvielfalt. Das Autorenteam gibt praktische Empfehlungen zu grundlegenden und aktuellen Fragen der professionellen Softwareentwicklung. Das theoretische Fundament und die gut erläuterten Fachbegriffe sind dabei niemals Selbstzweck, sondern stehen im Dienst der Kunst, für Ihre Kunden gute Software zu entwickeln Aus dem Inhalt: - Grundlagen: Algorithmen und Datenstrukturen - Anforderungsanalyse, Planung und Entwurf - Gelungene User Interfaces - Kundenzufriedenheit und Benutzerfreundlichkeit - Migration - vom Altsystem zur zeitgemäßen Anwendung - Datensicherheit, Datenschutz und Verschlüsselung - Guter Code und Qualitätsmaßstäbe - Plattformübergreifende Entwicklung - Parallelprogrammierung - Softwaretesting - Mobile Computing im Enterprise-Umfeld - Überblick über Werkzeuge wie Entwicklungsumgebungen und Versionsverwaltung

Portrait

Prof. Dr. Veikko Krypczyk lehrt u. a. Informatik und Wirtschaftsinformatik. Darüber hinaus ist er Softwareentwickler mit Leidenschaft und begeistert sich für moderne Technologien und Vorgehensweisen. Er publiziert regelmäßig in Fachzeitschriften und spricht auf IT-Konferenzen.

Inhaltsverzeichnis

Materialien zum Buch ... 20 Vorwort ... 21 TEIL I. Überblick ... 23 1. Überblick ... 25 1.1 ... Berufswunsch Softwareentwickler ... 25 1.2 ... Über dieses Buch ... 32 1.3 ... Quellen der zitierten Statistiken ... 37 2. Programmierung als Kern der Softwareentwicklung ... 39 2.1 ... Die Programmierung ... 39 2.2 ... Paradigmen der Softwareentwicklung ... 43 2.3 ... Objektorientierte Programmentwicklung ... 44 2.4 ... Programmiersprachen ... 66 2.5 ... Essenzielle Sprachmerkmale ... 76 2.6 ... Fazit und Ausblick ... 106 2.7 ... Literatur und Links ... 107 3. Algorithmen und Datenstrukturen ... 109 3.1 ... Algorithmen als Kernelemente des Programms ... 110 3.2 ... Entwurf von Algorithmen ... 115 3.3 ... Sortieren und Suchen als Basisalgorithmen ... 128 3.4 ... Elementare Datenstrukturen ... 148 3.5 ... Zusammenfassung und Ausblick ... 170 3.6 ... Literatur und Links ... 172 TEIL II. Der Softwarelebenszyklus ... 175 4. Softwareprojekte professionell planen ... 177 4.1 ... Der Wasserfall ... 178 4.2 ... Iterative Entwicklung -- schrittweise zum Ziel ... 183 4.3 ... Das V-Modell -- eine Struktur hauptsächlich für Projekte der öffentlichen Hand ... 185 4.4 ... Bessere Risikobeherrschung durch das Spiralmodell ... 186 4.5 ... Agile Ansätze -- der Komplexität und Unsicherheit mit Flexibilität begegnen ... 187 4.6 ... Softwareentwicklung und die Schnittstellen zum Projektmanagement ... 199 4.7 ... Ist Agilität heute alternativlos? ... 207 4.8 ... Literatur und Links ... 209 5. Die Anforderungsanalyse -- Startpunkt der Entwicklung ... 211 5.1 ... Überblick und Zielstellung ... 211 5.2 ... Ausgangssituation und Notwendigkeit ... 214 5.3 ... Anforderungen ermitteln ... 218 5.4 ... Klassische Anforderungsanalyse ... 237 5.5 ... Agile Anforderungsanalyse ... 248 5.6 ... Toolunterstützung ... 252 5.7 ... Fazit ... 256 5.8 ... Literatur und Links ... 256 6. Der Entwurf des Softwaresystems ... 259 6.1 ... Die Softwarearchitektur als Basis für Erfolg und Wartbarkeit eines Softwaresystems ... 260 6.2 ... Architekturparadigmen ... 266 6.3 ... Entwurfsmuster als Baupläne ... 291 6.4 ... Entwurfsunterstützung durch grafische Modellierung ... 297 6.5 ... Weitere Entwurfsentscheidungen ... 301 6.6 ... Erfolgreiche Entwürfe mithilfe von Prototypen ... 304 6.7 ... Zusammenfassung und Fazit ... 312 6.8 ... Literatur und Links ... 313 7. Die Implementierung schafft den Kern der Anwendung ... 315 7.1 ... Die Entwicklung der Benutzerschnittstelle ... 316 7.2 ... Die Businesslogik umsetzen ... 346 7.3 ... Die Datenwelt anbinden ... 348 7.4 ... Zusammenfassung und Fazit ... 351 7.5 ... Literatur und Links ... 351 8. Testen als Voraussetzung für fehlerarme Software ... 353 8.1 ... Zur Notwendigkeit von Softwaretests ... 354 8.2 ... Testgetriebene Entwicklung ... 355 8.3 ... Ein Überblick über wichtige Testarten ... 357 8.4 ... Testmethoden ... 361 8.5 ... Testebenen ... 369 8.6 ... Technik des Testens ... 387 8.7 ... Fazit und Zusammenfassung ... 391 8.8 ... Literatur und Links ... 391 9. Distribution -- das Produkt muss zum Kunden ... 393 9.1 ... Die Softwaredistribution im Überblick ... 394 9.2 ... Automatisierte Softwareverteilung ... 405 9.3 ... Verbesserte Zusammenarbeit durch DevOps ... 408 9.4 ... Die Nutzung der App Stores ... 411 9.5 ... Die Technik der Softwarebereitstellung ... 417 9.6 ... Fazit ... 437 9.7 ... Literatur und Links ... 437 10. Vom Altsystem zur zeitgemäßen Anwendung ... 439 10.1 ... Technologien im Wandel ... 440 10.2 ... Notwendigkeit einer Softwaremigration ... 442 10.3 ... Ziele einer Softwaremigration ... 444 10.4 ... Planung der Migration ... 444 10.5 ... Migrationsstrategien ... 447 10.6 ... Arten der Migration ... 451 10.7 ... Wirtschaftlichkeitsbetrachtungen ... 453 10.8 ... Stolpersteine ... 454 10.9 ... Eine Fallstudie ... 455 10.10 ... Literatur und Links ... 473 TEIL III. Technologien und Methoden ... 475 11. Webtechnologien ... 477 11.1 ... Einführung ... 477 11.2 ... Zusammenspiel von HTML, CSS und JavaScript ... 478 11.3 ... Die Struktur einer Webseite mit HTML ... 480 11.4 ... HTML Basics ... 481 11.5 ... Das Layout und das Design einer Webseite mit CSS ... 487 11.6 ... Logik und Interaktion mit JavaScript ... 504 11.7 ... Klassenbibliotheken und Frameworks ... 519 11.8 ... Fazit ... 529 11.9 ... Literatur und Links ... 529 12. Apps für mobile Systeme ... 531 12.1 ... Arten von Apps ... 533 12.2 ... Native Apps ... 535 12.3 ... Web-Apps ... 553 12.4 ... Hybride Apps ... 555 12.5 ... Plattformübergreifende Ansätze ... 557 12.6 ... Auswahlkriterien ... 571 12.7 ... Sensoren ... 577 12.8 ... Emulation und Simulation ... 584 12.9 ... Backend as Service ... 591 12.10 ... Fazit ... 599 12.11 ... Literatur und Links ... 599 13. Plattform- und geräteübergreifende Entwicklung ... 601 13.1 ... Nutzerinnen und Nutzer im Fokus ... 602 13.2 ... Ansätze für die plattformübergreifende Entwicklung ... 604 13.3 ... Ein Beispiel mit RAD Studio ... 614 13.4 ... Fazit ... 617 13.5 ... Literatur und Links ... 618 14. Parallelprogrammierung ... 619 14.1 ... Systemtechnische Ebene ... 620 14.2 ... Anwendungsebene ... 626 14.3 ... Programmiertechnische Ebene ... 634 14.4 ... Zusammenfassung ... 638 14.5 ... Literatur und Links ... 638 15. Kundenzufriedenheit durch Nutzerorientierung ... 641 15.1 ... Die Nutzer im Fokus ... 644 15.2 ... Benutzerschnittstellen im Wandel ... 648 15.3 ... Gestaltung von Benutzeroberflächen ... 660 15.4 ... Literatur und Links ... 668 16. Datensicherheit und Datenschutz ... 671 16.1 ... Begriffe und Angrenzungen ... 674 16.2 ... Überblick über die Datenschutz-Grundverordnung ... 676 16.3 ... Datenschutz und Cloud-Computing ... 679 16.4 ... Technischer Datenschutz ... 681 16.5 ... Fazit ... 697 16.6 ... Literatur und Links ... 697 17. Grundlagen der Datenhaltung ... 699 17.1 ... Datenbank -- ein Ort, um Ordnung zu halten ... 699 17.2 ... Phasen der Datenbankentwicklung ... 708 17.3 ... Relationale Datenbanken ... 711 17.4 ... NoSQL-Datenbanken ... 726 17.5 ... Fazit und Ausblick ... 735 17.6 ... Literatur und Links ... 735 18. Werkzeugunterstützung ... 737 18.1 ... Die Rolle von Werkzeugen ... 738 18.2 ... Integrierte Entwicklungsumgebungen als Multifunktionswerkzeuge ... 739 18.3 ... Versionsverwaltungen als Voraussetzung für eine erfolgreiche Entwicklung ... 744 18.4 ... Weitere Softwaretools für die Entwicklung ... 754 18.5 ... Fazit und Ausblick ... 758 18.6 ... Literatur und Links ... 759 19. Qualitätssicherung und Clean Code Development ... 761 19.1 ... Das Verständnis von Softwarequalität ... 761 19.2 ... Ansätze zur Bestimmung der Softwarequalität ... 764 19.3 ... Softwarequalität zwischen Nutzen und Kosten ... 769 19.4 ... Qualität verbessern ... 771 19.5 ... Eine gesunde Fehlerkultur ... 786 19.6 ... Fazit und Zusammenfassung ... 793 19.7 ... Literatur und Links ... 793 TEIL IV. Trends ... 795 20. Enterprise Mobile Computing ... 797 20.1 ... Einsatzszenarien ... 798 20.2 ... Bring Your Own Device ... 807 20.3 ... Technische Aspekte für Enterprise Mobile Computing ... 817 20.4 ... Fazit und Ausblick ... 829 20.5 ... Literatur und Links ... 829 21. Internet of Things ... 831 21.1 ... Stand heute und Zukunftsszenarien ... 832 21.2 ... IoT-Infrastruktur ... 841 21.3 ... Hardware auf kleinstem Raum ... 850 21.4 ... Fallbeispiel: Windows 10 auf dem Raspberry Pi ... 854 21.5 ... Fazit und Ausblick ... 866 21.6 ... Literatur und Links ... 867 22. Cloud-Computing ... 869 22.1 ... Grundlagen des Cloud-Computings ... 870 22.2 ... Ökonomische Gesichtspunkte ... 876 22.3 ... Cloud-Computing als Werkzeug der Softwareentwicklung ... 881 22.4 ... Fazit ... 885 22.5 ... Literatur und Links ... 885 Index ... 887

Technik
Sie können dieses eBook zum Beispiel mit den folgenden Geräten lesen:
• tolino Reader 
Laden Sie das eBook direkt über den Reader-Shop auf dem tolino herunter oder übertragen Sie das eBook auf Ihren tolino mit einer kostenlosen Software wie beispielsweise Adobe Digital Editions. 
• Sony Reader & andere eBook Reader 
Laden Sie das eBook direkt über den Reader-Shop herunter oder übertragen Sie das eBook mit der kostenlosen Software Sony READER FOR PC/Mac oder Adobe Digital Editions auf ein Standard-Lesegeräte. 
• Tablets & Smartphones 
Möchten Sie dieses eBook auf Ihrem Smartphone oder Tablet lesen, finden Sie hier unsere kostenlose Lese-App für iPhone/iPad und Android Smartphone/Tablets. 
• PC & Mac 
Lesen Sie das eBook direkt nach dem Herunterladen mit einer kostenlosen Lesesoftware, beispielsweise Adobe Digital Editions, Sony READER FOR PC/Mac oder direkt über Ihre eBook-Bibliothek in Ihrem Konto unter „Meine eBooks“ -  „online lesen“.
 
Bitte beachten Sie, dass die Kindle-Geräte das Format nicht unterstützen und dieses eBook somit nicht auf Kindle-Geräten lesbar ist.
Hersteller
Libri GmbH
Friedensallee 273

DE - 22763 Hamburg

E-Mail: GPSR@libri.de

Website: www.libri.de

Das könnte Sie auch interessieren

Katharina Zweig
Weiß die KI, dass sie nichts weiß?
eBook (epub)
Sofort lieferbar (Download)
16,99
Ben Aaronovitch
Ein weißer Schwan in Tabernacle Street
eBook (epub)
Sofort lieferbar (Download)
9,99
Roberto Simanowski
Sprachmaschinen
eBook (epub)
Sofort lieferbar (Download)
19,99
Yuval Noah Harari
NEXUS
eBook (epub)
Sofort lieferbar (Download)
26,99
Ruth Ware
Zero Days
eBook (epub)
Sofort lieferbar (Download)
12,99
Max Tegmark
Leben 3.0
eBook (epub)
Sofort lieferbar (Download)
14,99
Ingo Dachwitz
Digitaler Kolonialismus
eBook (epub)
Sofort lieferbar (Download)
21,99
Marc Elsberg
ZERO - Sie wissen, was du tust
eBook (epub)
Sofort lieferbar (Download)
10,99
Sibylle Berg
RCE
eBook (epub)
Sofort lieferbar (Download)
12,99
Sofort lieferbar (Download)
12,99
Ernest Cline
Ready Player One
eBook (epub)
Sofort lieferbar (Download)
8,99
Marc Meller
Das Smartphone
eBook (epub)
Sofort lieferbar (Download)
14,99
Ernest Cline
Ready Player Two
eBook (epub)
Sofort lieferbar (Download)
12,99
Neal Stephenson
Snow Crash
eBook (epub)
Sofort lieferbar (Download)
14,99
Dirk Becker
Einstieg in Linux Mint 22
eBook (epub)
Sofort lieferbar (Download)
29,90
Annekathrin Kohout
Hyperreaktiv
eBook (epub)
Sofort lieferbar (Download)
15,99
Inga Strümke
Künstliche Intelligenz
eBook (epub)
Sofort lieferbar (Download)
24,90
Miriam Meckel
Alles überall auf einmal
eBook (epub)
Sofort lieferbar (Download)
4,99
Sofort lieferbar (Download)
21,99
Elisa Hoven
Das Ende der Wahrheit?
eBook (epub)
Sofort lieferbar (Download)
18,99
Katharina Zweig
Ein Algorithmus hat kein Taktgefühl
eBook (epub)
Sofort lieferbar (Download)
9,99
Matthias Matting
Tolino shine - das inoffizielle Handbuch.
eBook (epub)
Sofort lieferbar (Download)
2,99
Sofort lieferbar (Download)
0,00
Markus Widl
Microsoft 365 Copilot
eBook (epub)
Sofort lieferbar (Download)
29,90
Michael Kofler
Linux
eBook (pdf)
Sofort lieferbar (Download)
49,90
Paul Zenker
GenAI Security
eBook (epub)
Sofort lieferbar (Download)
34,90
Geert Lovink
In der Plattformfalle
eBook (epub)
Sofort lieferbar (Download)
0,00
Detlef Krause
Webtexten für Nicht-Texter
eBook (epub)
Sofort lieferbar (Download)
15,99
Sofort lieferbar (Download)
0,00
Thomas Brühlmann
Raspberry Pi Pico und Pico W Schnelleinstieg
eBook (epub)
Sofort lieferbar (Download)
14,99
Sofort lieferbar (Download)
19,99
Florian Dalwigk
Python Projekte für die Praxis
eBook (epub)
Sofort lieferbar (Download)
22,99
Sybille Krämer
Der Stachel des Digitalen
eBook (epub)
Sofort lieferbar (Download)
23,99
Gene Kim
Projekt Unicorn
eBook (epub)
Sofort lieferbar (Download)
24,90
Walter Isaacson
Steve Jobs
eBook (epub)
Sofort lieferbar (Download)
12,99
Sofort lieferbar (Download)
0,00