La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

1 Modulo 8 – Dal Problema Al Programma Piano Nazionale Di Formazione Degli Insegnanti Sulle Tecnologie Dellinformazione E Della Comunicazione.

Presentazioni simili


Presentazione sul tema: "1 Modulo 8 – Dal Problema Al Programma Piano Nazionale Di Formazione Degli Insegnanti Sulle Tecnologie Dellinformazione E Della Comunicazione."— Transcript della presentazione:

1 1 Modulo 8 – Dal Problema Al Programma Piano Nazionale Di Formazione Degli Insegnanti Sulle Tecnologie Dellinformazione E Della Comunicazione

2 2 Scopo Del Modulo Scopo Del Modulo (Estratto Dalla C.M. N.55 Del ) Conoscere alcuni concetti fondamentali dellinformatica: algoritmo, automa, linguaggio formale. Conoscere alcuni concetti fondamentali dellinformatica: algoritmo, automa, linguaggio formale. Essere in grado di cogliere lintreccio tra alcuni risultati della matematica e della logica dei primi decenni del secolo scorso ed i successivi sviluppi e applicazioni che questi hanno avuto in campo informatico. Essere in grado di cogliere lintreccio tra alcuni risultati della matematica e della logica dei primi decenni del secolo scorso ed i successivi sviluppi e applicazioni che questi hanno avuto in campo informatico.

3 3 Problemi e Algoritmi Col termine problema o situazione problematica sindica una situazione che pone delle domande cui si devono dare risposte. Risolvere il problema vuol dire uscire da tale situazione. Col termine problema o situazione problematica sindica una situazione che pone delle domande cui si devono dare risposte. Risolvere il problema vuol dire uscire da tale situazione. Sono esempi di situazioni problematiche: Individuare il cammino più breve per andare a scuola Individuare il cammino più breve per andare a scuola Scrivere in ordine alfabetico un elenco di nomi Scrivere in ordine alfabetico un elenco di nomi Calcolare larea di un campo rettangolare Calcolare larea di un campo rettangolare Un problema è formato dai seguenti elementi: Un problema è formato dai seguenti elementi: dati I dati, ossia ciò che è noto, listanza che si deve affrontare e che possiamo indicare col termine input. risultati I risultati, ossia ciò che si deve determinare, gli elementi incogniti la cui determinazione fornisce loutput. condizioni Le condizioni, che sono in generale le limitazioni cui devono soggiacere i risultati.

4 4 Classi Di Problemi Problemi di decisione Problemi di decisione, in cui loutput è fornito dal valore vero o falso a seconda che linput soddisfi o meno una determinata proprietà. Problemi di ricerca Problemi di ricerca, in cui, nello spazio delle soluzioni possibili (spazio di ricerca), si vuole determinare quella soluzione che soddisfa le condizioni poste dal problema, che viene detta soluzione ammissibile. Problemi di ottimizzazione Problemi di ottimizzazione, in cui alle soluzioni ammissibili è associata una misura e si deve determinare la soluzione ammissibile la cui misura è massima o minima.

5 5 Strategie sulla Risoluzione dei Problemi Per compiere lanalisi di un problema il risolutore deve svolgere una attività creativa nella ricerca della risoluzione del problema: 1. interpretare lenunciato del problema e definire gli obiettivi da realizzare; 2. individuare i dati del problema e costruire un modello opportuno (modello è una rappresentazione della realtà che ha impoverito la realtà stessa degli aspetti superflui alla soluzione del problema);modello 3. descrivere il procedimento risolutivo individuando le operazioni da compiere sui dati iniziali per ottenere i risultati finali; 4. eseguire nellordine le operazioni descritte nel processo risolutivo (il risolutore in questa fase è detto esecutore); 5. verificare se i risultati ottenuti rispondono alle finalità del problema reale (attendibilità).

