Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:modul:ffit:3-jahr:java:learningunits:lu08:a [2025/10/26 21:33] apeterde:modul:ffit:3-jahr:java:learningunits:lu08:a [2025/10/28 01:33] (aktuell) apeter
Zeile 1: Zeile 1:
-====== LU08a - Schnittstellendokumentation ======+====== LU08a - Vereinfachungen ======
  
-Da in grösseren Entwicklungsteams oft unterschiedliche Leute an Front- und Backend arbeitenist eine entsprechende Dokumentation der Schnittstellen (z. B. REST APIs) unabdingbar. +Nachfolgend werden einige Bibliotheken gezeigtum das Schreiben von Code zu vereinfachen.
-Dadurch wird sichergestellt, dass die Schnittstellen seitens Backend korrekt implementiert und seitens Frontend korrekt verwendet werden.+
  
-==== Swagger ==== +==== Project Lombok ====  
-Swagger (https://swagger.io/) kann genutzt werden, um die APIs in einer YAML-Datei zu spezifizierenDiese Datei kann abgesehen als Dokumentation auch genutzt werden, um ... + 
-  - Teile des Servers zu generieren +Project Lombok hilft Boilerplate-Code in Datenklassen auf ein Minimum zu reduzieren. 
-  Teile des Clients zu generieren + 
-  mit Postman die APIs zu testen+^ Klassisch ^ Lombok ^ 
 +| <WRAP> 
 +<code java> 
 +public class Person { 
 + 
 +    private Long id; 
 +    private String firstName; 
 +    private String lastName; 
 +    private int age; 
 + 
 +    // Standard-Konstruktor 
 +    public Person() { 
 +    } 
 + 
 +    // Konstruktor mit allen Feldern 
 +    public Person(Long id, String firstName, String lastName, int age) { 
 +        this.id = id; 
 +        this.firstName = firstName; 
 +        this.lastName = lastName; 
 +        this.age = age; 
 +    } 
 + 
 +    // Getter und Setter 
 +    public Long getId(
 +        return id; 
 +    } 
 + 
 +    public void setId(Long id) { 
 +        this.id = id; 
 +    } 
 + 
 +    public String getFirstName() { 
 +        return firstName; 
 +    } 
 + 
 +    public void setFirstName(String firstName) { 
 +        this.firstName = firstName; 
 +    } 
 + 
 +    public String getLastName() { 
 +        return lastName; 
 +    } 
 + 
 +    public void setLastName(String lastName) { 
 +        this.lastName = lastName; 
 +    } 
 + 
 +    public int getAge() { 
 +        return age; 
 +    } 
 + 
 +    public void setAge(int age) { 
 +        this.age = age; 
 +    } 
 +
 +</code>  
 +</WRAP> | <WRAP> 
 +<code java> 
 +import lombok.Getter; 
 +import lombok.Setter; 
 +import lombok.NoArgsConstructor; 
 +import lombok.AllArgsConstructor; 
 + 
 + 
 +@Getter                 // generiert Getter 
 +@Setter                 // generiert Setter 
 +@NoArgsConstructor      // generiert Standard-Konstruktor 
 +@AllArgsConstructor     // generiert Konstruktor mit allen Feldern 
 +public class Person { 
 +    private Long id; 
 +    private String firstName; 
 +    private String lastName; 
 +    private int age; 
 +
 +</code> 
 +</WRAP>
 + 
 +Mit ''@Data'' kann man sogar Getter, Setter, toString, equals und hashCode generieren lassen. 
 + 
 +Mehr dazu auf https://www.cegos-integrata.de/blog/it-blog/programmiersprachen-blog/project-lombok-java-klassen-effizient-gestalten
  
-Machen Sie im Accounting-App-Projekt einen cherry-pick auf '''TODO''' 
  • de/modul/ffit/3-jahr/java/learningunits/lu08/a.1761510782.txt.gz
  • Zuletzt geändert: 2025/10/26 21:33
  • von apeter