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

Ημέρα 1 — Αξιόπιστες Βάσεις και Εργαλεία του Python

Σύγχρονες Προσδιορισμένες Δυνατότητες του Python και Τύποι

  • Βασικά στοιχεία των τύπων, generics, Protocols και TypeGuard
  • Επισκόπηση dataclasses, frozen dataclasses και attrs
  • Pattern matching (PEP 634+) και ευφυή χρήση

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

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

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

  • Διαχείριση εξαρτήσεων με Poetry και virtual environments
  • Λογισμός πακέτου, σημεία είσοδου και αρχές διαχείρισης έκδοσης
  • Κατασκευή και δημοσίευση πακέτων στο PyPI και ιδιωτικά ρεγιστράρια

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

Μοτίβα Σχεδιασμού στο Python

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

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

  • SOLID αρχές εφαρμοσμένες σε κωδικοπληξίες Python
  • Hexagonal/Clean Architecture και ορία
  • Μοτίβα διαχείρισης εξαρτήσεων και διαχείριση ρυθμίσεων

Επανάληψη και Αναβίωση

  • Σχεδιασμός κώδικα βιβλιοθήκης vs εφαρμογής
  • APIs, σταθερά διεπαφές και semantikή διαχείριση έκδοσης
  • Χειρισμός ρυθμίσεων, secrets και περιβαλλοντικών παραμέτρων

Ημέρα 3 — Συνυπηρέτηση, Async IO και Απόδοση

Συνυπηρέτηση και Παράλληλη Εκτέλεση

  • Βασικά στοιχεία threading και επιπλέον επιπέδων GIL
  • Παράλληλη εκτέλεση με multiprocessing και process pools για CPU-bound tasks
  • Όταν να χρησιμοποιήσετε concurrent.futures vs multiprocessing

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

  • Async/await patterns, event loop και ακύρωση
  • Σχεδιασμός άσυγχρωνων βιβλιοθηκών και συμβατότητα με συγχρόνον κώδικα
  • IO-bound patterns, backpressure και rate limiting

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

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

Ημέρα 4 — Δοκιμαστικά Πειράματα, CI/CD, Επιβλέψη και Κατάθεση

Στρατηγικές Δοκιμαστικών Πειραμάτων και Αυτομάτων Πειραμάτων

  • Unit testing και fixtures με pytest; ταξινόμηση πειραμάτων
  • Property-based testing με Hypothesis και contract testing
  • Mocking, monkeypatching και δοκιμαστικά άσυγχρωνων πειραμάτων

CI/CD, Δημοσίευση και Μόνιτορινγκ

  • Ενσωμάτωση πειραμάτων και πύλων ποιότητας σε GitHub Actions/GitLab CI
  • Κατασκευή αναπαραγωγίμενων containers με Docker και multi-stage builds
  • Εφαρμογές επιβλέψης: structured logging, Prometheus metrics και tracing

Ασφάλεια, Προστασία και Καλές Πρακτικές

  • Επιθεώρηση εξαρτήσεων, βασικά SBOM και scanning των αδυναμιών
  • Ασφαλείς πρακτικές προγραμματισμού για επαλήθευση δεδομένων και διαχείριση secrets
  • Πρόσθετη προστασία: όρια πόρων, user rights και ασφάλεια containers

Συμπερασματική Εργασία & Εξέταση

  • Εργασία τ: σχεδιασμός και εφαρμογή μικρής υπηρεσίας χρησιμοποιώντας παραδείγματα από το μάθημα
  • Δοκιμαστικά, type-checking, packaging και CI pipeline για το έργο
  • Τελική εξέταση, κριτική κώδικα και δραστηριότητα που παρέχει βελτιωμένο σχέδιο

Περίληψη και Επόμενες Βήματα

Απαιτήσεις

  • Έντονη εμπειρία προγραμματισμού σε Python ανάμεσα στο μέσο και το υψηλό επίπεδο
  • Πειθαρχημένος με προγραμματισμό αντικειμενοστραφώς και βασική δοκιμασία
  • Εμπειρία χρήσης του command line και Git

Συντονισμός

  • Υψηλού επιπέδου προγραμματιστές Python
  • Software engineers υπεύθυνοι για την ποιότητα κώδικα και την αρχιτεκτονική σε Python
  • Τεχνικοί ηγέτες και MLOps/DevOps engineers που εργάζονται με βάσεις δεδομένων Python
 28 Ώρες

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


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

Σχόλια (5)

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

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