6 6 Analisi Di Un Problema Problema Interpretazione Modello Verifica dei Risultati Verifica dei Risultati Esecuzione Procedimento Risolutivo Procedimento Risolutivo

7 7 Esempio Di Problema o Situazione Problematica Individuare Il percorso più breve per andare a scuola A B C S D abitazione scuola DETERMINATA LA LUNGHEZZA DI OGNI TRATTO DI STRADA TRA I DUE INCROCI ABCS; ABCDS; ADCS; ADS ; DATI INIZIALI AB = 130 m BC=90 m CD=110 m AD=120 m DS=110 m CS=80 m Procedimento risolutivo: Calcolare la lunghezza di ciascun percorso ABCS= ABCDS= ADCS= ADS= Ordinare in ordine crescente i risultati ottenuti Dato Finale Il percorso più breve è………….. Modello

8 8 Strategie Per La Risoluzione Dei Problemi prima fase tecnica del top-down: La prima fase dellanalisi di un problema, ossia la definizione dellobiettivo da raggiungere, può essere realizzata attraverso processi di analisi sempre più dettagliati. Si tratta di scomporre un problema complesso in sottoproblemi più semplici, utilizzando la tecnica del top-down:tecnica del top-down:tecnica del top-down: Il problema ; Il problema viene esaminato nelle direttrici generali; Scomposto ; Scomposto in sottoproblemi; Di ciascun sottoproblema Di ciascun sottoproblema si determinano le operazioni specifiche; Esso viene scomposto in ulteriori sotto- sottoproblemi, fino a giungere alle operazioni elementari. Esso viene scomposto in ulteriori sotto- sottoproblemi, fino a giungere alle operazioni elementari.

9 9 Tecnica Del Top-down Problema Sottoproblema 8 Sottoproblema n Sottoproblema 7 Sottoproblema 6 Sottoproblema 5 Sottoproblema 1 Sottoproblema 2 Sottoproblema 3 Sottoproblema 4 Problema 1 Problema 2 Problema 3 Problema K

10 10 Al-Khawarizmi. DEFINIZIONE: Una dettagliata sequenza di azioni/operazioni che devono essere eseguite per risolvere una classe di problemi. Il nome deriva dal matematico Iraniano Al-Khawarizmi. classe Tecnicamente un algoritmo e costituito da un numero finito di passi al termine dei quali deve essere generato un risultato. Concetto di algoritmo

11 11 Funzionalità di un Algoritmo Gli algoritmi utilizzano dati di ingresso e sono in grado di produrre dei risultati, elaborando secondo uno schema prefissato i dati in ingresso.

12 12 Esempi di algoritmi: Preparazione di una torta Ingredienti torta Ricetta Torta

13 13 Esempi di algoritmi: Prelevamento col Bancomat Tessera bancomat Codice segreto Inserire la tessera Digitare il codice segreto Selezionare la funzione prelievo Selezionare limporto da prelevare Prelevare il denaro Banconote

14 14 Gli Algoritmi L algoritmo deve essere: L algoritmo deve essere: Finito, Finito, costituito cioè da un numero limitato di passi (le istruzioni sono in numero finito e vengono eseguite un numero finito di volte); Definito, ; Definito, ogni istruzione deve consentire uninterpretazione univoca; Eseguibile, ; Eseguibile, cioè la sua esecuzione deve essere possibile con gli strumenti di cui si dispone; Deterministico,. Deterministico, ad ogni passo deve essere definita una ed una sola operazione successiva.

15 15 Rappresentazioni Grafiche Di Un Algoritmo I Diagrammi a Blocchi. flow-chart Tra le tecniche utilizzate per rappresentare in maniera chiara e sintetica la struttura degli algoritmi, quella del Diagramma a Blocchi,anche detto flow-chart, ha il pregio di evidenziare visivamente lavanzamento in sequenza e le varie strutture che compongono lalgoritmo.

