Talk is cheap. Mostrami il codice.
Fondamenti di Programmazione
Introduzione al pensiero computazionale e alla progettazione del software .
Il pensiero computazionale
(computational thinking) è l'insieme dei processi mentali che permettono di formulare e risolvere un problema complesso scomponendolo in passaggi logici e sequenziali, in modo che possano essere eseguiti da un essere umano o da un sistema automatizzato (come un computer). [ https://it.wikipedia.org/wiki/Pensiero_computazionale ]
La progettazione del software
(software design) è la fase dell'ingegneria del software in cui si definisce la struttura, l'architettura e il funzionamento di un sistema prima di scrivere il codice sorgente.
[ https://it.wikipedia.org/wiki/Progettazione_(ingegneria_del_software) ]
Obiettivi principali
• Scomporre i problemi: dividere un problema complesso in una sequenza di passi logici ed elementari.
• Ragionamento algoritmico: ideare, scrivere e analizzare algoritmi.
• Logica di programmazione: dalla descrizione di una soluzione in linguaggio naturale alla codifica in linguaggio di programmazione Python
Programmazione Procedurale
La programmazione procedurale è un paradigma di programmazione
che consiste nel creare dei blocchi di codice sorgente, identificati da un nome e racchiusi da dei delimitatori, che variano a seconda del linguaggio di programmazione; questi sono detti anche sottoprogrammi (subroutine), procedure o funzioni, a seconda del linguaggio e dei loro ruoli all'interno del linguaggio stesso.
Il nome deriva dal linguaggio COBOL, che è stato il primo a utilizzare questo concetto.
[ https://it.wikipedia.org/wiki/Programmazione_procedurale ]
Linguaggi di Programmazione
Cosa sono i linguaggi di programmazione. Qual è la pipeline dei processi necessari per eseguire un programma
Introduzione alla programmazione con Python
Come si scrive un algoritmo in linguaggio Python. Tecniche di programmazione con i costrutti di base.
Programmazione Orientata agli Oggetti
La programmazione orientata agli oggetti (in inglese object-oriented programming, in acronimo OOP), a volte chiamata semplicemente programmazione a oggetti, è un paradigma di programmazione che permette di definire oggetti software in grado di interagire gli uni con gli altri attraverso lo scambio di messaggi.
Per scambio di messaggi s'intende
la capacità degli oggetti di chiamare i metodi pubblici di altri oggetti, per esempio passandogli dati da elaborare e ricevendo il risultato della loro elaborazione. La OOP è particolarmente adatta nei contesti in cui si possono definire delle relazioni di interdipendenza tra i concetti da modellare (contenimento, uso, specializzazione). Un ambito che più di altri riesce a sfruttare i vantaggi della programmazione a oggetti è quello delle interfacce grafiche.
Tra gli altri vantaggi della programmazione orientata agli oggetti:
-
- fornisce un supporto naturale alla modellazione software degli oggetti del mondo reale o del modello astratto da riprodurre;
- permette una più facile gestione e manutenzione di progetti di grandi dimensioni;
- l'organizzazione del codice sotto forma di classi favorisce la modularità e il riuso di codice.
[ https://it.wikipedia.org/wiki/Programmazione_orientata_agli_oggetti ]