Grundlagen der Softwareentwicklung

Fallstudie: Software in Python entwickeln

Mark Pedigo

Principal Data Scientist

Roadmap

Roadmap, die zeigt, welche Teile des Projekts fertig sind und welche wir starten.

Fallstudie: Software in Python entwickeln

Modularität

Modularität: Zentrales Prinzip der Softwareentwicklung

  • Klare, unabhängige Module
  • Fokussierte, spezifische Funktionalität
  • Klare, gut definierte Schnittstellen
  • Entwicklung, Tests, Wartung getrennt
Fallstudie: Software in Python entwickeln

Das DRY-Prinzip

„Don't Repeat Yourself": Zentrales Prinzip der Softwareentwicklung

  • Wiederholungen minimieren
  • Wiederverwendbare Komponenten, Klassen
  • Einmal schreiben, breit nutzen
  • Sauberer, wartbarer, weniger fehleranfälliger Code
Fallstudie: Software in Python entwickeln

Packaging

Packaging: Zentrales Prinzip der Softwareentwicklung

  • Strukturierte Ordnerhierarchie
  • Code effizient verwalten und strukturieren
  • Die Datei __init__.py zur Modulinitialisierung
Fallstudie: Software in Python entwickeln

Ein Paket erstellen

  • Minimalstruktur: Paketordner + Python-Datei
  • Paket: Ordner + __init__.py-Datei
  • Kurze, kleingeschriebene Verzeichnisnamen mit Unterstrich
  • __init__.py: Kennzeichnet Ordner als Paket
Fallstudie: Software in Python entwickeln

Absolute und relative Importe

  • Angenommen, du hast folgende Projektstruktur
project \
   |--- package
   |    |--- module1.py
   |    |--- module2.py
   |--- main.py
  • Absoluter Import: Voller Pfad ab Root
    • from package import module1
    • from package.module1 import function
  • Relativer Import: Pfad relativ zum aktuellen Ort (. = aktuell, .. = übergeordnet)
    • from . import module1
    • from .module1 import function
  • Absolut: Klar, aber weniger portabel
  • Relativ: Flexibel, kontextabhängig
Fallstudie: Software in Python entwickeln

Lass uns üben!

Fallstudie: Software in Python entwickeln

Preparing Video For Download...