Développement en Go - cours 130 000 roubles. de GeekBrains, formation 15 mois, Date: 10 juin 2023.
Miscellanea / / November 29, 2023
Pour les débutants
Golang est excellent comme premier langage de programmation. Il a une syntaxe simple et une courte documentation. Vous n'avez pas besoin d'une formation technique pour le maîtriser.
Développeurs avec expérience
De nombreuses entreprises se tournent vers Go et recherchent des professionnels bilingues. Si vous connaissez PHP, C/C++, JavaScript, Ruby ou d'autres langages, vous pouvez gagner plus.
Bases de la programmation
Programme, variables et types de données
• Organigrammes et branches
• Cycles
• Les fonctions
• Tableaux
HTML/CSS. Cours interactif
- Familiarisez-vous avec les technologies Web et créez un site Web simple.
Concepts de base en développement Web
• Bases du langage de balisage de documents HTML
• Bases du langage de style de document CSS
• Pseudo-classes et pseudo-éléments, disposition des tableaux
• Formation d'un modèle de bloc, disposition des blocs
• Travailler avec une maquette de conception au format PSD
• Balisage du site Web et introduction à Bootstrap
• Normes Web et outils de support
Cours vidéo de base sur Git
- Familiarisez-vous avec Git, un système de contrôle de version que les programmeurs utilisent activement dans des projets éducatifs et commerciaux.
Introduction à Git
• Installation et configuration de Git
• Commandes de base du terminal
• Travailler avec des référentiels
• Gestion des fichiers du référentiel
• Historique des changements
• Travailler avec des branches de référentiel
• Publication d'un référentiel
• Fusions de succursales
• Gestion des versions
• Créer une demande de tirage
• Opérations complexes
• Travailler avec les référentiels Fork
Cours de base Javascript
- Apprenez la programmation JavaScript pour créer des pages Web simples.
Bases du langage JavaScript
• Opérateurs de base
• Boucles, tableaux, structures de données
• Objets
• Introduction au DOM
• Gestion des événements
• Cours d'atelier
• Fonctions anonymes, fermetures
Linux. Poste de travail
- Les applications Backend Go sont souvent déployées sous Linux. Vous vous familiariserez avec les fonctionnalités de Linux et pourrez développer plus efficacement.
Installation du système d'exploitation Linux
• Personnalisation de l'interface de ligne de commande
• Gestion des utilisateurs et des groupes
• Processus, chargement du système d'exploitation
• Périphérique du système de fichiers. Fichier et répertoire
• Introduction aux scripts bash. crontab et sur les planificateurs de tâches
• Gérer les packages et les référentiels. Bases de la sécurité réseau
• Introduction à Docker
Aller. Niveau 1
- Familiarisez-vous avec les outils de base et les principaux types de données de Go et apprenez à créer des applications console simples.
Caractéristiques et historique du langage Go. Travailler avec les bases du terrain de jeu et de la chaîne d'outils.
• Types de données de base. Bases du travail avec le sous-système d'E/S du système d'exploitation. Bases de la structuration des applications Go
• Opérateurs et structures de contrôle, fonctions de base
• Types de données complexes: tableaux, tranches et cartes
• Types de données complexes: structures, fonctions et méthodes
• Types de données complexes: pointeurs
•Interfaces. Les erreurs. Bases de la gestion des erreurs
• Notions de base sur la configuration des applications
• Travailler avec le système de fichiers
• Fondamentaux des tests d'applications Go
• Consultation finale sur le cours. Réponses aux questions
Aller. Niveau 2
- Familiarisez-vous avec les options de mise en œuvre du calcul parallèle dans un modèle compétitif, apprenez à gérer les dépendances et à écrire des applications asynchrones simples.
Génération et gestion avancées des erreurs et travail en panique. Appels de fonction différés
• Compilation croisée dans Go et plongée plus approfondie dans la chaîne d'outils
• Travailler avec des dépendances externes
• Concurrence, partie 1. Goroutines et chaînes
• Concurrence, partie 2. Bases des types de données du package de synchronisation
• Concurrence, partie 3. Planificateur Goroutine, condition de course et vérification de sa présence
• Réflexion et génération de code dans le langage Go.
• Bases du travail avec la bibliothèque standard Go. Préparation du projet de cours
Meilleures pratiques pour le développement d’applications Go
- Familiarisez-vous avec les pratiques de développement modernes dans Go et apprenez à les mettre en œuvre dans vos projets. Ils sont utiles pour développer n'importe quelle application: des simples utilitaires aux services très chargés.
Gestion des erreurs provenant de services tiers et des signaux du système d'exploitation
• Journalisation
• Pratiques de tests avancées
• Consultation
• Principes de structuration des applications Go
• Linters: niveau avancé
• Créez des applications et automatisez les actions répétitives
Développement back-end. Niveau 1
- Apprenez à développer des applications en Go, à concevoir et à supporter leur backend. A la fin du cours, créez un projet - un raccourcisseur de liens.
Bases du réseautage
• Conception d'API HTTP et RESTful
• Implémentation et tests de gestionnaires HTTP
• Sélection d'un routeur et de bibliothèques. Intergiciel. Contexte de la demande.
• Pratique, partie 1. Implémentation du serveur
• Pratique, partie 2. Implémentation d'une application Web
• Fonctionnalités de dockérisation des applications Go.
• Créez et déployez l'application. CI/CD
Base de données
- Vous apprendrez comment fonctionnent les bases de données relationnelles, vous pourrez créer les vôtres, modifier leur structure et gérer les données en utilisant SQL.
Introduction à la théorie des bases de données relationnelles
• Concepts de base de la structure de la base de données
• Définition des données, opérations de base sur les données
• Échantillonnage de données, agrégation de données
• Requêtes imbriquées et UNION
• REJOINDRE
• Capacités SQL avancées
• Fonctions de fenêtres, index, travail dans un client graphique
Postgres pour les développeurs Go
- Essayez-vous en tant qu'administrateur de base de données, apprenez à travailler avec le système de gestion PostgreSQL et à l'implémenter dans vos projets.
Prise en main de PostgreSQL: outils de base, comparaison avec d'autres SGBD
• Travailler avec la structure de la base de données, CTE, analyser les exigences lors de la recherche de données
• Analyse de l'exécution des requêtes et indexation des données
• Utiliser PostgreSQL depuis une application Go
• Structure de l'application, tests, migrations, ORM
• Niveaux d'isolement, concurrence, nettoyage, réplication
Observabilité et optimisation
- Apprenez à analyser les performances des programmes et à les optimiser à l'aide du profilage, du traçage et de la mise en cache.
Surveillance + alerte
• Journalisation + gestion des erreurs
• Profilage et traçage
• Optimisation et mise en cache
Développement back-end. Niveau 2
- Apprenez à déployer et à gérer des applications dans Kubernetes, à vous familiariser avec divers protocoles API et principes de conception de microservices.
Principes d'interaction entre microservices
• JSON-RPC et gRPC
• GraphQL
• Exécution d'applications Go sur Kubernetes. Configuration Surveillance. Débogage.
• Cluster Kubernetes
• Files d'attente
• Tests fonctionnels/BDD
• Accédez aux bases de la sécurité des applications
Se préparer à un entretien avec un développeur Go
- Créer un CV attractif et préparer un entretien technique. Vous pouvez créer votre propre portefeuille GitHub de vos projets.
Créer un portefeuille GitHub
• Compétences générales d'un développeur Go
• Passer un entretien technique
• Consultation de portefeuille
Développement en équipe d'un projet de microservice
- Vous apprendrez à mener du développement dans un environnement en évolution rapide: apprenez à travailler avec des tâches importantes des clients, à les démonter en parties et à les hiérarchiser correctement. Implémentez vos propres microservices dans le cadre d’un travail d’équipe.
Collaborer à la conception des services. RFC et documents de conception
• Pratiques de collaboration avec Git. Révision des codes
• Tests conjoints et déploiement de services
• Responsabilité du développeur. Listes de contrôle de préparation à la production
• Pratique du service de garde. Incidents et autopsies
• Trois consultations sur votre projet
Sergueï Gontchar
16.07.2022 G.
Maintenant, j'étudie pour devenir développeur Go - dans l'ensemble, ce n'est pas mal. Jusqu'à présent, je ne regrette pas d'avoir acheté leurs cours. Les programmes sont intéressants et utiles, mais les webinaires de 2 heures ne sont pas une chose très agréable. Je préférerais des vidéos préenregistrées de 20 à 30 minutes avec des tâches. Parfois, dans certains cours, vous pouvez ressentir une forte augmentation de la difficulté des sujets et des devoirs. Vous suivez les cours, faites les devoirs, tout semble clair...