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

Corso Base di Programmazione

Apprenda i concetti fondamentali della programmazione su cui ogni sviluppatore fa affidamento quotidianamente, dalle variabili e strutture dati alla progettazione orientata agli oggetti e all'I/O su file. Questo corso le offre un percorso strutturato e pratico da zero esperienza fino alla scrittura di programmi reali e funzionanti. Tratterà anche pratiche professionali come Git, i test e le API REST, così da essere pronto per il mondo del lavoro al termine del corso.

Dedika per aziende

Cosa imparerai:

Apprenderà come i computer eseguono il codice, come configurare un ambiente di sviluppo professionale e come scrivere programmi puliti e strutturati utilizzando variabili, flusso di controllo e funzioni. Padroneggerà le strutture dati essenziali, applicherà i principi della programmazione orientata agli oggetti e gestirà gli errori in modo che i suoi programmi falliscano in modo controllato. Il corso tratta anche l'I/O su file, i database SQL e NoSQL, il controllo di versione con Git, i test automatizzati e l'utilizzo di API web. Alla fine, avrà le competenze pratiche e le abitudini professionali necessarie per costruire software reale e contribuire a un team di sviluppo.

Come studi in modo pratico Corso Base di Programmazione

Come metti in pratica Corso Base 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 • Come i computer elaborano le istruzioni

    Illustra la relazione tra hardware, sistema operativo e programmi. Stabilisce le basi per comprendere perché il codice debba essere preciso e strutturato.

  • Lezione 2 • Panoramica sui linguaggi di programmazione

    Passa in rassegna i linguaggi compilati rispetto a quelli interpretati e le distinzioni tra alto e basso livello. Aiuta i discenti a scegliere gli strumenti appropriati per diverse tipologie di problemi.

  • Lezione 3 • Risoluzione dei problemi prima della codifica

    Introduce la scomposizione, lo pseudocodice e i diagrammi di flusso come strumenti di pre-codifica. I discenti si esercitano a tradurre problemi reali in passi logici strutturati.

  • Lezione 4 • Configurazione di un ambiente di sviluppo

    Guida i discenti nell'installazione di un editor di codice, di un runtime e di un client per il controllo di versione. Un ambiente locale funzionante è necessario per tutti gli esercizi pratici successivi.

Capitolo 2Vedi dettagli

Variabili, tipi di dato e operatori

  • Lezione 1 • Conversione di tipo e cast

    Distingue la coercizione implicita dal cast esplicito e identifica quando ciascuno si verifica. Previene i bug di perdita di dati derivanti da conversioni di tipo non intenzionali.

  • Lezione 2 • Tipi di dato primitivi

    Illustra a livello di linguaggio interi, numeri in virgola mobile, booleani, caratteri e stringhe. Comprendere i tipi previene errori a runtime comuni causati da discrepanze di tipo.

  • Lezione 3 • Operatori aritmetici e di confronto

    Insegna gli operatori aritmetici, di confronto e logici con le regole di precedenza. I discenti costruiscono espressioni utilizzate in ogni successivo costrutto di flusso di controllo.

  • Lezione 4 • Lavorare con le stringhe

    Esplora la creazione, la concatenazione, l'interpolazione e i comuni metodi incorporati delle stringhe. Le stringhe sono il tipo di dato più frequente nei programmi reali.

  • Lezione 5 • Dichiarare e usare le variabili

    Spiega la dichiarazione, l'assegnazione e le convenzioni di denominazione delle variabili. Si collega direttamente alla scrittura di codice leggibile e manutenibile sin dall'inizio.

Capitolo 3Vedi dettagli

