Επάγγελμα προγραμματιστής Backend on Go - μάθημα 105.600 τρίψιμο. από το SkillFactory, εκπαίδευση 12 μηνών, Ημερομηνία 15 Φεβρουαρίου 2023.
μικροαντικείμενα / / November 29, 2023
Ο προγραμματιστής Backend στο Go είναι ένα τεχνικά φιλόδοξο και περιζήτητο επάγγελμα.
20 ώρες διαδραστικά διαδικτυακά σεμινάρια 100 προβλήματα σε αλγόριθμους 50 γραπτά προγράμματα
Basics of Go and Computer Science 1 μπλοκ 4,5 μηνών
Εισαγωγικό μπλοκ
• Βασικές έννοιες στον τομέα της πληροφορικής
• Ταξινόμηση γλωσσών προγραμματισμού
• Σύγχρονες τεχνολογίες και λειτουργία Διαδικτύου
• Αρχιτεκτονική υπολογιστών και λειτουργικά συστήματα
Go Basics Language
• Εγκατάσταση περιβάλλοντος, μεταγλώττιση και εκτέλεση προγραμμάτων Go, βασική σύνταξη (πακέτα, μεταβλητές και τύποι δεδομένων, σταθερές, εισαγωγή σε συμβολοσειρές)
• Κλαδιά, κύκλοι
• Λειτουργίες και μέθοδοι, δομές
• Διαχείριση σφαλμάτων και πανικού, διεπαφές, αναδρομή
• Πίνακες, λεξικά, φέτες, συμβολοσειρές, ρούνες και κομμάτια byte
• + 1 εβδομάδα εξάσκησης
Αλγόριθμοι και δομή δεδομένων στο Go
• Εισαγωγή, πολυπλοκότητα αλγορίθμων και σημείωση O
• Πίνακας, λίστα, ουρά, στοίβα. Αναπαράσταση στη μνήμη
• Αλγόριθμοι ταξινόμησης
• Δέντρα, γραφήματα, αλγόριθμοι αναζήτησης
• Πίνακες κατακερματισμού, χάρτες κατακερματισμού, συναρτήσεις κατακερματισμού
Βασικά στοιχεία πολλαπλών νημάτων
• Η έννοια της διαδικασίας και του νήματος στο λειτουργικό σύστημα
• Γορουτίνες και βασικός συγχρονισμός
• Συγχρονισμός με χρήση ατομικών και καναλιών
• Ομάδα αναμονής, βασικά μοτίβα για τη χρήση γορουτίνων
Υλοποίηση έργου: συναρμολόγηση ενός αγωγού επεξεργασίας δεδομένων
Εργαλεία προγραμματιστή 2 μπλοκ 4,5 μηνών
Βασικά Linux
• Εγκατάσταση Linux, εργασία με το γραφικό κέλυφος
• Διαχείριση χρηστών, εργασία με αρχεία, διαδικασίες
• Διεπαφές δικτύου Linux
Παρουσιάζοντας το Git
• Βασικά συστήματα ελέγχου έκδοσης, αρχικοποίηση ενός αποθετηρίου, συγχρονισμός αλλαγών, εγγραφή αλλαγών στο αποθετήριο
• Διακλάδωση, Git Flow
Λιμενεργάτης
• Βασικά Docker, Εκτέλεση εφαρμογών σε κοντέινερ
• + 1 εβδομάδα εξάσκησης σε GIT, Docker και Linux
Βάσεις δεδομένων και SQL
• Σχεσιακές βάσεις δεδομένων, σχεδιασμός βάσεων δεδομένων
• Γλώσσα SQL, Συναλλαγές
• Ευρετήρια, ενεργοποιητές, προβολές, αποθηκευμένες διαδικασίες
• Εργασία με βάση δεδομένων SQL στο Go
NoSql Βάσεις Δεδομένων
• Βάσεις δεδομένων εγγράφων, σε αντίθεση με την SQL
• Εισαγωγή στα Mongo DB και Redis
• + 1 εβδομάδα πρακτικής εργασίας με βάσεις δεδομένων
Βαθιά βουτιά στο GO
• Ενότητες, προφίλ, εντοπισμός σφαλμάτων
• Δοκιμές
• Εισόδου-εξόδου. Κανονικές εκφράσεις
• Εφαρμογές δικτύου
• Εφαρμογές Ιστού
Υλοποίηση έργου: ανάπτυξη αθροιστή ειδήσεων
Αρχιτεκτονική, DevOps, ουρές 3 μπλοκ 4 εβδομάδες
Βασικά Αρχιτεκτονικά
• Αρχιτεκτονικές αρχές
• Σχεδιαστικά πρότυπα
• Τρόποι παράδοσης αιτήσεων
• Ουρές μηνυμάτων
Τελικό έργο 3 εβδομάδες
Διαίρεση ενός μονόλιθου σε μικροϋπηρεσίες
- Σκοπός εξάσκησης:
Μάθετε να διαιρείτε ή να «κόβετε» μια μονολιθική εφαρμογή - έναν προηγουμένως ανεπτυγμένο συσσωρευτή ειδήσεων - σε τρεις μικροϋπηρεσίες με τις τροποποιήσεις τους.
- Αποτελέσματα έργου για μαθητές:
Ανάπτυξη τριών microservices: news aggregator, API Gateway και υπηρεσία εποπτείας σχολίων
Σύγκριση μονολιθικής και μικροϋπηρεσιακής αρχιτεκτονικής στην πράξη
Αναπλήρωση του χαρτοφυλακίου στο GitHub με ένα ολοκληρωμένο έργο