16 16 ALGORITMO Somma di una sequenza di numeri Indicando con a i il generico elemento da sommare, la formula matematica generale è S = a 1 + a 2 +…+ a n. Bisogna fornire in input allelaboratore i singoli valori a i ed il numero n di tali valori. Lalgoritmo utilizza una struttura iterativa, ossia un blocco distruzioni che viene ripetuto un numero finito di volte. Utilizzeremo una variabile N per linput di n per contare quante volte si deve ripetere literazione; il valore di N si decrementa di ununità nellambito delliterazione e literazione termina quando N raggiunge il valore zero. La variabile A è usata per gli input degli a i, S per le somme parziali e totale. inizio N S 0 A S S + A N N-1 N=0 S fine N0

17 17 ALGORITMO Calcolo Della Media Aritmetica di una Sequenza di Valori Numerici La formula matematica è M = a 1 + a 2 + ……+ a n n Si consente allutente di introdurre un numero qualsiasi di dati, utilizzando un valore speciale (lo zero) per indicare la fine della sequenza di input; lalgoritmo conta quanti elementi vengono introdotti.

18 18 Il Linguaggio Di Progetto Un algoritmo può essere rappresentato anche mediante un linguaggio speciale che descrive le istruzioni e la logica di avanzamento dellesecuzione con frasi (stringhe) anziché con un diagramma. Si parla in tal caso di pseudocodifica o notazione lineare strutturata. Un algoritmo può essere rappresentato anche mediante un linguaggio speciale che descrive le istruzioni e la logica di avanzamento dellesecuzione con frasi (stringhe) anziché con un diagramma. Si parla in tal caso di pseudocodifica o notazione lineare strutturata. Tale linguaggio formale, detto linguaggio di progetto, non è un linguaggio di programmazione ma è molto sintetico ed è composto da un vocabolario e una sintassi molto ristretta. Esso utilizza parole riservate, spesso tratte dalla lingua inglese, mediante le quali vengono espressi i diversi tipi di istruzioni. Tale linguaggio formale, detto linguaggio di progetto, non è un linguaggio di programmazione ma è molto sintetico ed è composto da un vocabolario e una sintassi molto ristretta. Esso utilizza parole riservate, spesso tratte dalla lingua inglese, mediante le quali vengono espressi i diversi tipi di istruzioni.

19 19 ALGORITMO Somma di una sequenza di numeri Pseudocodifica algoritmo 1

20 20 Calcolo Della Media Aritmetica Di Una Sequenza Di Valori Numerici ALGORITMO Calcolo Della Media Aritmetica Di Una Sequenza Di Valori Numerici Pseudocodifica algoritmo 2:

21 21 Il Concetto di Sistema Si dice sistema un insieme di elementi che interagiscono tra loro in modo da formare una unità che al verificarsi di un dato evento (azione) proveniente dallambiente esterno (ecosistema), produce una risposta definita Si dice sistema un insieme di elementi che interagiscono tra loro in modo da formare una unità che al verificarsi di un dato evento (azione) proveniente dallambiente esterno (ecosistema), produce una risposta definita. Rappresentazione schematica di un sistema: Esempio:un ascensore che si trovi al piano terra, quando lutente preme il pulsante 2 sale di due piani; se lutente preme ancora il pulsante 2 una volta arrivato al secondo piano, lascensore non si muove. Il sistema ha prodotto uscite diverse in quanto si trovava in stati diversi. Esempio: un ascensore che si trovi al piano terra, quando lutente preme il pulsante 2 sale di due piani; se lutente preme ancora il pulsante 2 una volta arrivato al secondo piano, lascensore non si muove. Il sistema ha prodotto uscite diverse in quanto si trovava in stati diversi. Input Ecosistema Output