Flusso di controllo e processo decisionale

  • Lezione 1 • Cicli For e iterazione

    Insegna l'iterazione contata con i cicli for, incluse le variabili di ciclo e le espressioni di intervallo. L'iterazione è il meccanismo principale per elaborare collezioni e ripetere compiti.

  • Lezione 2 • Istruzioni condizionali

    Illustra i costrutti if, else-if ed else per la ramificazione dei percorsi del programma. Si basa direttamente sugli operatori di confronto e logici del capitolo precedente.

  • Lezione 3 • Switch e pattern matching

    Introduce la selezione multi-ramo utilizzando le istruzioni switch e il pattern matching moderno. Fornisce alternative più pulite alle lunghe catene else-if per controlli su valori discreti.

  • Lezione 4 • Istruzioni per il controllo dei cicli

    Spiega break, continue e return all'interno dei cicli per alterare il flusso iterativo. La padronanza di queste istruzioni consente un controllo preciso su logiche di ciclo complesse.

  • Lezione 5 • Cicli While e Do-While

    Illustra i cicli guidati da condizione per scenari in cui il numero di iterazioni non è noto in anticipo. I discenti distinguono la semantica dei cicli con controllo preliminare da quelli con controllo successivo.

Capitolo 4Vedi dettagli

Funzioni e riusabilità del codice

  • Lezione 1 • Ambito e durata delle variabili

    Definisce l'ambito locale, di inclusione e globale e spiega l'oscuramento delle variabili. Le regole di ambito determinano quali dati una funzione può leggere o modificare.

  • Lezione 2 • Valori restituiti e output

    Insegna come le funzioni producono output attraverso le istruzioni di return e valori di ritorno multipli. I discenti collegano l'output delle funzioni all'assegnazione delle variabili e alla valutazione delle espressioni.

  • Lezione 3 • Parametri e argomenti

    Spiega gli argomenti posizionali, predefiniti e con parola chiave e come i dati fluiscono nelle funzioni. Una corretta progettazione dei parametri rende le funzioni flessibili e riutilizzabili in contesti diversi.

  • Lezione 4 • Fondamenti di ricorsione

    Introduce la progettazione di funzioni ricorsive con casi base e casi ricorsivi. La ricorsione consente soluzioni eleganti a problemi con struttura autosimilare.

  • Lezione 5 • Definire e chiamare le funzioni

    Illustra la sintassi di dichiarazione delle funzioni, la denominazione e i modelli di invocazione. Le funzioni sono l'unità principale di organizzazione del codice in ogni paradigma di programmazione.

Capitolo 5Vedi dettagli

Strutture dati: Collezioni e archiviazione

  • Lezione 1 • Array multidimensionali

    Estende gli array a dimensione singola a griglie e matrici per dati tabulari. I discenti implementano schemi di attraversamento riga-colonna utilizzati nell'elaborazione di dati e immagini.

  • Lezione 2 • Dizionari e archivi chiave-valore

    Insegna le strutture a mappa hash per una ricerca veloce per chiave anziché per posizione. Gli archivi chiave-valore sono essenziali per configurazione, memorizzazione nella cache e modellazione dei dati.

  • Lezione 3 • Insiemi e collezioni univoche

    Introduce gli insiemi per memorizzare elementi univoci ed eseguire test di appartenenza. Operazioni sugli insiemi come unione e intersezione risolvono problemi di deduplicazione e confronto.

  • Lezione 4 • Array e liste

    Illustra le collezioni sequenziali indicizzate, inclusa la creazione, l'accesso e la mutazione. Array e liste sono alla base di quasi tutti gli algoritmi di elaborazione dati.

  • Lezione 5 • Scegliere la struttura dati giusta

    Confronta la complessità temporale e spaziale di strutture comuni per operazioni tipiche. I discenti applicano criteri di selezione a scenari reali per giustificare le proprie scelte.

Capitolo 6Vedi dettagli

