
Corso per programmatore informatico
Passa dalla scrittura della tua prima riga di codice alla progettazione di sistemi software scalabili che le vere aziende rilasciano. Questo corso copre tutto, dai concetti fondamentali della programmazione e i database fino ad API, test e distribuzione nel cloud. Al termine possiederai un set di competenze pronto per il portfolio e la profondità tecnica che i datori di lavoro cercano in realtà.
Cosa imparerai:
Padroneggerai i concetti fondamentali della programmazione su cui si basa ogni sviluppatore professionista, tra cui variabili, flusso di controllo, funzioni e progettazione orientata agli oggetti. Imparerai a creare e mettere in sicurezza API RESTful, a progettare database relazionali e NoSQL e a scrivere test automatici a ogni livello della piramide di testing. Il corso tratta i pattern di architettura software, le pipeline DevOps, la containerizzazione con Docker e la distribuzione nel cloud. Apprenderai anche l'ottimizzazione delle prestazioni, le pratiche di codifica sicura e i flussi di lavoro Agile in team. Al termine, avrai le competenze per contribuire a team di ingegneria reali e il portfolio per dimostrarlo.
Come studi in modo pratico Corso per programmatore informatico
Come metti in pratica Corso per programmatore informatico
Per te che sei un'azienda e vuoi formare il tuo team
Su Dedika per aziende, il corso include esercizi ed esempi personalizzati sul tuo business e secondo le esigenze della tua azienda.
Contenuto del corso
8 Capitoli • 39 LezioniDurata tra 4 e 360 ore (decidi tu)
Capitolo 1NascondiNascondi dettagliVedi dettagliFondamenti di programmazione e configurazione dell'ambiente
Fondamenti di programmazione e configurazione dell'ambiente
Lezione 1 • Configurazione dell'ambiente di sviluppo
Installa e configura un editor di codice, un runtime e un gestore di pacchetti. Assicura che ogni studente disponga di uno spazio di lavoro identico e riproducibile prima di scrivere qualsiasi codice.
Lezione 2 • Competenza nell'uso del terminale
Insegna la navigazione, la manipolazione dei file e la gestione dei processi in un terminale. La fluidità nell'uso del terminale accelera ogni flusso di lavoro successivo nel corso.
Lezione 3 • Controllo di versione con Git
Introduce Git come strumento standard del settore per tracciare le modifiche e collaborare. Gli studenti eseguono commit, branching e push del codice entro la fine di questa sezione.
Lezione 4 • Come i computer eseguono il codice
Tratta il ciclo di istruzione della CPU, la gerarchia di memoria e il ruolo dei sistemi operativi. Stabilisce il contesto hardware che spiega ogni concetto di livello superiore nel corso.
Capitolo 2NascondiNascondi dettagliVedi dettagliConcetti fondamentali di programmazione
Concetti fondamentali di programmazione
Lezione 1 • Collezioni e pattern di iterazione
Introduce array, liste e dizionari per memorizzare dati raggruppati. Gli studenti applicano pattern di iterazione per elaborare set di dati reali in modo efficiente.
Lezione 2 • Variabili, tipi e operatori
Spiega come i dati vengono memorizzati, tipizzati e trasformati tramite espressioni. Fornisce il vocabolario necessario per leggere e scrivere qualsiasi istruzione di codice.
Lezione 3 • Funzioni e codice modulare
Definisce le funzioni come unità logiche riutilizzabili e testabili. Il design modulare riduce la duplicazione ed è il fondamento di tutti i programmi più grandi in questo corso.
Lezione 4 • Flusso di controllo e processo decisionale
Tratta i condizionali e i cicli che dirigono i percorsi di esecuzione del programma. Gli studenti implementano logiche di branching e algoritmi iterativi da zero.
Lezione 5 • Gestione degli errori e debug
Insegna la gestione strutturata delle eccezioni e le tecniche sistematiche di debug. Gli studenti imparano a leggere gli stack trace e a isolare i bug usando un debugger.
Capitolo 3NascondiNascondi dettagliVedi dettagliProgrammazione orientata agli oggetti
Programmazione orientata agli oggetti
Lezione 1 • Composizione e iniezione delle dipendenze
Mette a confronto la composizione con l'ereditarietà e introduce l'iniezione delle dipendenze. Gli studenti imparano quando preferire relazioni 'has-a' alle gerarchie 'is-a'.
Lezione 2 • Classi e oggetti
Definisce le classi come progetti e gli oggetti come istanze con stato e comportamento. Collega la sintassi OOP alle funzioni modulari introdotte nel capitolo precedente.
Lezione 3 • Ereditarietà e polimorfismo
Modella relazioni 'is-a' tramite gerarchie di classi e overriding dei metodi. Gli studenti scrivono codice polimorfico che gestisce tipi multipli attraverso una singola interfaccia.
Lezione 4 • Principi di progettazione SOLID
Applica cinque principi fondamentali di progettazione OOP a esempi di codice reali. Gli studenti rifattorizzano classi mal strutturate in design puliti e manutenibili.
Lezione 5 • Incapsulamento e controllo degli accessi
Spiega come nascondere lo stato interno ed esporre interfacce controllate. L'incapsulamento previene mutazioni indesiderate e impone confini chiari tra i moduli.
Capitolo 4NascondiNascondi dettagliVedi dettagliStrutture dati e algoritmi
Strutture dati e algoritmi
Lezione 1 • Algoritmi di ordinamento e ricerca
Implementa e confronta i classici algoritmi di ordinamento e ricerca. Gli studenti misurano le implementazioni e giustificano la scelta dell'algoritmo in base alla complessità.
Lezione 2 • Strutture dati lineari
Tratta array, liste concatenate, pile e code con i loro compromessi. Gli studenti implementano ciascuna struttura e identificano i casi d'uso appropriati.
Lezione 3 • Analisi della complessità
Introduce la notazione Big-O per misurare l'efficienza degli algoritmi. Gli studenti valutano le prestazioni del codice prima di scegliere tra implementazioni concorrenti.
Lezione 4 • Strategie di progettazione degli algoritmi
Introduce approcci divide-et-impera, programmazione dinamica e golosi. Gli studenti scompongono problemi complessi in sottoproblemi risolvibili.
Lezione 5 • Alberi e grafi
Spiega i modelli di dati gerarchici e a rete utilizzati nei sistemi reali. Gli studenti attraversano alberi e grafi usando strategie depth-first e breadth-first.
Capitolo 5NascondiNascondi dettagliVedi dettagliDatabase e persistenza dei dati
Database e persistenza dei dati
Lezione 1 • Fondamenti di database relazionali
Spiega tabelle, chiavi e relazioni come fondamento dei database relazionali. Gli studenti modellano un dominio usando diagrammi entità-relazione prima di scrivere qualsiasi SQL.
Lezione 2 • Integrazione del database nel codice dell'applicazione
Connette un'applicazione a un database usando un ORM e pattern di query raw. Gli studenti costruiscono un livello repository che astrae la persistenza dalla logica di business.
Lezione 3 • NoSQL e document store
Mette a confronto document store, key-value store e column-family store con i database relazionali. Gli studenti scelgono il modello di persistenza giusto per una data forma di dati.
Lezione 4 • Linguaggio di query SQL
Tratta le operazioni SELECT, INSERT, UPDATE, DELETE e JOIN. Gli studenti scrivono query che rispondono a domande di business reali su un set di dati di esempio.
Lezione 5 • Transazioni e integrità dei dati
Spiega le proprietà ACID e come le transazioni proteggano la coerenza dei dati. Gli studenti implementano la logica di commit e rollback nel codice dell'applicazione.
Capitolo 6NascondiNascondi dettagliVedi dettagliSviluppo web e API
Sviluppo web e API
Lezione 1 • Costruzione di un'API RESTful
Progetta e implementa endpoint REST seguendo convenzioni orientate alle risorse. Gli studenti creano un'API CRUD supportata dal livello database del capitolo precedente.
Lezione 2 • Autenticazione e autorizzazione
Implementa l'autenticazione basata su token e il controllo degli accessi basato sui ruoli. Gli studenti mettono in sicurezza gli endpoint in modo che solo gli utenti autorizzati possano accedere alle risorse protette.
Lezione 3 • Consumo di API esterne
Effettua richieste HTTP autenticate a servizi di terze parti e gestisce le risposte. Gli studenti integrano un'API pubblica nella propria applicazione utilizzando le best practice.
Lezione 4 • HTTP e il ciclo di richiesta web
Spiega i metodi HTTP, i codici di stato, gli header e il modello richiesta-risposta. Questo modello mentale è alla base di ogni API e framework web utilizzato in seguito.
Lezione 5 • Documentazione e versionamento delle API
Genera documentazione API interattiva e gestisce le modifiche che rompono la compatibilità tramite il versionamento. Una documentazione chiara riduce l'attrito di integrazione per i consumatori dell'API.
Capitolo 7NascondiNascondi dettagliVedi dettagliTest del software e garanzia della qualità
Test del software e garanzia della qualità
Lezione 1 • Test di integrazione e API
Testa le interazioni tra i componenti e convalida i contratti API end-to-end. Gli studenti rilevano i bug di integrazione che i test di unità non possono individuare.
Lezione 2 • Test di unità in pratica
Scrive test di unità isolati per funzioni e classi utilizzando un framework di test. Gli studenti raggiungono un'elevata copertura sui moduli di logica di business principali.
Lezione 3 • Sviluppo Guidato dai Test
Applica il ciclo red-green-refactor per guidare la progettazione attraverso test falliti. Gli studenti sperimentano come il TDD produca codice più semplice e testabile.
Lezione 4 • Fondamenti e strategia di test
Introduce la piramide dei test e i compromessi costo-beneficio di ciascun livello. Gli studenti pianificano una strategia di test prima di scrivere un singolo caso di test.
Lezione 5 • Integrazione continua e automazione dei test
Configura una pipeline di CI che esegue automaticamente i test a ogni commit. Gli studenti bloccano i merge quando i test falliscono, applicando gate di qualità nel flusso di lavoro.
Capitolo 8NascondiNascondi dettagliVedi dettagliArchitettura software e progettazione di sistemi
Architettura software e progettazione di sistemi
Lezione 1 • Resilienza e tolleranza ai guasti
Progetta sistemi che degradano le prestazioni in modo graduale in caso di guasto utilizzando circuit breaker e retry. Gli studenti applicano i pattern di resilienza all'API costruita nei capitoli precedenti.
Lezione 2 • Progettazione per scalabilità e prestazioni
Tratta il ridimensionamento orizzontale, le strategie di caching e il bilanciamento del carico in fase di progettazione. Gli studenti identificano i colli di bottiglia prima di scrivere codice usando la pianificazione della capacità.
Lezione 3 • Panoramica dei pattern architetturali
Esamina le architetture a strati, event-driven e a microservizi con i loro compromessi. Gli studenti associano un documento di requisiti a uno stile architetturale appropriato.
Lezione 4 • Pratica di progettazione di sistemi
Applica tutti i concetti architetturali per progettare un sistema distribuito realistico end-to-end. Gli studenti presentano e difendono i loro progetti rispetto a scenari di scalabilità e guasto.
Lezione 5 • Basi di Domain-Driven Design
Introduce contesti delimitati, aggregati e linguaggio ubiquo come strumenti di progettazione. Gli studenti suddividono un modello di dominio in moduli coesi e distribuibili in modo indipendente.
Il tuo certificato valido di completamento
Questo corso è per te:
Professionista in fase di cambiamento di carriera: desidera un percorso strutturato e allineato alle esigenze dei datori di lavoro verso lo sviluppo software.
Programmatore autodidatta: presenta lacune nei fondamenti e necessita di un curriculum coeso.
Professionista IT: supporta i sistemi software e desidera passare a costruirli.
Neolaureato: ha studiato in un campo non correlato e si sta orientando verso carriere nel settore tecnologico.
Imprenditore: realizza prodotti e desidera collaborare in modo più efficace con gli sviluppatori.
Programmazione per hobbisti: ha completato tutorial per principianti ed è pronto per un approfondimento professionale.
Cosa dicono i nostri studenti
Le sue lezioni sono perfette. Ho acquistato il pacchetto annuale e finalmente ho l'opportunità di seguire diversi argomenti di mio interesse senza dover cambiare piattaforma... vi ringrazio per tutto quello che fate, vi ho già raccomandati ad altre persone...

Mi piace come le lezioni vanno dritte al punto e come riesco a cambiare capitoli e saltare contenuti di cui non ho bisogno.

Mi piace il contenuto e il modo di presentazione e trascrizione dei video, che accelera il processo!

La piattaforma è veloce, semplice da usare. La diversità dei contenuti e i video complementari aiutano molto nell'apprendimento.

Principali percorsi formativi
FAQ
Chi è Dedika?
Il certificato è valido in Italia?
I corsi sono gratuiti?
Qual è il carico di lavoro del corso?
Come sono strutturati i corsi?
Come funzionano i corsi?
Qual è la durata dei corsi?
Qual è il costo o il prezzo dei corsi?
Cos’è un corso EAD o online e come funziona?
Corso PDF




















