Sviluppo nel corso Go 130.000 rubli. da GeekBrains, formazione 15 mesi, data: 10 giugno 2023.
Miscellanea / / November 29, 2023
Per principianti
Golang è ottimo come primo linguaggio di programmazione. Ha una sintassi semplice e una breve documentazione. Non è necessario un background tecnico per padroneggiarlo.
Sviluppatori con esperienza
Molte aziende stanno passando a Go e cercano professionisti bilingui. Se conosci PHP, C/C++, JavaScript, Ruby o altri linguaggi, puoi guadagnare di più.
Nozioni di base sulla programmazione
Programma, variabili e tipi di dati
• Diagrammi di flusso e rami
• Cicli
• Funzioni
• Array
HTML/CSS. Corso interattivo
- Acquisire familiarità con le tecnologie web e creare un semplice sito web.
Concetti di base nello sviluppo web
• Nozioni di base sul linguaggio di markup dei documenti HTML
• Nozioni di base sul linguaggio di stilizzazione dei documenti CSS
• Pseudoclassi e pseudoelementi, impaginazione delle tabelle
• Formazione di un modello a blocchi, layout a blocchi
• Lavora con mockup di progettazione in formato PSD
• Markup del sito web e introduzione a Bootstrap
• Standard Web e strumenti di supporto
Videocorso base su Git
- Conoscere Git, un sistema di controllo della versione che i programmatori utilizzano attivamente in progetti educativi e commerciali.
Introduzione a Git
• Installazione e configurazione di Git
• Comandi terminali di base
• Lavorare con i repository
• Gestione dei file del repository
• Storia dei cambiamenti
• Lavorare con i rami del repository
• Pubblicazione di un repository
• Fusioni di filiali
• Gestione delle versioni
• Creare una richiesta pull
• Operazioni complesse
• Lavorare con i repository Fork
Corso base di Javascript
- Impara la programmazione JavaScript per creare semplici pagine web.
Nozioni di base sul linguaggio JavaScript
• Operatori di base
• Loop, array, strutture dati
• Oggetti
• Introduzione al DOM
• Gestione degli eventi
• Lezione laboratoriale
• Funzioni anonime, chiusure
Linux. Stazione di lavoro
- Le applicazioni Backend Go vengono spesso distribuite su Linux. Acquisirai familiarità con le funzionalità di Linux e sarai in grado di sviluppare in modo più efficiente.
Installazione del sistema operativo Linux
• Personalizzazione dell'interfaccia della riga di comando
• Gestione utenti e gruppi
• Processi, caricamento del sistema operativo
• Dispositivo di file system. File e directory
• Introduzione agli script bash. crontab e nei pianificatori di attività
• Gestire pacchetti e repository. Nozioni di base sulla sicurezza di rete
• Introduzione alla finestra mobile
Andare. Livello 1
- Acquisisci familiarità con gli strumenti di base e i principali tipi di dati di Go e impara a creare semplici applicazioni console.
Caratteristiche e storia della lingua Go. Lavorare con le basi del parco giochi e della toolchain.
• Tipi di dati di base. Nozioni di base per lavorare con il sottosistema I/O del sistema operativo. Nozioni di base sulla strutturazione delle applicazioni Go
• Operatori e strutture di controllo, funzioni di base
• Tipi di dati complessi: array, sezioni e mappe
• Tipi di dati complessi: strutture, funzioni e metodi
• Tipi di dati complessi: puntatori
• Interfacce. Errori. Nozioni di base sulla gestione degli errori
• Nozioni di base sulla configurazione dell'applicazione
• Lavorare con il file system
• Fondamenti del test delle applicazioni Go
• Consultazione finale sul corso. Risposte alle domande
Andare. Livello 2
- Conoscere le opzioni per implementare il calcolo parallelo in un modello competitivo, imparare a gestire le dipendenze e scrivere semplici applicazioni asincrone.
Generazione e gestione avanzata degli errori e gestione del panico. Chiamate di funzioni differite
• Compilazione incrociata in Go e immersione più profonda nella toolchain
• Lavorare con dipendenze esterne
• Concorrenza, parte 1. Goroutine e canali
• Concorrenza, parte 2. Nozioni di base sui tipi di dati dal pacchetto di sincronizzazione
• Concorrenza, parte 3. Scheduler della goroutine, race condition e verifica della sua presenza
• Riflessione e generazione di codice nel linguaggio Go.
• Nozioni di base sull'utilizzo della libreria standard Go. Preparazione per il progetto del corso
Migliori pratiche per lo sviluppo di applicazioni Go
- Conosci le moderne pratiche di sviluppo in Go e impara come implementarle nei tuoi progetti. Sono utili nello sviluppo di qualsiasi applicazione: dalle semplici utilità ai servizi ad alto carico.
Gestione degli errori provenienti da servizi di terze parti e segnali del sistema operativo
• Registrazione
• Pratiche di test avanzate
• Consultazione
• Principi per strutturare le applicazioni Go
• Linter: livello avanzato
• Creare applicazioni e automatizzare le azioni ripetitive
Sviluppo back-end. Livello 1
- Impara a sviluppare applicazioni in Go, progetta e supporta il loro backend. Alla fine del corso, crea un progetto: un abbreviatore di collegamenti.
Nozioni di base sulla rete
• Progettazione API HTTP e RESTful
• Implementazione e test di gestori HTTP
• Selezione del router e delle librerie. Middleware. Richiedi contesto.
• Pratica, parte 1. Implementazione del server
• Pratica, parte 2. Implementazione di un'applicazione Web
• Funzionalità di dockerizzazione delle applicazioni Go.
• Costruire e distribuire l'applicazione. CI/CD
Banca dati
- Imparerai come funzionano i database relazionali, sarai in grado di crearne di tuoi, modificarne la struttura e gestire i dati utilizzando SQL.
Introduzione alla teoria dei database relazionali
• Concetti base della struttura dei database
• Definizione dei dati, operazioni di base sui dati
• Campionamento dei dati, aggregazione dei dati
• Query nidificate e UNION
• GIUNTURA
• Funzionalità SQL avanzate
• Funzioni finestra, indici, lavoro in un client grafico
Postgres per sviluppatori Go
- Mettiti alla prova come amministratore di database, impara a lavorare con il sistema di gestione PostgreSQL e implementalo nei tuoi progetti.
Primi passi con PostgreSQL: strumenti di base, confronto con altri DBMS
• Lavorare con la struttura del database, CTE, analizzando i requisiti durante la ricerca dei dati
• Analisi dell'esecuzione delle query e indicizzazione dei dati
• Utilizzo di PostgreSQL da un'applicazione Go
• Struttura dell'applicazione, testing, migrazioni, ORM
• Livelli di isolamento, concorrenza, pulizia, replica
Osservabilità e ottimizzazione
- Scopri come analizzare le prestazioni del programma e ottimizzarle utilizzando la profilazione, il tracciamento e il caching.
Monitoraggio + avvisi
• Registrazione + Gestione degli errori
• Profilazione e tracciabilità
• Ottimizzazione e memorizzazione nella cache
Sviluppo back-end. Livello 2
- Impara a distribuire e gestire applicazioni in Kubernetes, acquisisci familiarità con vari protocolli API e principi di progettazione di microservizi.
Principi di interazione tra microservizi
• JSON-RPC e gRPC
• GraphQL
• Esecuzione di applicazioni Go su Kubernetes. Configurazione Monitoraggio. Debug.
• Cluster Kubernetes
• Code
• Test funzionali/BDD
• Vai a Nozioni di base sulla sicurezza delle applicazioni
Preparazione per un colloquio con Go Developer
- Creare un curriculum interessante e prepararsi per un colloquio tecnico. Puoi creare il tuo portfolio GitHub dei tuoi progetti.
Creazione di un portafoglio GitHub
• Competenze trasversali di uno sviluppatore Go
• Superamento di un colloquio tecnico
• Consultazione del portafoglio
Sviluppo in team di un progetto di microservizi
- Imparerai come condurre lo sviluppo in un ambiente in rapida evoluzione: imparerai a lavorare con compiti di grandi dimensioni da parte dei clienti, a smontarli in parti e a dare loro la giusta priorità. Implementa i tuoi microservizi nel lavoro di squadra.
Collaborare alla progettazione del servizio. RFC e documenti di progettazione
• Pratiche di collaborazione con Git. Revisione del codice
• Test congiunti e implementazione dei servizi
• Responsabilità dello sviluppatore. Elenchi di controllo per la preparazione alla produzione
• Pratica del servizio di guardia. Incidenti e autopsie
• Tre consulenze sul tuo progetto
Sergej Gonchar
16.07.2022 G.
Adesso sto studiando per diventare sviluppatore Go: nel complesso non è male. Finora non mi pento di aver acquistato i loro corsi. I programmi sono interessanti e utili, ma i webinar di 2 ore non sono una cosa molto piacevole. Preferirei video preregistrati di 20-30 minuti con attività. A volte in alcuni corsi puoi avvertire un forte aumento della difficoltà degli argomenti e dei compiti. Segui le lezioni, fai i compiti, tutto sembra chiaro...