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

Corso di programmazione

Passa da zero esperienza di programmazione a costruire e distribuire software reale con questo corso completo di programmazione. Padroneggerà concetti fondamentali come variabili, funzioni, strutture dati e progettazione orientata agli oggetti, per poi applicarli in un progetto completo. Ogni competenza che acquisisce è effettivamente ricercata dai datori di lavoro.

Dedika per aziende

Cosa imparerai:

Imparerà come i computer eseguono il codice e come configurare un ambiente di sviluppo professionale sin dal primo giorno. Il corso tratta variabili, tipi di dato, flusso di controllo e funzioni, prima di passare alla programmazione orientata agli oggetti e alle strutture dati. Lavorerà con i file, gestirà gli errori in modo elegante e utilizzerà API esterne e database. Moduli supplementari introducono algoritmi, concorrenza e pratiche di qualità del codice utilizzate nei team di ingegneria reali. Alla fine, avrà costruito, testato e distribuito un'applicazione completa e preparato un portfolio pronto da mostrare ai datori di lavoro.

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

Introduzione ai concetti di programmazione

  • Lezione 1 • Configurazione di un ambiente di sviluppo

    Guida all'installazione di un editor di codice, di un runtime e degli strumenti da terminale. Un ambiente di lavoro funzionante è il prerequisito per ogni esercizio pratico successivo.

  • Lezione 2 • Scegliere il primo linguaggio di programmazione

    Confronta i linguaggi adatti ai principianti in base a chiarezza sintattica, supporto della comunità e rilevanza professionale. Gli studenti scelgono un linguaggio e ne giustificano la scelta.

  • Lezione 3 • Lettura e scrittura della sintassi di base

    Introduce istruzioni, espressioni, commenti e regole sugli spazi bianchi. Gli studenti scrivono ed eseguono programmi semplici per interiorizzare le convenzioni sintattiche.

  • Lezione 4 • Come i computer elaborano le istruzioni

    Spiega il ciclo fetch-decode-execute e il ruolo dell'hardware rispetto al software. Fondamenta tutti i concetti successivi di programmazione sul funzionamento reale delle macchine.

Capitolo 2Vedi dettagli

Variabili, tipi di dato e operatori

  • Lezione 1 • Tipi di dato primitivi

    Esamina numeri interi, numeri a virgola mobile, booleani e stringhe come elementi costitutivi di tutti i dati. Gli studenti si esercitano con operazioni specifiche per tipo e identificano le discrepanze di tipo.

  • Lezione 2 • Operatori di confronto e logici

    Introduce gli operatori relazionali e logici che producono risultati booleani. Questi operatori alimentano ogni costrutto condizionale e di ciclo nei capitoli successivi.

  • Lezione 3 • Conversione di tipo e casting

    Spiega la coercizione implicita e il casting esplicito tra tipi di dato. Gli studenti eseguono il debug di errori di tipo e scrivono routine di conversione sicure.

  • Lezione 4 • Operatori aritmetici e di assegnazione

    Insegna l'insieme completo degli operatori aritmetici e le scorciatoie di assegnazione composta. Gli studenti calcolano risultati e aggiornano i valori delle variabili in brevi programmi.

  • Lezione 5 • Dichiarare e nominare le variabili

    Tratta la sintassi di dichiarazione delle variabili, le convenzioni di denominazione e i fondamenti di scope. Una denominazione corretta previene i bug e migliora la leggibilità del codice durante tutto il corso.

Capitolo 3Vedi dettagli

