
Clean SAPUI5
Lesbarer und wartbarer SAPUI5-Code
SAP PRESS
1st Edition
Published on 3. September 2024
Book
Hardback
596 pages
978-3-367-10050-7 (ISBN)
Description
Optimieren Sie Ihren SAPUI5-Code für bessere Lesbarkeit und Wartbarkeit! Entdecken Sie in diesem Buch bewährte Methoden von Experten, um JavaScript-Funktionen effektiv zu nutzen und Ihren SAPUI5-Code zu verbessern. Tauchen Sie ein in detaillierte Beispiele und Erklärungen zu Modulen, Klassen, Funktionen, Namen, Variablen, Literalen, Kommentaren, Code-Metriken und mehr. Übernehmen Sie die Best Practices von den Profis für Formatierung, Testen, Implementierung und vieles mehr!Aus dem Inhalt:JavaScriptModule und KlassenFunktionenNamensgebungVariablen und LiteraleKontrollstrukturFehlerbehandlungFormatierungStatische Code-PrüfungTestenImplementierung
More details
Language
German
Place of publication
Bonn
Germany
Publishing group
Rheinwerk
Edition type
New edition
Dimensions
Height: 242 mm
Width: 175 mm
Thickness: 39 mm
Weight
1234 gr
ISBN-13
978-3-367-10050-7 (9783367100507)
Schweitzer Classification
Other editions
Additional editions

E-Book
09/2024
1st Edition
SAP PRESS
€71.92
Available for download