22 22 Concetto di Modello Un modello è uno schema teorico elaborato in molte discipline per rappresentare gli elementi fondamentali di fenomeni o enti. modelli descrittivi o statici: riproducono con eventuali semplificazioni la realtà, senza presupporre luso che ne verrà fatto modelli predittivi: danno gli elementi di una certa realtà necessari per prevederne levoluzione, lasciando spazio ad eventuali scelte modelli predittivi: danno gli elementi di una certa realtà necessari per prevederne levoluzione, lasciando spazio ad eventuali scelte modelli prescrittivi: impongono un particolare percorso in previsione dellobiettivo da raggiungere modelli prescrittivi: impongono un particolare percorso in previsione dellobiettivo da raggiungere modelli simbolici o matematici: danno una rappresentazione astratta della realtà cui si riferiscono, mediante un insieme di equazioni e/o disequazioni che legano le grandezze coinvolte modelli simbolici o matematici: danno una rappresentazione astratta della realtà cui si riferiscono, mediante un insieme di equazioni e/o disequazioni che legano le grandezze coinvolte modelli analogici: danno una rappresentazione fedele della realtà, tipici sono i modelli in scala ridotta, che riproducono qualitativamente un sistema pur riducendone proporzionalmente la dimensione modelli analogici: danno una rappresentazione fedele della realtà, tipici sono i modelli in scala ridotta, che riproducono qualitativamente un sistema pur riducendone proporzionalmente la dimensione

23 23 Concetto di Automa Un automa è un sistema dinamico, invariante, discreto nellavanzamento e nelle interazioni. dinamico: evolve nel tempo passando da uno stato allaltro in funzione dei segnali dingresso e dello stato precedente; invariante: a parità di condizioni iniziali il comportamento del sistema è sempre lo stesso; discreto: le variabili dingresso, di stato, duscita, possono assumere solo valori discreti. Esempio di automa a stati finiti: Esempio di automa a stati finiti: Ascensore Ascensore Un ascensore di un palazzo a due piani accetta la richiesta del piano di destinazione (terra, 1, 2) e restituisce lo spostamento desiderato (su, giù, fermo). Si tratta di un automa in cui S={Pt, 1P, 2P}, Pt= p. terra, 1P= p. primo, 2P= p. secondo; I={T, 1, 2} ingressi possibili offerti dalla pulsantiera; U={Su, Giù, Fermo} spostamenti dellascensore. S= insieme finito di stati I= insieme finito dei possibili ingressi U=insieme finito di possibili uscite

24 24 Automi e Classi di Problemi Molte macchine che usiamo quotidianamente sono automi:la lavatrice, la lavastoviglie, limpastatrice,i sistemi di controllo degli ascensori, i distributori automatici di bevande, i distributori automatici di benzina, i bancomat. I computer sono automi, particolari automi a programma, possono cioè svolgere il ruolo di un automa o di un altro in funzione del programma che si manda in esecuzione.

25 25 Automi e Classi di Problemi Lutilizzo di automi è uno strumento molto potente per individuare la soluzione di particolari classi di problemi. Luomo che li utilizza interviene solo nel fornire i comandi in ingresso o nellazionare pulsanti e senza interessarsi di cosa accade al loro interno, vede solo leffettuazione della funzione in uscita. Un sistema automatico è un sistema in cui la componente umana è completamente eliminata nellambito dei processi, che sono ben determinati e prevedibili e ogni richiesta in ingresso può attivare uno solo dei processi eseguibili dal meccanismo interno. Un sistema umano, al contrario, quale ad esempio un sistema aziendale, presenta un carattere probabilistico poiché luomo può assolvere a funzioni anche impreviste, in numero indeterminato, utilizzando un ragionamento, ma anche creatività ed intuito.

26 26 I Linguaggi linguaggiocomunicazione Il linguaggio consente la comunicazione, intesa come scambio di informazioni. La funzione fondamentale del linguaggio significante significato La funzione fondamentale del linguaggio è quella di sostituire ad oggetti e/o concetti dei simboli. Ogni parola (significante) rappresenta un oggetto concreto, una persona, un ente astratto (significato). Linguaggi naturali Linguaggi naturali, utilizzati nella comunicazione quotidiana tra gli esseri umani, privi di una definizione rigorosa ed in continua evoluzione, spesso presentano ambiguità ma hanno enorme potenza espressiva; Linguaggi formali Linguaggi formali, creati dalluomo per scopi precisi, secondo regole convenzionali esplicite che non ammettono eccezioni e non consentono sinonimi e omonimie.