Flusso di controllo: condizionali e cicli

  • Lezione 1 • Costrutti switch e match

    Presenta la selezione a rami multipli come alternativa più pulita a lunghe catene di if-else. Gli studenti rifattorizzano il codice condizionale in blocchi switch o match.

  • Lezione 2 • Istruzioni if, else if ed else

    Costruisce alberi decisionali usando blocchi condizionali e condizioni annidate. Gli studenti tracciano i percorsi di esecuzione ed evitano errori logici comuni.

  • Lezione 3 • Cicli while e do-while

    Introduce la ripetizione controllata da condizione per conteggi di iterazioni sconosciuti. Gli studenti scrivono cicli che leggono input fino all'inserimento di un valore valido.

  • Lezione 4 • Break, continue e controllo dei cicli

    Insegna i meccanismi di uscita anticipata e salto per regolare con precisione il comportamento dei cicli. Gli studenti rifattorizzano i cicli per eliminare iterazioni non necessarie.

  • Lezione 5 • Cicli for e iterazione su intervalli

    Tratta i cicli controllati da contatore con valori espliciti di inizio, fine e passo. Gli studenti iterano su intervalli numerici e collezioni semplici.

Capitolo 4Vedi dettagli

Funzioni e riusabilità del codice

  • Lezione 1 • Scope e durata delle variabili

    Definisce lo scope locale, enclosing e globale e spiega lo shadowing delle variabili. Gli studenti tracciano i valori delle variabili attraverso chiamate di funzione annidate.

  • Lezione 2 • Definire e chiamare le funzioni

    Tratta la sintassi di dichiarazione delle funzioni, la denominazione e l'invocazione. Gli studenti convertono immediatamente blocchi di codice ripetuti in funzioni con nome.

  • Lezione 3 • Fondamenti di ricorsione

    Introduce le funzioni che chiamano sé stesse con casi base e passi ricorsivi. Gli studenti implementano algoritmi ricorsivi classici e analizzano la profondità dello stack di chiamate.

  • Lezione 4 • Parametri, argomenti e valori predefiniti

    Spiega i parametri posizionali, i valori predefiniti e le modalità di passaggio degli argomenti. Gli studenti scrivono funzioni flessibili che gestiscono con eleganza input opzionali.

  • Lezione 5 • Funzioni di ordine superiore e lambda

    Tratta le funzioni come valori di prima classe passati o restituiti da altre funzioni. Gli studenti usano map, filter e funzioni anonime per elaborare dati.

Capitolo 5Vedi dettagli

Strutture dati: liste, array e dizionari

  • Lezione 1 • Dizionari e archivi chiave-valore

    Introduce le strutture a mappa hash per una ricerca veloce basata su chiave. Gli studenti modellano entità del mondo reale come dizionari ed eseguono operazioni CRUD.

  • Lezione 2 • Iterare sulle collezioni

    Applica i cicli for-each e gli iteratori per elaborare ogni elemento di una collezione. Gli studenti combinano l'iterazione con i condizionali per filtrare e trasformare i dati.

  • Lezione 3 • Fondamenti di liste e array

    Tratta le collezioni ordinate e indicizzate e la loro disposizione in memoria. Gli studenti creano, accedono e modificano le liste usando la notazione con indice.

  • Lezione 4 • Set e tuple

    Contrappone i set non ordinati a elementi unici alle tuple immutabili e ai loro casi d'uso. Gli studenti applicano le operazioni sugli insiemi per risolvere problemi di appartenenza e deduplicazione.

  • Lezione 5 • Ordinamento e ricerca nelle collezioni

    Insegna i metodi di ordinamento integrati e la logica della ricerca lineare e binaria. Gli studenti confrontano le strategie di ricerca su collezioni di dimensioni variabili.

Capitolo 6Vedi dettagli