Book
08/2024
Rheinwerk
€94.90
Article exhausted; check different version
Persons
Author
Daniel Bertolozi ist Softwareentwickler bei SAP mit mehr als fünf Jahren Erfahrung in der SAP-Fiori-Entwicklung. Er hat an mehreren Projekten gearbeitet, bei denen SAPUI5-Anwendungen (in JavaScript und TypeScript) mithilfe von Best Practices für die Code-Qualität implementiert wurden. Zudem engagiert er sich aktiv für die Verbreitung agiler Softwareentwicklungspraktiken im SAP-Umfeld. Daniels Ansatz zur Softwareentwicklung folgt dem Leitspruch von Robert C. Martin: "Der einzige Weg, schnell voranzukommen, ist, es gut zu machen." Qualität ist für ihn entscheidend, denn er weiß: Wenn die Qualität nachlässt, leidet letztendlich auch die Geschwindigkeit, und das gilt es, zu vermeiden.
Arnaud Buchholz ist Entwicklungsexperte bei SAP mit dem Schwerpunkt auf Design, Entwicklung und Verbesserung von SAPUI5-Anwendungen. Er verfügt über mehr als 20 Jahre Erfahrung in der Softwareentwicklung.
Klaus Häuptle ist Entwickler, Trainer und Product Owner im Bereich Anwendungsentwicklung. Für SAP hat er an der Entstehung verschiedener Produkte mitgewirkt, die auf unterschiedlichen Technologien basierten. Er unterstützt die SAP-Community dabei, Wissen zu teilen und Methoden und Arbeitsmittel zu verbessern. Unter anderem beeinflusste er die Verbesserung der Testmöglichkeiten für ABAP, SAP HANA und SAPUI5. Zusammen mit Florian Hoffmann entwickelte er einen zunächst internen Clean-ABAP-Leitfaden, der später als Open-Source-Projekt veröffentlicht wurde und als Grundlage dieses Buches dient.
ISNI: 0000 0005 1623 0879
ISNI: 0000 0005 1623 0879
Rodrigo Jordão arbeitet als Development Architect bei SAP. Aktuell ist er im Bereich Integrated Business Planning (IBP) mit Schwerpunkt auf dem SAP Supply Chain Control Tower tätig. Im Rahmen seiner Karriere bei SAP war er an der Entwicklung verschiedener SAP-Produkte beteiligt - von branchenspezifischen Lösungen wie SAP Intellectual Property Management bis hin zu grundlegenden Komponenten wie SD. Zuvor arbeitete als Webentwickler mit Perl and Java sowie als Berater mit Microsoft.
Christian Lehmann ist Entwicklungsarchitekt und arbeitet im Qualitätsbereich von SAP S/4HANA. In seinen 18 Jahren bei SAP hat er an der Konzeption, Implementierung und Testautomatisierung von SAP-basierten Produkten gearbeitet, darunter auch Anwendungen, die auf SAPUI5 basieren. Er trägt zur SAP-ASE-Community für ABAP- und SAPUI5-basierte Themen bei und hat Spaß daran, neue Ansätze für automatisierte Softwaretests kennenzulernen.
Narendran NV ist leitender Entwickler, Trainer und Sicherheitsexperte bei SAP. Derzeit ist er Teil eines Teams, das sich auf die Entwicklung von Advanced Available-to-Promise (ATP) konzentriert. Zuvor war er Teil des FXperience-Teams (Bangalore), das die Einführung von SAP Fiori in SAP S/4HANA beschleunigt. Narendran coacht Teams zu Themen wie agiler Softwareentwicklung, SAPUI5 und SAP Fiori Elements und seit kurzem auch zum ABAP RESTful Application Programming Model. Bevor er zu SAP kam, arbeitete er als Berater bei IBM und trug zur kundenspezifischen Entwicklung in den Bereichen Reise- und Spesenabrechnung sowie Finanzen bei.
Content
Einleitung ... 17
1. Einführung ... 25
1.1 ... Was ist Clean SAPUI5? ... 26
1.2 ... Erste Schritte mit Clean SAPUI5 ... 28
1.3 ... Umgang mit Legacy-Code ... 30
1.4 ... Code automatisch prüfen ... 32
1.5 ... Wie hängt Clean SAPUI5 mit anderen Leitfäden zusammen? ... 32
1.6 ... Zusammenfassung ... 34
2. JavaScript und SAPUI5 ... 35
2.1 ... Funktionen von JavaScript ES6+ ... 36
2.2 ... TypeScript ... 119
2.3 ... Zusammenfassung ... 131
3. Projektstruktur ... 133
3.1 ... Komponenten in SAPUI5 ... 133
3.2 ... Wichtige Artefakte ... 136
3.3 ... Freestyle-Anwendungen ... 145
3.4 ... SAP Fiori Elements ... 147
3.5 ... Bibliotheksprojekte ... 155
3.6 ... Model-View-Controller-Assets ... 158
3.7 ... Zusammenfassung ... 161
4. Module und Klassen ... 163
4.1 ... Controller-Inflation ... 164
4.2 ... Modullebenszyklus ... 199
4.3 ... Wiederverwendbarkeit und Testbarkeit ... 208
4.4 ... Servicemodule vs. Klassenmodule ... 219
4.5 ... Zusammenfassung ... 226
5. Funktionen ... 229
5.1 ... Funktionsdefinition ... 229
5.2 ... Funktionsobjekt ... 231
5.3 ... Instanzmethoden ... 233
5.4 ... Event-Handler und Callbacks ... 236
5.5 ... Ausführungskontext der Callback-Funktion ... 236
5.6 ... Getter und Setter ... 238
5.7 ... Anonyme Funktionen ... 241
5.8 ... Funktionsparameter ... 243
5.9 ... Promises ... 258
5.10 ... Generatoren ... 265
5.11 ... Funktionskörper ... 266
5.12 ... Funktionen aufrufen ... 274
5.13 ... Closures ... 277
5.14 ... Zusammenfassung ... 278
6. Namensgebung ... 281
6.1 ... Beschreibende Namen ... 282
6.2 ... Domänenbegriffe ... 283
6.3 ... Entwurfsmuster ... 285
6.4 ... Konsistenz ... 285
6.5 ... Namen kürzen ... 287
6.6 ... Füllwörter ... 288
6.7 ... Casing ... 289
6.8 ... Klassen und Enums ... 291
6.9 ... Funktionen und Methoden ... 292
6.10 ... Variablen und Parameter ... 294
6.11 ... Private Elemente ... 300
6.12 ... Namensräume ... 302
6.13 ... Control-IDs ... 304
6.14 ... Ungarische Notation ... 305
6.15 ... Alternative Regeln ... 307
6.16 ... Zusammenfassung ... 309
7. Variablen und Literale ... 311
7.1 ... Variablen ... 311
7.2 ... Literale ... 316
7.3 ... Zusammenfassung ... 335
8. Kontrollfluss ... 337
8.1 ... Bedingungen ... 338
8.2 ... Schleifen ... 342
8.3 ... Bedingte Komplexität ... 345
8.4 ... Zusammenfassung ... 353
9. Fehlerbehandlung ... 355
9.1 ... »throw«- und »try/catch«-Anweisungen ... 355
9.2 ... Fehlerobjekte verwenden ... 357
9.3 ... Fehlerbehandlung über Meldungen ... 359
9.4 ... Fehlerbehandlung mit Controls ... 361
9.5 ... Best Practices für die Fehlerbehandlung ... 365
9.6 ... Zusammenfassung ... 369
10. Formatierung ... 371
10.1 ... Motivation ... 371
10.2 ... Vertikale und horizontale Formatierung ... 372
10.3 ... Textbereich ein- oder ausrücken ... 382
10.4 ... XML-Views ... 385
10.5 ... Weitere Hinweise ... 391
10.6 ... Formatierung für TypeScript in SAPUI5 ... 395
10.7 ... Erstellen und Pflegen eines Codestil-Leitfadens ... 407
10.8 ... Formatierungswerkzeuge ... 409
10.9 ... Zusammenfassung ... 415
11. Kommentare ... 417
11.1 ... Drücken Sie Ihre Absicht im Code aus ... 418
11.2 ... Das Gute: Kommentarplatzierung und -nutzung ... 419
11.3 ... Das Schlechte: Zu vermeidende oder umzustrukturierende Kommentare ... 431
11.4 ... Das Hässliche: Sonderkommentare ... 442
11.5 ... Zusammenfassung ... 445
12. Statische Codeprüfungen und Codemetriken ... 447
12.1 ... Linting ... 449
12.2 ... Codemetriken ... 469
12.3 ... Zusammenfassung ... 491
13. Testen ... 493
13.1 ... Prinzipien ... 494
13.2 ... Zu testender Code ... 508
13.3 ... Injektion ... 510
13.4 ... Testmethoden und Journeys ... 516
13.5 ... Testdaten ... 519
13.6 ... Assertions ... 523
13.7 ... Zusammenfassung ... 529
14. TypeScript und verwandte Technologien ... 531
14.1 ... TypeScript ... 531
14.2 ... UI5 Web Components ... 547
14.3 ... Fundamental Library ... 556
14.4 ... Zusammenfassung ... 560
15. Wie Sie Clean SAPUI5 umsetzen ... 561
15.1 ... Gemeinsames Verständnis der Teammitglieder ... 562
15.2 ... Kollektive Code Ownership ... 562
15.3 ... Clean Code Developer Initiative ... 564
15.4 ... Den Broken-Window-Effekt angehen ... 566
15.5 ... Code-Reviews und Lernen ... 570
15.6 ... Clean Code Advisor ... 574
15.7 ... Lerntechniken ... 574
15.8 ... Continuous Learning in funktionsübergreifenden Teams ... 579
15.9 ... Zusammenfassung ... 582
Die Autoren ... 583
Index ... 585