27 27 Caratteristiche dei linguaggi sistema di segni (stringhe) (significante) (significato). Il linguaggio è un sistema di segni, sistema in quanto i vari elementi di cui è formato funzionano insieme in sistema unitario. I segni sono le parole (stringhe) del linguaggio, che si usano per indicare lassociazione tra un dato percepibile ed un concetto. Ogni parola (significante) rappresenta un oggetto concreto, una persona, un ente astratto che la mente umana associa al messaggio (significato).

28 28 Elementi di un Linguaggio 1. Alfabeto 1. Alfabeto: insieme finito e non vuoto di simboli convenzionali espressi con segni tipografici detti caratteri 2. Sintassi 2. Sintassi: insieme finito e non vuoto delle regole mediante le quali si formano le stringhe o le frasi di un linguaggio

29 29 Elementi di un Linguaggio 3. Semantica 3. Semantica: insieme finito e non vuoto di significati da attribuire alle stringhe 4. Grammatica: 4. Grammatica: insieme finito e non vuoto di tutte le regole che servono per generare un linguaggio

30 30 I Linguaggi nella Comunicazione Uomo-Macchina programma linguaggio di programmazione Lutilizzo di un linguaggio formale consente di passare da un algoritmo al corrispondente programma. Si dice programma una sequenza di istruzioni espresse in un linguaggio formale (linguaggio di programmazione) mediante le quali si può risolvere un problema.

31 31 Linguaggi e Automi algoritmo automa Per ottenere la soluzione di un problema, una volta individuata la strategia risolutiva (algoritmo), si affida la messa in atto delle operazioni che essa prevede ad un esecutore (automa). automa Un automa è costruito per uno scopo determinato, ed è pertanto in grado di compiere il processo previsto per raggiungere lobiettivo fissato, compiendo un numero finito di operazioni disposte, in risposta agli input che gli vengono forniti al momento dellattivazione. elaboratore elettronico è un automa programmabile Un elaboratore elettronico è un automa programmabile, è possibile cioè comunicare con esso usando linguaggi diversi, ciascuno finalizzato alla soluzione di una particolare classe di problemi. Nel calcolatore sono pertanto presenti simultaneamente una grande varietà di automi, ciascuno dei quali utilizza un opportuno linguaggio e quindi un particolare programma.

32 32 Lo schema seguente illustra i passaggi che conducono dalla formulazione del problema alla sua soluzione. Problema Algoritmo Programma sorgente Programma traduttore Programma oggetto Elaborazione Risultati

33 33 Rassegna dei Principali Software sistema operativo Il sistema operativo, che è il software di base ossia lapplicazione che controlla tutte le risorse del computer word processor il word processor, per la realizzazione di testi scritti, che trasforma la macchina in un automa che ha sostituito le vecchie macchine da scrivere, con potenzialità assai più numerose e precise; foglio di calcolo il foglio di calcolo, per il calcolo di unampia gamma di funzioni, la realizzazione di tabelle per lorganizzazione e lanalisi di dati, la creazione di grafici descrittivi di fenomeni di varia natura (economici, statistici, fisici…); sistemi per la gestione di basi di dati sistemi per la gestione di basi di dati, per la realizzazione di archivi di dati (insiemi organizzati di informazioni), la creazione di tabelle e la realizzazione di procedure per linserimento, la modifica e la consultazione dei dati archiviati secondo criteri prefissati;