Principi della programmazione orientata agli oggetti

  • Lezione 1 • Ereditarietà e riuso del codice

    Estende le classi base per creare sottoclassi specializzate senza duplicare il codice. Gli studenti costruiscono una gerarchia di classi a tre livelli e sovrascrivono i metodi.

  • Lezione 2 • Composizione rispetto all'ereditarietà

    Contrappone le gerarchie di ereditarietà alla composizione di oggetti per un design flessibile. Gli studenti rifattorizzano un design basato pesantemente sull'ereditarietà in componenti componibili.

  • Lezione 3 • Incapsulamento e controllo dell'accesso

    Insegna a nascondere lo stato interno dietro interfacce pubbliche usando modificatori di accesso. Gli studenti rifattorizzano le classi per esporre solo i dati necessari.

  • Lezione 4 • Classi e oggetti

    Definisce le classi come progetti e gli oggetti come istanze con stato e comportamento. Gli studenti scrivono classi con attributi e metodi per un dominio semplice.

  • Lezione 5 • Polimorfismo e interfacce

    Consente a oggetti di classi diverse di essere usati in modo intercambiabile attraverso interfacce condivise. Gli studenti scrivono codice che opera su un tipo base e gestisce il comportamento delle sottoclassi.

Capitolo 7Vedi dettagli

I/O su file, gestione degli errori e debug

  • Lezione 1 • Fondamenti di gestione delle eccezioni

    Insegna i blocchi try-except-finally per intercettare e recuperare dagli errori a runtime. Gli studenti racchiudono le operazioni rischiose e forniscono messaggi di errore significativi.

  • Lezione 2 • Leggere e scrivere file

    Tratta l'apertura, la lettura, la scrittura e la chiusura dei file usando i context manager. Gli studenti analizzano un file di testo e scrivono i risultati elaborati in un nuovo file.

  • Lezione 3 • Eccezioni personalizzate e design degli errori

    Guida alla creazione di classi di eccezione specifiche per il dominio per una comunicazione degli errori più chiara. Gli studenti progettano una gerarchia di eccezioni per una piccola applicazione.

  • Lezione 4 • Formati di dati strutturati

    Introduce CSV e JSON come formati di interscambio comuni per i dati dei programmi. Gli studenti serializzano e deserializzano i dati tra oggetti in memoria e file.

  • Lezione 5 • Strategie e strumenti di debug

    Introduce il debug tramite stampa, i debugger interattivi e l'isolamento sistematico dei guasti. Gli studenti eseguono passo passo un programma difettoso e correggono tre tipi distinti di errore.

Capitolo 8Vedi dettagli

Costruire e distribuire un progetto completo

  • Lezione 1 • Distribuzione ed esecuzione in produzione

    Tratta le variabili d'ambiente, la distribuzione di base su server e i fondamenti del monitoraggio. Gli studenti distribuiscono il progetto su una piattaforma cloud e verificano che funzioni correttamente.

  • Lezione 2 • Scrivere test automatizzati

    Introduce i framework di unit testing e i principi dello sviluppo guidato dai test. Gli studenti scrivono i test prima di implementare ciascuna funzione del modulo.

  • Lezione 3 • Controllo di versione con Git

    Tratta commit, rami, merge e pull request come flusso di lavoro professionale. Gli studenti gestiscono il repository del progetto dall'inizializzazione al merge finale.

  • Lezione 4 • Gestione dei pacchetti e delle dipendenze

    Insegna gli ambienti virtuali, i gestori di pacchetti e i file di configurazione del progetto. Gli studenti isolano le dipendenze e producono una build riproducibile.

  • Lezione 5 • Pianificazione e architettura del progetto

    Applica l'analisi dei requisiti e il design modulare prima di scrivere codice. Gli studenti producono un elenco di funzionalità, una mappa dei moduli e un diagramma di flusso dei dati.

Certificazione

Il tuo certificato valido di completamento

Questo corso è per te:

  • Professionista in cambio di carriera: desidera passare allo sviluppo software provenendo da un settore non correlato.

  • Neolaureato: desidera aggiungere competenze pratiche di programmazione a un background accademico.

  • Piccolo imprenditore: deve automatizzare attività o sviluppare semplici strumenti interni in autonomia.

  • Professionista del marketing o delle operations: desidera comprendere il lato tecnico del proprio prodotto.

  • Hobbyist che costruisce: ha idee per progetti ma manca delle competenze fondamentali per realizzarli.

  • Analista o ricercatore: pronto a sostituire i flussi di lavoro manuali con soluzioni programmatiche personalizzate.

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