Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen

Handbuch für Softwareentwickler

49,90 €

Sofort verfügbar, Lieferzeit: Sofort lieferbar

Format auswählen
Produkt Anzahl: Gib den gewünschten Wert ein oder benutze die Schaltflächen um die Anzahl zu erhöhen oder zu reduzieren.

Handbuch für Softwareentwickler, Rheinwerk Verlag
Von Veikko Krypczyk, Elena Bochkor, im heise shop in digitaler Fassung erhältlich

Produktinformationen "Handbuch für Softwareentwickler"

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
       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

Artikel-Details

Anbieter:
Rheinwerk Verlag
Autor:
Veikko Krypczyk, Elena Bochkor
Artikelnummer:
9783836279796
Veröffentlicht:
23.12.21
Seitenanzahl:
896