34 34 Rassegna dei Principali Software programmi per la realizzazione di presentazioni multimediali programmi per la realizzazione di presentazioni multimediali, utile supporto per lattività dinsegnamento, per lesposizione di una relazione in ambito aziendale, per la presentazione di un evento; elaboratori digitali dimmagini e per la realizzazione di animazioni elaboratori digitali dimmagini e per la realizzazione di animazioni, con i quali è possibile ritoccare fotografie, realizzare fotomontaggi e immagini animate; programmi di grafica computerizzata, programmi di grafica computerizzata, per ottenere semplici disegni od anche immagini di precisione da utilizzare in ambito professionale; editor di suoni editor di suoni, per la manipolazione e la realizzazione di file audio; editor di pagine web editor di pagine web, ossia di file in formato HTML (HyperText Markup Language) pubblicabili sulla rete Internet, così da rendere i dati in essi contenuti consultabili direttamente con un programma di navigazione (browser). editor di suoni editor di suoni, per la manipolazione e la realizzazione di file audio;

35 35 Linguaggi di Programmazione algoritmo programma Il passaggio dallalgoritmo risolutore di un problema al corrispondente programma avviene mediante la codifica dellalgoritmo attraverso un linguaggio di programmazione. linguaggi di programmazione I linguaggi di programmazione differiscono tra di loro per la simbologia adottata per descrivere le operazioni e per le regole sintattiche con cui si compongono le istruzioni. linguaggi istruzioni Tutti i linguaggi riproducono una stessa serie di operazioni e processi effettivamente eseguibili dellelaboratore elettronico, ossia utilizzano una stessa tipologia di istruzioni.

36 36 Istruzioni di dichiarazione Istruzioni di dichiarazione, descrivono dati e variabili utilizzati dal programma, definendone tipo e struttura. Quanto più è evoluto il linguaggio, tanto più sono semplici le istruzioni per definire strutture complesse. Istruzioni di assegnazione Istruzioni di assegnazione, consentono di assegnare ad una variabile un valore dello stesso tipo della variabile. Istruzioni di controllo Istruzioni di controllo, sono istruzioni che richiedono salti di sequenza nellesecuzione del programma. Rientrano in questa categoria le istruzioni di selezione e di iterazione e i salti incondizionati Istruzioni di input/output Istruzioni di input/output, richiedono lingresso di informazione da una periferica alla memoria centrale oppure luscita di una informazione dalla memoria centrale ad una periferica. Istruzioni dei Linguaggi Di Programmazione

37 37 Gerarchie dei Linguaggi Di Programmazione linguaggio macchina L hardware del computer ha un suo linguaggio di programmazione detto linguaggio macchina ll linguaggio macchina manipola direttamente le sequenze di bit fornite dall' hardware, utilizzando le operazioni primitive dell' hardware stesso (operazioni aritmetiche). Programmare in linguaggio macchina è faticoso, costoso E comporta degli errori. Fin dagli anni 50 sono stati sviluppati linguaggi più evoluti, ciascuno dei quali progettato sopra un linguaggio più rudimentale.

38 38 Linguaggi di programmazione a basso livello Linguaggio macchina Linguaggio macchina Le operazioni disponibili sono quelle direttamente fornite dall' hardware; ogni operazione è codificata da una sequenza di bit; ogni dato è indicato dall'indirizzo binario della parola disequenza di bit memoria in cui è memorizzato. Ogni indirizzo è espresso in modo assoluto (rispetto a tutta la memoria disponibile). Un programma è una sequenza di bit, che viene direttamente interpretata dall' hardware. Linguaggio assembler Linguaggio assembler (o assemblativo) Le operazioni sono quelle direttamente fornite dall' hardware, ma sono indicate da nomi convenzionali (mnemonici); i dati sono indicati da nomi, che corrispondono a indirizzi. Gli indirizzi sono espressi in modo relativo rispetto all'inizio del programma, permettendo così modifiche più semplici. Il programma, per essere eseguito, viene tradotto in linguaggio macchina da un programmaprogramma assemblatore traduttore detto assemblatore. traduttore

