Linguaggi di programmazione `
I linguaggi di programmazione sono stati creati per facilitare la scrittura dei programmi, sarebbe impossibile scrivere programmi in linguaggio macchina. Un programma scritto in un qualsiasi linguaggio (alto livello) verrà tradotto da un interprete/compilatore in linguaggio macchina (basso livello) prima di essere eseguito. `
Differenza tra compilatore e interprete: `
-
Compilatore: `
-
Interprete: `
Tipi di programmazione: `
Programmazione imperativa: sequenze di istruzioni da “impartire” `
- Esempio: `
- Leggi A
- Scrivi B
- Assegna 5 alla variabile X `
Programmazione strutturata: Si basa sul teorema di Bohm-Jacopini ovvero un programma scritto usando le istruzioni di condizione (IF), iterazione (FOR) e sequenza (istruzioni varie) `
Programmazione procedurale: codice formato da procedure/funzioni, ogni unzione può contenere costrutti ella programmazione imperativa e strutturata `
Programmazione modulare: formata da moduli ben suddivisi che dialogano tra di loro attraverso delle interfacce `
Un programma potrebbe essere sintatticamente giusto ma comunque non produrre il risultato che ci aspettiamo `
Algoritmi
Un’algoritmo è una sequenza finita di passi ordinati che sono stati concepiti per risolvere un problema. Gli algoritmi si possono creare attraverso 2 tipi di approccio: `
-
Top-down: `
-
Bottom-up: `
-
Approccio ibrido: alcune parti dell’algoritmo vengono definite usando un’approccio Top-down e alcune parti usando un’approccio bottom-up.`