Principi della programmazione orientata agli oggetti

  • Lezione 1 • Incapsulamento e controllo degli accessi

    Insegna i livelli di accesso pubblico, protetto e privato e gli schemi getter/setter. L'incapsulamento protegge lo stato interno e definisce interfacce chiare per gli oggetti.

  • Lezione 2 • Classi e oggetti

    Definisce le classi come modelli e gli oggetti come istanze dotate di stato e comportamento. Questa sezione stabilisce il vocabolario per tutti i successivi concetti della programmazione orientata agli oggetti.

  • Lezione 3 • Polimorfismo e interfacce

    Dimostra come oggetti di tipo diverso rispondano alla stessa chiamata di metodo. Il polimorfismo consente di scrivere codice flessibile ed estensibile che funziona con tipi futuri.

  • Lezione 4 • Ereditarietà e riuso del codice

    Spiega l'ereditarietà singola e multilivello per condividere il comportamento tra classi correlate. L'ereditarietà riduce la duplicazione e stabilisce relazioni "è un" tra tipi.

  • Lezione 5 • Costruttori e inizializzazione

    Illustra i metodi costruttori per impostare lo stato dell'oggetto al momento della creazione. Un'inizializzazione corretta previene errori di attributi non inizializzati in programmi complessi.

Capitolo 7Vedi dettagli

Gestione degli errori e debug

  • Lezione 1 • Tecniche e strumenti di debug

    Introduce il debug tramite stampa, i debugger interattivi e l'uso dei breakpoint. Un debug sistematico riduce il tempo dedicato alla diagnosi dei difetti in programmi complessi.

  • Lezione 2 • Logging e programmazione difensiva

    Illustra i livelli di logging, la formattazione dei log e la convalida dell'input come misure preventive. Logging e convalida riducono la frequenza e la gravità dei guasti in produzione.

  • Lezione 3 • Costrutti per la gestione delle eccezioni

    Illustra i blocchi try, except, finally ed else per la gestione strutturata degli errori. Questi costrutti prevengono i crash e consentono ai programmi di riprendersi o segnalare i guasti in modo pulito.

  • Lezione 4 • Sollevare e creare eccezioni

    Insegna come sollevare eccezioni incorporate e definire classi di eccezioni personalizzate. Le eccezioni personalizzate comunicano condizioni di errore specifiche del dominio in modo chiaro al chiamante.

  • Lezione 5 • Tipi di errori di programmazione

    Distingue gli errori di sintassi, di runtime e logici con i relativi punti di rilevamento. Classificare correttamente gli errori accelera la diagnosi e la risoluzione.

Capitolo 8Vedi dettagli

I/O su file, moduli e struttura del progetto

  • Lezione 1 • Utilizzo dei pacchetti della libreria standard

    Passa in rassegna i moduli della libreria standard comunemente usati per matematica, date, percorsi e utilità. Sfruttare i pacchetti incorporati evita di reinventare funzionalità già collaudate.

  • Lezione 2 • Strutturare un progetto multifile

    Illustra la disposizione delle directory, l'inizializzazione dei pacchetti e le basi della gestione delle dipendenze. Una struttura di progetto chiara consente la collaborazione in team e build affidabili.

  • Lezione 3 • Leggere e scrivere file di testo

    Illustra le modalità di apertura dei file, i metodi di lettura e la chiusura sicura dei file con i gestori di contesto. L'I/O su file è la base per la persistenza dei dati in applicazioni non basate su database.

  • Lezione 4 • Lavorare con formati di file strutturati

    Insegna l'analisi e la scrittura di CSV, JSON e formati strutturati simili. I formati strutturati sono il mezzo standard di scambio dati tra programmi e servizi.

  • Lezione 5 • Moduli e importazioni

    Spiega come suddividere il codice in moduli e importarli selettivamente. Il codice modulare è più facile da testare, mantenere e riutilizzare in più progetti.

Certificazione

Il tuo certificato valido di completamento

Questo corso è per te:

  • Persone in fase di cambiamento di carriera: cercano un punto di ingresso strutturato nello sviluppo software provenendo da settori non correlati.

  • Studenti universitari: desiderano rafforzare la teoria appresa in aula con competenze di programmazione pratiche e operative.

  • Imprenditori: che desiderano prototipare idee senza dipendere interamente da sviluppatori esterni.

  • Analisti e ricercatori: mirano ad automatizzare attività ripetitive e a manipolare i dati in modo programmatico.

  • Hobbisti: pronti ad andare oltre i tutorial e a costruire in autonomia programmi completi e funzionali.

  • Professionisti IT: ampliamento delle proprie competenze dall'infrastruttura e dal supporto allo sviluppo di applicazioni.

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