39 39 Codice Binario Bit (Binary digit) Bit (Binary digit) unità elementare di informazione (0 circuito spento 1 circuito acceso). A= 00 B= 01 C= A= 00 B= 01 C= 10 O = 11 la parola babbo corrisponde alla stringa Oggi il codice più utilizzato è il codice ASCII che usa sete o otto bit per rappresentare ogni singolo carattere. es A C a ! ? byte Un gruppo di otto bit viene chiamato byte che è anche lunità di misura della capacità di memoria. Kilobyte (Kb 1024 byte ). Megabyte (MB 1024 x 1024 = byte). Gigabyte (Gb 1024x1024x1024 = byte).

40 40 Linguaggi di Programmazione ad Alto Livello Linguaggi procedurali Le operazioni disponibili sono ampie e non legate a quelle fornite dall' hardware. I dati sono indicati in modo totalmente indipendente dalla loro memorizzazione. Si tratta di linguaggi progettati affinchè la scrittura dei programmi sia semplice, elegante e, dunque, di facile comprensione e verifica. Per essere eseguito, un programma deve essere tradotto in linguaggio macchina da un programma traduttore detto compilatore, oppure deve essere interpretato (cioè eseguito da un altro programma, l'interprete). Linguaggi procedurali di rilievo sono (o sono stati) FORTRAN, COBOL, BASIC, Pascal, C. Tra i linguaggi procedurali alcuni sono detti orientati agli oggetti; tra questi ricordiamo C++ e Java.

41 41 Rassegna dei Principali Linguaggi FORTRAN (FORmula TRANslating system: sistema traduttore di formule) FORTRAN (FORmula TRANslating system: sistema traduttore di formule) Ideato nei primi anni 50 da John Backus, dipendente IBM, per consentire a tecnici e scienziati di risolvere problemi matematici in maniera automatica, senza ricorrere ai programmatori e con luso di una simbologia affine a quella matematica. Ha subito successive evoluzioni ed è utilizzato attualmente in ambito matematico. ALGOL (ALGOritmic Language: linguaggio algoritmico) ALGOL (ALGOritmic Language: linguaggio algoritmico) Nato alla fine degli anni 50, è stato sviluppato da Backus e Naur per applicazioni scientifiche. Importante caratteristica innovativa è la strutturazione del programma in blocchi, delimitati da un begin iniziale e da un end finale, che sarà ripresa dalla programmazione strutturata e dal linguaggio Pascal.linguaggio Pascal.

42 42 LISP (LISt Processor: elaboratore di liste) LISP (LISt Processor: elaboratore di liste) Linguaggio indirizzato alla manipolazione di espressioni simboliche e di dati strutturati ad albero, che risale alla fine degli anni 50. E applicato nella produzione di programmi traduttori, dato che le regole sintattiche di questi vengono rappresentate secondo una struttura ad albero. COBOL (COmmon Business Oriented Language: linguaggio orientato alle applicazioni commerciali) COBOL (COmmon Business Oriented Language: linguaggio orientato alle applicazioni commerciali) Ideato nel 1960 per sviluppare programmi per la soluzione di problemi aziendali nei campi dellamministrazione e del commercio (fatturazione, contabilità, stipendi, organizzazione di dati, gestione di file,…), ha subito successive evoluzioni ed è tuttora utilizzato.

43 43 BASIC (Begginners All-purpose Symbolic Instruction Code: codice generale distruzioni simboliche per principianti) BASIC (Begginners All-purpose Symbolic Instruction Code: codice generale distruzioni simboliche per principianti) Nato allinizio degli anni 60, è un linguaggio algoritmico di carattere generale non indirizzato ad alcuna applicazione specifica e di facile apprendimento ed utilizzo. La sua semplicità e versatilità ne ha determinata la rapida ed ampia diffusione e la realizzazione di successivi aggiornamenti migliorativi. Da esso discendono i linguaggi visuali orientati agli oggetti (visual BASIC), con interfaccia grafica di facile utilizzo (pulsanti, finestre,…).

