Προγραμματιστής Python - μάθημα 35.000 τρίψτε. από Slurm, εκπαίδευση, Ημερομηνία: 30 Νοεμβρίου 2023.
μικροαντικείμενα / / December 03, 2023
Πρόγραμμα
276 ώρες θεωρίας
37 ώρες προπόνηση
2 χρόνια πρόσβαση σε 14 θέματα
Εισαγωγική διάλεξη
Ας σας παρουσιάσουμε τον ομιλητή χρησιμοποιώντας το παράδειγμα μιας εισαγωγικής διάλεξης στο εργαστήριο.
Εισαγωγή
Εισαγωγή στο μάθημα
Πρόσβαση στο αποθετήριο μαθημάτων
Πριν ξεκινήσεις
Στόχος: διαμόρφωση με Git, γνώση εναλλακτικών και κατανόηση βασικών όρων
Θεωρία (0,8 ακαδημ. η):
Δημιουργία λογαριασμού και ρύθμιση Github.
Ρύθμιση SSH.
Βασικές γνώσεις για τη μνήμη και τον επεξεργαστή.
Μια ιστορία για μεταγλωττιστές και διερμηνείς.
Εξάσκηση (1 ακαδημ. η):
Δημιουργήστε ένα νέο αποθετήριο.
Περιγράψτε τον σκοπό του στο READ.ME.
Σπρώξτε στο Github.
Κάντε τις ρυθμίσεις ορατότητας του αποθετηρίου.
Βασικά
Στόχος: Πλήρως διαμορφωμένη υποδομή (διαχείριση εξαρτήσεων, έλεγχος έκδοσης, εικονικά περιβάλλοντα).
Θεωρία (0,7 ακαδημ. η):
Τα πρώτα προγράμματα από το IDE ή από ένα αρχείο.
IDE: Κώδικας Visual Studio, πλεονεκτήματα και προσαρμογή, εναλλακτικές λύσεις.
PyCharm - Ιδέα.
PEP8.
Πρότυπα κωδικών λιπαντικών.
Πρακτική (14 ακαδημ. η):
Κατεβάστε το έργο από το Github.
Κάντε VE μέσω PIPENV.
Εγκαταστήστε εξαρτήσεις και εκτελέστε.
Χρησιμοποιήστε το Poetry αντί για το PIPENV, χρησιμοποιήστε το μέσα στο IDE.
Αυτόματος έλεγχος με λίτρα.
Γλώσσα προγραμματισμού Python
Στόχος: μάθετε να γράφετε απλά προγράμματα, να επιλύετε βασικά προβλήματα και να χρησιμοποιείτε σωστά τους τύπους δεδομένων.
Θεωρία (1,6 ακαδημ. η):
Μεταβλητές και ενσωματωμένοι τύποι.
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ.
Συμβολοσειρές και μορφοποίηση.
Λεξικά και σύνολα.
Κατανοήσεις, λάμδα, φίλτρο, χάρτης, συλλογές.
Πρακτική (12 ακαδημ. η):
Τροποποίηση παραδειγμάτων.
Εργασία με βιβλιοθήκες: σύνδεση, χρήση συναρτήσεων.
Αναδρομική διέλευση λεξικών και διέλευση γραφημάτων, σύνθετο φιλτράρισμα, ένθετα στοιχεία.
Επικύρωση βραχίονα.
Δοκιμές
Στόχος: κατανοήστε τους όρους, μάθετε να γράφετε δοκιμές μονάδας και καλύπτετε πλήρως τις λύσεις σας με τεστ.
Θεωρία (0,6 ακαδημ. η):
Βασικά στοιχεία δοκιμής: unittest, pytest, coverage.
Πρακτική (14 ακαδημ. η):
Καλύψτε προηγούμενες εργασίες που είχαν ξεκινήσει στο Github με δοκιμές και ελέγξτε τις μέσω της Κάλυψης.
Ρυθμίστε ενέργειες Github για δοκιμές και Κάλυψη.
Αλληλεπίδραση με το ΛΣ
Στόχος: κατανόηση τυπικών θεμάτων και γενικών αρχών εργασίας με το δίκτυο.
Θεωρία (1,5 ακαδημ. η):
Τι είναι OS, διεργασία και νήμα, GIL, Linux\POSIX, σύστημα αρχείων.
Εργασία με το δίκτυο στο λειτουργικό σύστημα.
Πρακτική (14 ακαδημ. η):
Επαναλάβετε και τροποποιήστε τις περιπτώσεις χρήσης.
Εργασία με μια γεννήτρια τυχαίων συμβολοσειρών σε ένα αρχείο.
Ανάγνωση αρχείου, ταξινόμηση γραμμών, σύνταξη αρχείου.
Επιτάχυνση της γεννήτριας χορδών με χρήση πολλαπλής επεξεργασίας.
Επιτραπέζιος υπολογιστής – PyQt
Στόχος: κατανοήστε τυπικά ζητήματα, μάθετε πώς να χρησιμοποιείτε την κληρονομικότητα και γράφετε ένα απλό πρόγραμμα σε Qt.
Θεωρία (3.4 ακαδημ. η):
OOP βασικά: κληρονομικότητα, πολυορφισμός, MRO.
OOP στην Python.
Γραφικά στοιχεία PyQt.
Ανασκόπηση τεχνολογίας QML: σύγκριση με JavaScript, συζήτηση MVC, διαχωρισμός frontend και backend.
Πρακτική (20 ακαδημ. η):
Επαναλάβετε και τροποποιήστε τις περιπτώσεις χρήσης.
Γράψτε μια απλή εφαρμογή 6-10 στοιχείων.
Ξαναγράψτε το προηγούμενο παράδειγμα από γραφικά στοιχεία σε QML.
Επιφάνεια εργασίας PyGame
Στόχος: μάθουν να χρησιμοποιούν το pygame και να εδραιώνουν προηγούμενες γνώσεις.
Θεωρία (0,7 ακαδημ. η):
Αναζητήστε παραδείγματα στο Github.
Εκκίνηση, επίδειξη χωρίς ανάλυση κώδικα.
Πρακτική (3 ακαδημ. η):
Επεκτείνετε τη λειτουργικότητα αυτού που γράψατε.
Γράψτε ένα μενού με κουμπιά και τον δικό σας δρομέα.
Βάση δεδομένων
Στόχος: κατανοήστε τι είναι η SQL, ποιοι τύποι αποθήκευσης και εργαλεία υπάρχουν.
Θεωρία (0,9 ακαδημ. η):
Βασικά στοιχεία SQL.
Τύποι αποθήκευσης και βάσεις δεδομένων.
Ανασκόπηση των πιο δημοφιλών εργαλείων.
Γενικές πληροφορίες ORM, CRUD.
Ενεργή εγγραφή έναντι χαρτογράφησης δεδομένων.
Πρακτική (2 ακαδημ. η):
Τροποποιήστε τον κώδικα από το μάθημα.
Συνδυάστε τα αποτελέσματα της πρακτικής από αυτήν την ενότητα και από το μάθημα σχετικά με την εργασία με το δίκτυο.
Γράφοντας ένα bot
Στόχος: κατανοήστε πώς λειτουργούν τα bots και τι είναι το API.
Θεωρία (0,5 ακαδημ. η):
Τι είναι το API; Διαβάστε την τεκμηρίωση.
Κατεβάστε τη βιβλιοθήκη και δοκιμάστε ένα απλό παράδειγμα.
Γράφουμε το δικό μας απλό bot, όπως ένα αίτημα από το YouTube ή τη Wikipedia.
Πρακτική (15 ακαδημ. η):
Συνδυάστε το αποτέλεσμα της προηγούμενης πρακτικής με το bot.
Γράψτε το δικό σας bot με κουμπιά στο Telegram.
Βασικά στοιχεία του WEB
Στόχος: να κατανοήσετε πώς γράφονται οι ιστότοποι και οι υπηρεσίες ιστού, ποια πρωτόκολλα και εργαλεία σχεδίασης API είναι διαθέσιμα.
Θεωρία (0,8 ακαδημ. η):
Τι είναι το web και με τι τρώγεται;
Η θέση της Python στον Ιστό, μια επισκόπηση των πλαισίων.
Πώς να σχεδιάσετε: ApiFirst, στυλ σχεδίασης, OpenAPI.
ΣΑΠΟΥΝΙ, RPC.
Πρακτική (6 ακαδημ. η):
Εργασία στο τελικό έργο.
Django
Στόχος: μάθετε να γράφετε ένα backend στο Django.
Θεωρία (0,9 ακαδημ. η):
Βασικά στοιχεία του Django: σύνδεση μιας βάσης δεδομένων, ρύθμιση του Hello World.
Σχεδιάζουμε ένα API για το backend.
Συνδέουμε το DRF.
Δημιουργήστε έναν ελεγκτή για αναρτήσεις.
Πρακτική (15 ακαδημ. η):
Γράψτε έναν ελεγκτή για σχόλια και δοκιμές για ελεγκτές.
Προσθέστε ένα σύστημα διαλόγων (απαντήσεων) στα σχόλια.
Προσθήκη εξουσιοδότησης.
Περαιτέρω ανάπτυξη
Μάθημα "Git για αρχάριους" - μόνο στο τιμολόγιο "Επανεκπαίδευση".
Απαιτούμενη ελάχιστη θεωρία (3 ακαδημαϊκά. η) και 67 πρακτικές εργασίες (32 ακαδημαϊκές. η):
Φιλοσοφία ανάπτυξης ομάδας.
Δημοφιλείς ιστότοποι φιλοξενίας ανάπτυξης λογισμικού.
Βασικά στοιχεία Git.
Πρακτικές χρήσης του Git σε ομάδες.
Διαμόρφωση Personal Git για άνετη εργασία.
Μάθημα "Βασική διαχείριση διακομιστών Linux" - μόνο στο τιμολόγιο "Επανεκπαίδευση".
Γνώσεις και δεξιότητες που είναι απαραίτητες για να μάθετε πώς να χρησιμοποιείτε το λειτουργικό σύστημα Linux (7 ακαδημαϊκό. η θεωρία και 40 ακαδημαϊκό. ώρες πρακτικής):
Εισαγωγή.
Πώς να συνδεθείτε στον διακομιστή μέσω SSH.
Βασικά στοιχεία εργασίας με το λειτουργικό σύστημα (άδειες, εντολές). Πώς να εργαστείτε με τον διακομιστή. Πώς να αντιγράψετε αρχεία, φακέλους.
Ανάλυση υπηρεσιών συστήματος. Πώς λειτουργεί το Linux.
Βασικά στοιχεία δικτύου.
Πώς να εγκαταστήσετε το απαραίτητο λογισμικό στον διακομιστή.
Πώς να αναπτύξετε με μη αυτόματο τρόπο τον ιστότοπό σας.
Virtualization, εικονικές μηχανές και τα χαρακτηριστικά τους.
Πιθανά προβλήματα διακομιστή, η διάγνωση και οι λύσεις τους.
Βελτιστοποίηση διακομιστή.
Βασικά στοιχεία για το Docker containerization.
Εργασία με το Git.
Μάθημα "Docker: από το μηδέν στον ήρωα" - μόνο στο τιμολόγιο "Επανεκπαίδευση".
Μέγιστη πρακτική γνώση για το Docker. Από τα βασικά μέχρι την εκτέλεση μιας εφαρμογής στο Docker και την εργασία με εικόνες σε προχωρημένο επίπεδο (15 ακαδημαϊκά. η. θεωρία και 88 ακαδημαϊκό. η. πρακτικές):
Εισαγωγή στο Docker.
Βασικές εντολές και αφαιρέσεις Docker. CLI. Γενικό σχήμα του τρόπου λειτουργίας του Docker.
Docker και αποθήκευση δεδομένων.
Αρχείο Docker-compose.
Docker και CI/CD.
Δικτύωση στο Docker.
Ντόκερ κάτω από την κουκούλα.
Δυνατότητες χρήσης του Docker με διάφορες γλώσσες προγραμματισμού, συμπεριλαμβανομένων των μεταγλωττισμένων γλωσσών.
Καταγραφή και παρακολούθηση εμπορευματοκιβωτίων Docker.
Προηγμένη εργασία με εικόνες. Ρύθμιση του δικού σας Μητρώου.
Ασφάλεια στο Docker.
Ανάλογα του Docker.
Ενορχήστρωση Docker. Kubernetes, Docker SWARM. Διαφορές, χαρακτηριστικά, γιατί χρειάζεται.