Scegli la tua lingua
Corso di programmazione
Più di 2 milioni di studenti in tutto il mondo

Corso di programmazione

4,5

Impara a programmare dalle basi e costruisci applicazioni reali e distribuibili utilizzando strumenti e pratiche standard del settore. Questo corso ti accompagna dalla configurazione del tuo primo ambiente di sviluppo fino alla scrittura di test, al consumo di API e al lancio di software pronto per la produzione. Ogni concetto è ancorato alla pratica di coding così da sviluppare competenze concrete, non solo teoria.

Dedika per aziende

Cosa imparerai:

Inizierai con i concetti fondamentali della programmazione come variabili, flusso di controllo e funzioni, per poi passare al design orientato agli oggetti, alle strutture dati e agli algoritmi. Imparerai a leggere e scrivere file, a effettuare richieste HTTP ad API esterne e a gestire il codice asincrono in modo pulito. Il corso copre pratiche professionali tra cui unit testing, sviluppo guidato dai test, controllo di versione con Git e integrazione continua. Esplorerai anche i database, i fondamenti di sicurezza e l'ottimizzazione delle prestazioni. Al termine, avrai progettato, realizzato e distribuito un'applicazione completa da zero.

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.

Clicca qui

Contenuto del corso

8 Capitoli • 39 LezioniDurata tra 4 e 360 ore (decidi tu)

Capitolo 1Vedi dettagli

Fondamenti di programmazione e configurazione dell'ambiente

  • Lezione 1 • Come i computer eseguono il codice

    Spiega il percorso dal codice sorgente alle istruzioni macchina, coprendo compilatori, interpreti e runtime. Fondamenta tutto lo studio successivo della sintassi su un modello di esecuzione concreto.

  • Lezione 2 • Fondamenti del flusso di controllo

    Copre le istruzioni condizionali e i cicli che dirigono l'esecuzione del programma. Gli studenti acquisiscono la capacità di scrivere programmi che prendono decisioni e ripetono azioni.

  • Lezione 3 • Configurazione dell'ambiente di sviluppo

    Guida l'installazione di un editor di codice, del runtime del linguaggio e degli strumenti da terminale. Garantisce che ogni studente abbia uno spazio di lavoro identico e riproducibile prima di scrivere qualsiasi codice.

  • Lezione 4 • Lettura e debug dei messaggi di errore

    Insegna a interpretare gli errori di sintassi, gli errori di runtime e gli stack trace. Stabilisce una mentalità di debug sistematica fin dal primo giorno di programmazione.

  • Lezione 5 • Concetti fondamentali di programmazione

    Introduce variabili, tipi di dati, operatori ed espressioni come elementi costitutivi atomici di qualsiasi programma. Collega concetti astratti a esempi concreti ed eseguibili.

Capitolo 2Vedi dettagli

Funzioni, scope e organizzazione del codice

  • Lezione 1 • Scope e ciclo di vita delle variabili

    Spiega lo scope locale, globale e di blocco e come il runtime risolve i nomi delle variabili. Previene bug comuni causati da shadowing o leakage non intenzionali delle variabili.

  • Lezione 2 • Definizione e chiamata di funzioni

    Copre la sintassi delle funzioni, i parametri, i valori di ritorno e i meccanismi di chiamata. Stabilisce le funzioni come strumento principale per incapsulare logica riutilizzabile.

  • Lezione 3 • Organizzazione del codice in moduli

    Dimostra come suddividere il codice in file utilizzando meccanismi di import ed export. Prepara gli studenti a lavorare in progetti multi-file e librerie open-source.

  • Lezione 4 • Funzioni di ordine superiore e callback

    Introduce le funzioni come valori di prima classe che possono essere passati e restituiti. Abilita modelli di programmazione funzionale utilizzati in tutto il codebase moderno.

Capitolo 3Vedi dettagli

