
Corso di programmazione
Learn to Code la porta da zero esperienza di programmazione alla consegna di un'applicazione reale e distribuita. Padroneggerà i fondamenti su cui ogni sviluppatore professionista fa affidamento — dalle strutture dati e la programmazione orientata agli oggetti al testing, alle API e a Git. Questo corso copre tutto ciò che le serve per scrivere codice pulito e funzionale e ottenere il suo primo ruolo da sviluppatore.
Cosa imparerai:
Costruirà una solida base nei concetti di programmazione, per poi avanzare attraverso funzioni, progettazione orientata agli oggetti e strutture dati. Imparerà a leggere e scrivere file, a consumare API REST e a connettersi ai database. Il corso tratta strategie di debug, unit testing e sviluppo guidato dai test, affinché il suo codice sia affidabile sin dal primo giorno. Lavorerà inoltre con Git, imposterà pipeline di CI e distribuirà un progetto completo in un ambiente live. Alla fine, disporrà di un'applicazione pronta per il portfolio e delle competenze per affrontare i colloqui.
Come studi in modo pratico Corso di programmazione
Come metti in pratica Corso di programmazione
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 dettagliIntroduzione ai concetti di programmazione
Introduzione ai concetti di programmazione
Lezione 1 • Configurazione di un ambiente di sviluppo
Guida gli studenti nell'installazione di un editor di codice, nella configurazione di un runtime e nell'esecuzione del primo programma. Elimina gli ostacoli di configurazione per iniziare subito ad apprendere.
Lezione 2 • Pseudocodice e diagrammi di flusso
Insegna strumenti di pianificazione indipendenti dal linguaggio prima di introdurre qualsiasi sintassi. Gli studenti progettano soluzioni in modo visuale e in linguaggio naturale prima di scrivere codice reale.
Lezione 3 • Come i computer eseguono le istruzioni
Spiega il ciclo fetch-decode-execute e il ruolo di CPU, memoria e archiviazione. Collega tutti i concetti di programmazione successivi al comportamento reale dell'hardware.
Lezione 4 • Pensare come un programmatore
Introduce il pensiero computazionale: scomposizione, riconoscimento di schemi, astrazione e algoritmi. Gli studenti si esercitano a scomporre problemi reali in passaggi logici.
Capitolo 2NascondiNascondi dettagliVedi dettagliFondamenti di programmazione
Fondamenti di programmazione
Lezione 1 • Variabili e tipi di dati
Illustra come i programmi archiviano ed etichettano i dati usando le variabili e come i tipi di dati vincolano le operazioni valide. Abilita direttamente tutti gli esercizi di programmazione successivi.
Lezione 2 • Nozioni di base su input e output
Insegna a leggere l'input dell'utente dalla console e a visualizzare output formattato. Gli studenti costruiscono programmi interattivi che rispondono a dati reali.
Lezione 3 • Operatori ed espressioni
Insegna gli operatori aritmetici, di confronto e logici e come si combinano in espressioni. Gli studenti valutano espressioni complesse e prevedono l'output del programma.
Lezione 4 • Flusso di controllo con i condizionali
Introduce le strutture if, else-if e switch che permettono ai programmi di scegliere percorsi di esecuzione diversi. Gli studenti scrivono logiche di diramazione per scenari decisionali reali.
Lezione 5 • Cicli e iterazione
Illustra i cicli for, while e do-while per ripetere azioni in modo efficiente. Gli studenti sostituiscono il codice ripetitivo con un'iterazione concisa e controllata.
Capitolo 3NascondiNascondi dettagliVedi dettagliFunzioni e organizzazione del codice
Funzioni e organizzazione del codice
Lezione 1 • Stile del codice e documentazione
Stabilisce convenzioni di denominazione, standard per i commenti e pratiche di documentazione. Gli studenti applicano una guida di stile coerente per rendere il codice leggibile dagli altri.
Lezione 2 • Definizione e chiamata di funzioni
Spiega la sintassi delle funzioni, le convenzioni di denominazione e lo stack delle chiamate. Gli studenti sostituiscono blocchi di codice duplicati con singole definizioni di funzione riutilizzabili.
Lezione 3 • Fondamenti di ricorsione
Introduce il pensiero ricorsivo attraverso problemi classici come il fattoriale e Fibonacci. Gli studenti identificano i casi base e i casi ricorsivi per prevenire lo stack overflow.
Lezione 4 • Visibilità e ciclo di vita delle variabili
Insegna la visibilità locale vs. globale e come il ciclo di vita delle variabili influenzi il comportamento del programma. Gli studenti eseguono il debug di bug legati alla visibilità e scrivono funzioni sicure rispetto all'ambito di visibilità.
Lezione 5 • Parametri e argomenti
Illustra come i dati vengono passati alle funzioni tramite parametri e come gli argomenti predefiniti e con nome aggiungono flessibilità. Gli studenti scrivono funzioni che si adattano a input vari.
Capitolo 4NascondiNascondi dettagliVedi dettagliStrutture dati e collezioni
Strutture dati e collezioni
Lezione 1 • Insiemi e tuple
Introduce le tuple immutabili e gli insiemi non ordinati per la deduplicazione e il test di appartenenza. Gli studenti scelgono tra insiemi, tuple e liste in base ai requisiti del caso d'uso.
Lezione 2 • Array e liste
Illustra le collezioni ordinate e indicizzate e le operazioni comuni come inserimento, eliminazione e attraversamento. Gli studenti manipolano le liste per risolvere problemi di ordinamento e ricerca.
Lezione 3 • Stack, code e liste concatenate
Illustra i tipi di dati astratti costruiti su array e puntatori. Gli studenti implementano strutture LIFO e FIFO e ne comprendono le applicazioni nel mondo reale.
Lezione 4 • Algoritmi di ricerca e ordinamento
Insegna la ricerca lineare, la ricerca binaria, il bubble sort e il merge sort con l'analisi della complessità. Gli studenti confrontano gli algoritmi e selezionano soluzioni efficienti in base alla dimensione dei dati.
Lezione 5 • Dizionari e mappe hash
Insegna l'archiviazione chiave-valore per una ricerca rapida e come le funzioni hash siano alla base dei dizionari. Gli studenti costruiscono tabelle di ricerca e contatori di frequenza usando i dizionari.
Capitolo 5NascondiNascondi dettagliVedi dettagliProgrammazione orientata agli oggetti
Programmazione orientata agli oggetti
Lezione 1 • Principi di progettazione OOP
Introduce i principi SOLID e schemi di progettazione comuni come Factory e Observer. Gli studenti rifattorizzano codice OOP mal strutturato per seguire le best practice consolidate.
Lezione 2 • Incapsulamento e controllo dell'accesso
Insegna i modificatori di accesso public, private e protected e gli schemi getter/setter. Gli studenti proteggono lo stato interno ed espongono solo le interfacce necessarie.
Lezione 3 • Polimorfismo e interfacce
Spiega come oggetti di classi diverse condividano un'interfaccia comune e si comportino diversamente a runtime. Gli studenti scrivono codice che opera su tipi astratti per garantire flessibilità.
Lezione 4 • Classi e oggetti
Definisce le classi come progetti e gli oggetti come istanze, trattando i costruttori e le variabili di istanza. Gli studenti modellano un'entità del mondo reale come classe con attributi significativi.
Lezione 5 • Ereditarietà e riutilizzo del codice
Illustra le relazioni di classe genitore-figlio e l'override dei metodi per comportamenti specializzati. Gli studenti costruiscono una gerarchia di classi che elimina la logica duplicata.
Capitolo 6NascondiNascondi dettagliVedi dettagliLavorare con i file e dati esterni
Lavorare con i file e dati esterni
Lezione 1 • Gestione degli errori e convalida dei dati
Illustra i blocchi try-catch, le eccezioni personalizzate e le strategie di convalida dell'input per programmi robusti. Gli studenti aggiungono una gestione difensiva degli errori a una pipeline di elaborazione dati.
Lezione 2 • Lavorare con CSV e JSON
Insegna l'analisi e la generazione dei due formati di interscambio dati più comuni. Gli studenti caricano un dataset CSV e serializzano i risultati come JSON per un utilizzo successivo.
Lezione 3 • Introduzione ai database
Introduce i concetti di database relazionale e il linguaggio SQL di base per interrogare e aggiornare i record. Gli studenti collegano un programma a un database locale ed eseguono operazioni CRUD.
Lezione 4 • Utilizzo di API REST
Spiega i metodi HTTP, i codici di stato e come inviare richieste e gestire le risposte. Gli studenti recuperano dati in tempo reale da un'API pubblica e li visualizzano in un report formattato.
Lezione 5 • Lettura e scrittura di file
Illustra l'apertura, la lettura, la scrittura e la chiusura sicura dei file utilizzando i gestori di contesto. Gli studenti elaborano un file di testo e scrivono i risultati trasformati in un nuovo file.
Capitolo 7NascondiNascondi dettagliVedi dettagliDebug, test e qualità del codice
Debug, test e qualità del codice
Lezione 1 • Sviluppo guidato dai test
Illustra il ciclo red-green-refactor e come scrivere prima i test migliori la progettazione. Gli studenti costruiscono una piccola funzionalità utilizzando il TDD, dal primo test fallito al codice funzionante.
Lezione 2 • Nozioni di base sulla profilazione delle prestazioni
Introduce gli strumenti di profilazione che identificano percorsi di codice lenti e colli di bottiglia della memoria. Gli studenti profilano un programma, identificano il punto critico e applicano un'ottimizzazione mirata.
Lezione 3 • Strategie e strumenti di debug
Insegna il debug con breakpoint, il tracciamento basato su print e la lettura efficace degli stack trace. Gli studenti isolano e correggono un programma con più bug utilizzando un flusso di lavoro di debug strutturato.
Lezione 4 • Revisioni del codice e analisi statica
Insegna come fornire e ricevere feedback costruttivi durante la revisione del codice e come utilizzare gli strumenti di analisi statica. Gli studenti revisionano il codice di un collega e applicano il linting automatico al proprio.
Lezione 5 • Fondamenti di test unitari
Introduce il pattern Arrange-Act-Assert e la scrittura di test isolati per singole funzioni. Gli studenti scrivono una suite completa di test unitari per un modulo precedentemente costruito.
Capitolo 8NascondiNascondi dettagliVedi dettagliCostruzione e distribuzione di un progetto reale
Costruzione e distribuzione di un progetto reale
Lezione 1 • Pipeline di integrazione continua
Introduce pipeline automatizzate di build e test che vengono eseguite a ogni push del codice. Gli studenti configurano una pipeline CI che blocca i merge quando i test falliscono.
Lezione 2 • Gestione delle dipendenze e pacchettizzazione
Spiega i gestori di pacchetti, gli ambienti virtuali e la dichiarazione delle dipendenze di progetto. Gli studenti pacchettizzano il proprio progetto in modo che si installi correttamente su qualsiasi macchina.
Lezione 3 • Controllo di versione con Git
Insegna il branching, il commit, il merge e la risoluzione dei conflitti utilizzando Git. Gli studenti gestiscono un progetto multi-funzionalità con una cronologia dei commit pulita e revisionabile.
Lezione 4 • Distribuzione in un ambiente live
Illustra le nozioni di base sulla containerizzazione, le variabili d'ambiente e la distribuzione su una piattaforma cloud. Gli studenti distribuiscono il proprio progetto e verificano che venga eseguito correttamente in produzione.
Lezione 5 • Pianificazione e architettura del progetto
Illustra la raccolta dei requisiti, la definizione dell'ambito delle funzionalità e la scelta di un'architettura appropriata. Gli studenti producono un piano di progetto con milestone definite prima di scrivere qualsiasi codice.
Il tuo certificato valido di completamento
Questo corso è per te:
Professionista in cerca di cambiamento: pronto a lasciare il proprio settore attuale per lo sviluppo software.
Neolaureato: desidera aggiungere competenze pratiche di programmazione al proprio curriculum.
Titolare di una piccola impresa: desidera creare o mantenere i propri strumenti digitali.
Professionista del marketing: desidera automatizzare i report e comprendere i colleghi sviluppatori.
Costruttore hobbista: desideroso di trasformare le idee dei propri progetti personali in applicazioni funzionanti.
Libero professionista: alla ricerca di competenze tecniche per ampliare la propria offerta di servizi ai clienti.
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




















