Επικοινωνήστε μαζί μας

Εξέλιξη Κομματιού

Ημέρα 1 — Σταθερές Βάσεις Python και Εργαλειοθήκη

Σύγχρονα Χαρακτηριστικά Python και Σύστημα Τύπων

  • Βασικές έννοιες τύπων, γενικευμένοι τύποι, Πρωτόκολλα και TypeGuard
  • Dataclasses, frozen dataclasses και επισκόπηση της βιβλιοθήκης attrs
  • Αντιστοίχιση προτύπων (PEP 634+) και ιδιωματική χρήση

Ποιότητα Κώδικα και Εργαλεία

  • Μορφοποιητές κώδικα και linters: black, isort, flake8, ruff
  • Στατικός έλεγχος τύπων με MyPy και pyright
  • Pre-commit hooks και ροές εργασίας προγραμματιστών

Διαχείριση Έργων και Πακετάρισμα

  • Διαχείριση εξαρτήσεων με Poetry και εικονικά περιβάλλοντα
  • Διάταξη πακέτου, σημεία εισόδου και βέλτιστες πρακτικές versioning
  • Δημιουργία και δημοσίευση πακέτων στο PyPI και σε ιδιωτικά μητρώα

Ημέρα 2 — Σχεδιαστικά Μοτίβα & Αρχιτεκτονικές Πρακτικές

Σχεδιαστικά Μοτίβα στην Python

  • Δημιουργικά μοτίβα: Factory, Builder, Singleton (Πυθωνικές παραλλαγές)
  • Δομικά μοτίβα: Adapter, Facade, Decorator, Proxy
  • Συμπεριφορικά μοτίβα: Strategy, Observer, Command

Αρχιτεκτονικές Αρχές

  • Οι αρχές SOLID εφαρμοσμένες σε κώδικα Python
  • Εξαγωνική/Clean Αρχιτεκτονική και όρια
  • Μοτίβα έγχυσης εξαρτήσεων και διαχείριση παραμετροποίησης

Αρθρωτότητα και Επαναχρησιμοποίηση

  • Σχεδίαση κώδικα βιβλιοθήκης έναντι κώδικα εφαρμογής
  • APIs, σταθερές διεπαφές και σημασιολογική εκδοχή (semantic versioning)
  • Διαχείριση ρυθμίσεων, μυστικών και περιβαλλοντικών παραμέτρων

Ημέρα 3 — Ταυτοχρονισμός, Ασύγχρονο IO και Απόδοση

Ταυτοχρονισμός και Παραλληλισμός

  • Βασικές αρχές νημάτων και επιπτώσεις του GIL
  • Multiprocessing και δεξαμενές διεργασιών για CPU-bound εργασίες
  • Πότε να χρησιμοποιούμε concurrent.futures έναντι multiprocessing

Ασύγχρονος Προγραμματισμός με asyncio

  • Μοτίβα async/await, βρόχος συμβάντων και ακύρωση
  • Σχεδίαση ασύγχρονων βιβλιοθηκών και διαλειτουργικότητα με σύγχρονο κώδικα
  • Μοτίβα για IO-bound εργασίες, αντίθλιψη (backpressure) και περιορισμός ρυθμού

Προφίλ και Βελτιστοποίηση

  • Εργαλεία προφίλ: cProfile, pyinstrument, perf, memory_profiler
  • Βελτιστοποίηση θερμών μονοπατιών και χρήση επεκτάσεων C/Numba όπου ενδείκνυται
  • Μέτρηση καθυστέρησης, διεκπεραιωτικής ικανότητας και χρήσης πόρων

Ημέρα 4 — Δοκιμές, CI/CD, Παρατηρησιμότητα και Ανάπτυξη

Στρατηγικές Δοκιμών και Αυτοματοποίηση

  • Unit testing και fixtures με pytest· οργάνωση δοκιμών
  • Δοκιμές βάσει ιδιοτήτων με Hypothesis και δοκιμές συμβολαίων
  • Mocking, monkeypatching και δοκιμές ασύγχρονου κώδικα

CI/CD, Έκδοση και Παρακολούθηση

  • Ενσωμάτωση δοκιμών και ποιοτικών φραγμών σε GitHub Actions/GitLab CI
  • Δημιουργία αναπαραγώγιμων containers με Docker και χτίσιμο πολλαπλών σταδίων
  • Παρατηρησιμότητα εφαρμογών: δομημένη καταγραφή, μετρικές Prometheus και ιχνηλάτηση

Ασφάλεια, Θωράκιση και Βέλτιστες Πρακτικές

  • Έλεγχος εξαρτήσεων, βασικές έννοιες SBOM και σάρωση ευπαθειών
  • Ασφαλείς πρακτικές κώδικα για επικύρωση εισόδου και διαχείριση μυστικών
  • Θωράκιση χρόνου εκτέλεσης: περιορισμοί πόρων, δικαιώματα χρήστη και ασφάλεια container

Κορυφαία Εργασία & Ανασκόπηση

  • Ομαδικό εργαστήριο: σχεδίαση και υλοποίηση μιας μικρής υπηρεσίας με χρήση μοτίβων από το σεμινάριο
  • Δοκιμές, έλεγχος τύπων, πακετάρισμα και αγωγός CI για το έργο
  • Τελική ανασκόπηση, κριτική κώδικα και σχέδιο εφαρμόσιμων βελτιώσεων

Σύνοψη και Επόμενα Βήματα

Απαιτήσεις

  • Ισχυρή εμπειρία προγραμματισμού Python σε μεσαίο επίπεδο
  • Εξοικείωση με τον αντικειμενοστραφή προγραμματισμό και τις βασικές δοκιμές
  • Εμπειρία στη χρήση γραμμής εντολών και Git

Ακροατήριο

  • Ανώτεροι προγραμματιστές Python
  • Μηχανικοί λογισμικού υπεύθυνοι για ποιότητα κώδικα Python και αρχιτεκτονική
  • Τεχνικοί επικεφαλής και μηχανικοί MLOps/DevOps που εργάζονται με κώδικα Python
 28 Ώρες

Αριθμός συμμετέχοντων


Τιμή ανά συμμετέχοντα

Σχόλια (2)

Εφεξής Μαθήματα

Σχετικές Κατηγορίες