44 44 PL1 (Programming Language/1: linguaggio di programmazione/1) PL1 (Programming Language/1: linguaggio di programmazione/1) Ideato nel 1965 per implementare programmi appartenenti a diverse aree applicative, scientifiche e gestionali, riassume in sé le caratteristiche dei precedenti FORTRAN, ALGOL e COBOL. LOGO (dal greco: pensiero, discorso) LOGO (dal greco: pensiero, discorso) Linguaggio adatto per lapprendimento della logica della programmazione da parte dei bambini, fu ideato nel Il programmatore dispone di semplici comandi con i quali guida lavanzamento di un cursore sullo schermo e riscontra gli effetti grafici del programma prodotto.

45 45 PASCAL (così denominato in onore del matematico francese Blaise Pascal). PASCAL (così denominato in onore del matematico francese Blaise Pascal). Ideato da Niklus Wirth nel 1970, con lintento di realizzare un linguaggio che facilitasse linsegnamento della scrittura di programmi, ha trovato e trova tuttora ampia applicazione in ambito didattico. Tale linguaggio consente un alto livello di strutturazione degli algoritmi e dei dati ed offre la possibilità di definire tipi di dati diversi da quelli standard.

46 46 C(linguaggio di programmazione C) C(linguaggio di programmazione C) La prima versione fu realizzata nel 1972 da Dennis Ritchie e si distingueva dai suoi predecessori per il fatto di implementare una vasta gamma di tipi di dato. E un linguaggio di alto livello che possiede un numero ristretto di parole chiave e di costrutti di controllo e un gran numero di operatori. Non possiede istruzioni di entrata/uscita né istruzioni per operazioni matematiche, ma questa sua apparente povertà di strumenti consente di realizzare qualsiasi programma in modo semplice. E stato definito il linguaggio di più basso livello tra i linguaggi di alto livello, perché è nato per lo sviluppo di sistemi operativi ossia software di basso livello, ma è un linguaggio potente come un linguaggio macchina e al tempo stesso di semplice utilizzo. Il sistema operativo UNIX è scritto con questo linguaggio.

47 47 C++ C++ Nel 1983 Bjarne Stroustrup inventò C++, che, partendo dal linguaggio C del quale estende la sintassi, introduceva la programmazione Orientata agli Oggetti (Object Oriented), un modo innovativo di progettare un programma che rende il codice più semplice e riutilizzabile. JAVA JAVA Nato a metà degli anni 90 ad opera della Sun Microsystem, è un linguaggio di programmazione Object Oriented utilizzabile su diverse piattaforme (Mac, PC, Unix e SGI) senza la necessità di modifiche o ricompilazioni. Si tratta di un linguaggio multipiattaforma, per il quale il compilatore non genera applicativi eseguibili dal computer, ma file che devono essere interpretati dalla JVM (Java Virtual Machine, un microprocessore virtuale) implementata sui vari sistemi. Ciò rende lesecuzione di unapplicazione Java più lenta dei programmi normali.

48 48 PHP (Hypertext Pre-Processor) PHP (Hypertext Pre-Processor) Linguaggio di scripting, si utilizza per scrivere programmi che vengono interpretati dal server su cui risiedono pagine web. Quando lutente richiede una pagina web contenente uno script PHP, il server richiama un modulo PHP che interpreta ed esegue il codice, restituendo al server codice web semplice (HTML) che viene passato al browser dellutente. Tale procedimento consente di costruire dinamicamente il contenuto della pagina web.

49 49


Scaricare ppt "1 Modulo 8 – Dal Problema Al Programma Piano Nazionale Di Formazione Degli Insegnanti Sulle Tecnologie Dellinformazione E Della Comunicazione."

Presentazioni simili


Annunci Google