Strutture dati: array, oggetti e collezioni

  • Lezione 1 • Strutture annidate e JSON

    Gestisce array e oggetti profondamente annidati e li serializza in formato JSON. Prepara gli studenti a consumare e produrre il formato dati utilizzato dalla maggior parte delle API web.

  • Lezione 2 • Array e collezioni indicizzate

    Copre la creazione, l'indicizzazione, la mutazione e l'iterazione degli array. Gli array sono la base per quasi ogni attività di elaborazione di liste nelle applicazioni reali.

  • Lezione 3 • Trasformazione e filtraggio delle collezioni

    Applica map, filter, reduce e metodi simili per elaborare i dati in modo dichiarativo. Costruisce le competenze di pipeline di dati funzionali utilizzate nell'analisi e nel rendering dell'interfaccia utente.

  • Lezione 4 • Set e Map per dati univoci

    Introduce le strutture Set e Map per la deduplicazione e le ricerche con chiave. Espande il toolkit dello studente oltre gli array e gli oggetti semplici.

  • Lezione 5 • Oggetti e archivi chiave-valore

    Spiega i letterali oggetto, l'accesso alle proprietà e la manipolazione dinamica delle chiavi. Gli oggetti modellano entità del mondo reale e fungono da base per lo scambio di dati JSON.

Capitolo 4Vedi dettagli

Principi di programmazione orientata agli oggetti

  • Lezione 1 • Polimorfismo e interfacce

    Dimostra come classi diverse possano soddisfare un'interfaccia comune ed essere utilizzate in modo intercambiabile. Abilita architetture flessibili di tipo plug-in.

  • Lezione 2 • Incapsulamento e controllo degli accessi

    Copre i membri pubblici, privati e protetti e i pattern getter/setter. Insegna agli studenti a nascondere i dettagli implementativi ed esporre interfacce pulite.

  • Lezione 3 • Composizione rispetto all'ereditarietà

    Contrappone gerarchie di ereditarietà profonde a pattern di mixin e composizione. Guida gli studenti verso progetti più facili da testare e rifattorizzare.

  • Lezione 4 • Classi e costruttori

    Introduce la sintassi delle classi, i costruttori e la creazione di istanze. Fornisce le basi strutturali per tutti i pattern orientati agli oggetti trattati in questo capitolo.

  • Lezione 5 • Ereditarietà e catena di prototipi

    Spiega l'estensione delle classi, l'override dei metodi e la delega basata su prototipi. Consente il riutilizzo del codice tra classi correlate senza duplicazione.

Capitolo 5Vedi dettagli

Algoritmi e tecniche di problem-solving

  • Lezione 1 • Scomposizione dei problemi e pseudocodice

    Insegna a scomporre un problema in sottoproblemi e a esprimere soluzioni in linguaggio semplice prima di codificare. Riduce gli errori separando il pensiero dalla sintassi.

  • Lezione 2 • Analisi della complessità Big-O

    Introduce la notazione della complessità temporale e spaziale e insegna a valutare l'efficienza degli algoritmi. Consente decisioni informate quando le prestazioni contano.

  • Lezione 3 • Algoritmi di ricerca

    Copre la ricerca lineare e la ricerca binaria con analisi della complessità. Gli studenti scelgono la giusta strategia di ricerca in base alla dimensione dei dati e all'ordinamento.

  • Lezione 4 • Ricorsione e call stack

    Spiega il pensiero ricorsivo, i casi base e come il call stack gestisce le chiamate ricorsive. Sblocca l'attraversamento degli alberi e i pattern divide et impera.

  • Lezione 5 • Algoritmi di ordinamento

    Implementa bubble sort, selection sort, insertion sort, merge sort e quicksort e confronta le loro prestazioni. Costruisce l'intuizione per la progettazione di algoritmi attraverso la codifica pratica.

Capitolo 6Vedi dettagli

Lavorare con file, API e codice asincrono

  • Lezione 1 • Callback, Promise e Async/Await

    Traccia l'evoluzione dal codice asincrono basato su callback a quello basato su promise fino ad async/await. Gli studenti scrivono logica pulita e non bloccante senza annidamento di callback.

  • Lezione 2 • Gestione degli errori e codice resiliente

    Applica la gestione strutturata degli errori, tipi di errore personalizzati e strategie di fallback alle operazioni di I/O. Produce programmi che degradano in modo controllato in caso di errore.

  • Lezione 3 • Lettura e scrittura di file

    Copre l'I/O sincrono e asincrono su file, la gestione dei percorsi e la gestione degli errori. Consente ai programmi di persistere e recuperare dati dal filesystem locale.

  • Lezione 4 • Autenticazione e accesso sicuro alle API

    Copre le chiavi API, l'autenticazione basata su token e l'archiviazione sicura delle credenziali. Previene errori di sicurezza comuni durante l'integrazione di servizi esterni.

  • Lezione 5 • Effettuare richieste HTTP alle API

    Dimostra le richieste GET, POST, PUT e DELETE e la gestione delle risposte. Collega i programmi a fonti di dati live e servizi di terze parti.

Capitolo 7Vedi dettagli

Test, debug e qualità del codice

  • Lezione 1 • Flusso di lavoro dello sviluppo guidato dai test

    Applica il ciclo red-green-refactor per guidare l'implementazione delle funzionalità attraverso i test. Produce interfacce più pulite perché i test definiscono prima il comportamento atteso.

  • Lezione 2 • Fondamenti di unit testing

    Introduce la struttura dei test, le asserzioni e i test runner per verificare le singole funzioni. Costruisce l'abitudine a scrivere test insieme al codice di produzione.

  • Lezione 3 • Mocking, stub e isolamento dei test

    Sostituisce le dipendenze esterne con falsi controllati per isolare l'unità sotto test. Consente test veloci e deterministici che non richiedono accesso alla rete o al database.

  • Lezione 4 • Qualità del codice e analisi statica

    Applica linter, formattatori e controllori di tipo per imporre uno stile coerente e rilevare bug staticamente. Riduce l'attrito nelle revisioni e previene intere classi di errori di runtime.

  • Lezione 5 • Test di integrazione e end-to-end

    Testa le interazioni tra i componenti e i flussi utente completi dall'input all'output. Rileva difetti che gli unit test perdono esercitando i confini reali del sistema.

Capitolo 8Vedi dettagli

Costruzione e deployment di applicazioni reali

  • Lezione 1 • Integrazione continua e deployment

    Automatizza le pipeline di test e deployment in modo che ogni push del codice venga convalidato e rilasciato in sicurezza. Riduce i passaggi manuali e l'errore umano nel processo di release.

  • Lezione 2 • Monitoraggio e manutenzione post-lancio

    Implementa il logging, il tracciamento degli errori e il monitoraggio delle prestazioni per le applicazioni live. Garantisce che i problemi vengano rilevati e risolti prima che gli utenti vengano impattati in modo significativo.

  • Lezione 3 • Architettura e pianificazione del progetto

    Copre la raccolta dei requisiti, la progettazione della struttura delle cartelle e la selezione della tecnologia. Previene costose rilavorazioni stabilendo un'architettura chiara prima di scrivere codice.

  • Lezione 4 • Strumenti di build e gestione delle dipendenze

    Configura i gestori di pacchetti, i bundler e gli script di build per automatizzare le attività ripetitive. Produce output ottimizzato e pronto per la produzione dai file sorgente di sviluppo.

  • Lezione 5 • Controllo di versione con Git

    Applica flussi di lavoro di branching, commit, merge e pull request per gestire le modifiche al codice. Consente una collaborazione sicura e una cronologia completa di ogni decisione.

Certificazione

Il tuo certificato valido di completamento

Questo corso è per te:

  • Persone in transizione di carriera: pronte a orientarsi professionalmente verso lo sviluppo software.

  • Professionisti del marketing: che desiderano automatizzare report e comprendere meglio i colleghi sviluppatori.

  • Imprenditori: che mirano a prototipare le proprie idee di app senza assumere uno sviluppatore.

  • Neolaureati: che cercano competenze pratiche di coding per rafforzare le loro candidature lavorative.

  • Appassionati: curiosi di sapere come funziona il software e desiderosi di realizzare progetti personali.

  • Personale di supporto IT: che intende passare dalla risoluzione dei problemi di sistema alla scrittura di codice vero e proprio.

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...
Giulio Carlo
Giulio CarloStudente di Marketing Digitale
Mi piace come le lezioni vanno dritte al punto e come riesco a cambiare capitoli e saltare contenuti di cui non ho bisogno.
Mariana Ferres
Mariana FerresStudentessa di Fotografia
Mi piace il contenuto e il modo di presentazione e trascrizione dei video, che accelera il processo!
Luciana Alvarenga
Luciana AlvarengaStudentessa di Nail Design
La piattaforma è veloce, semplice da usare. La diversità dei contenuti e i video complementari aiutano molto nell'apprendimento.
André Felipe
André FelipeStudente di Prompt Engineering

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