“G.T.” Ministero dell’Istruzione dell’Università e della Ricerca ISTITUTO STATALE DI ISTRUZIONE SUPERIORE Unione Europea “Guido Tassinari” Cod. NAIS09100C – Via Fasano, 13 Pozzuoli –NA- 80078 Segreteria: tel 081 5265754 – Fax 0815266762 Web: www.itispozzuoli.it E_mail: [email protected] PROGRAMMAZIONE a. s. 2016 / 2017 INFORMATICA MATERIA Classe 4 Sez. H Prof. ( Teoria ) RIO CHIEREGO Prof. ( Laboratorio ) GIUSTINO ALTRUDA ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] PREMESSA: PER TUTTE LE CLASSI DEL SECONDO BIENNIO Premessa: finalità dell'insegnamento della disciplina INFORMATICA Secondo le linee guida ministeriali successivamente recepite e declinate nelle schede della disciplina “INFORMATICA” relative alle classi del secondo biennio concordate in sede dipartimentale, la finalità principale del corso di Informatica è quella di mettere lo studente in grado di individuare le soluzioni più idonee in funzione del problema da risolvere, sia dal punto di vista di efficacia che di efficienza, utilizzando le opportune metodologie e strumenti software per seguire il processo in tutte le sue fasi, a partire dall’analisi fino alla documentazione finale. La disciplina deve aiutare l’alunno a sviluppare capacità di sintesi e di analisi di fronte a problemi di varia natura e deve fornire le conoscenze e le abilità necessarie per l’uso di un sistema di elaborazione ad alti livelli. Deve essere inoltre da stimolo all’uso delle conoscenze acquisite parallelamente con i corsi di Sistemi e Reti, di Tecnologie e Progettazione di Sistemi Informatici e di Telecomunicazioni per sfruttare al meglio i livelli sottostanti della gerarchia e per comprendere i metodi di realizzazione dei linguaggi. Il corso di Informatica non deve, in ogni caso, assumere un carattere nozionistico-sintattico né ridursi ad una collezione di corsi sistematici sui vari linguaggi. I contenuti debbono essere sempre organizzati intorno a nodi concettuali, che vanno sempre affrontati a partire dai problemi ed applicati alla loro soluzione. Gli specifici linguaggi di programmazione trattati debbono essere visti come mezzi espressivi e come strumenti applicativi dello spazio teorico fondamentale onde evitare che la materia si riduca ad un insieme di esercizi svolti senza alcun tipo di progettualità. Per rendere più agevole la fruizione dei contenuti è stato approntato dal docente di teoria un sito web (www.riochierego.it) sul quale è pubblicata (e quindi pronta a disposizione del successivo downloading degli alunni), la serie completa in dispense dei contenuti teorici della disciplina svolti durante l’anno scolastico, arricchita da esempi esplicativi e da molti esercizi svolti. Inoltre gli strumenti e gli ambienti di laboratorio utilizzati sono stati scelti e resi disponibili per il download gratuito sempre sullo stesso sito, in modo che fossero facilmente reperibili ed istallabili PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 1 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] dagli studenti per il lavoro da svolgere a casa, oltre ad essere presenti nel laboratorio scolastico in quanto, per ottenere risultati significativi in questa disciplina, occorre impegno ed esercitazione continui che vanno ben oltre il numero di ore disciplinari previsto. Gli obiettivi disciplinari qui declinati in termini di conoscenze, abilità e competenze sono stati implementati dai docenti nel rispetto di quanto stabilito nella scheda disciplinare riepilogativa relativa alle classi quarte informatiche approvata all’unanimità in sede dipartimentale prima dell’inizio dell’anno scolastico. Al fine di una eventuale verifica si riporta integralmente la sopracitata scheda disciplinare approvata in sede dipartimentale: Elementi fondamentali della MATERIA INFORMATICA per l’anno scolastico 2016/2017 CLASSE: 4° H – 4° I - Docenti: R. Chierego – G. Guarino – G. Altruda – V. Gennino OBIETTIVI MINIMI COMPETENZE 1) Saper progettare e realizzare programmi che utilizzino la strategia di allocazione dinamica della memoria (in alternativa a quella statica) attraverso l’utilizzo delle variabili di tipo puntatore 2) Saper utilizzare le operazioni fondamentali possibili sulle strutture dati astratte lineari (lista, pila e coda) e non lineari (grafo, albero) 3) Saper utilizzare i concetti fondamentali della programmazione ad oggetti 4) Saper utilizzare un linguaggio ad alto livello per la realizzazione di interfacce grafiche e la gestione con l’utente guidata dagli eventi 5) Saper progettare, realizzare e gestire pagine web statiche. 6) Saper gestire con un linguaggio di programmazione di alto livello input/output verso file/archivi. PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H CONOSCENZE 1) Conoscere le tecniche di gestione dinamica della memoria con un linguaggio di programmazione di alto livello 2) Conoscere le strutture dati concrete offerte da un linguaggio di programmazione di alto livello per implementare una struttura dati astratta in modo statico ed in modo dinamico 3) Conoscere le basi della programmazione a oggetti: - Definizione di classi (attributi e metodi) - Definizione e istanziazione di oggetti - Tipologie di interazione tra gli oggetti - Ereditarietà e polimorfismo 4) Conoscere il concetto di interfaccia utente e interazione utente‐applicazione 5) Conoscere un linguaggio per la definizione delle pagine web (HTML) 6) Conoscere le tecniche di gestione e formattazione dell'I/O offerte da un linguaggio di programmazione di alto livello per gestire file di testo. 7) Conoscere il lessico e la terminologia tecnica di settore anche in lingua inglese PAG. 2 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] VERIFICHE INTERMEDIE I E II QUADRIMESTRE Almeno due prove scritte ISTITUZIONALI da tenere indicativamente: - nei mesi di NOVEMBRE e GENNAIO (I QUADRIMESTRE) - nei mesi di APRILE e MAGGIO (II QUADRIMESTRE), almeno una prova orale, almeno una prova di laboratorio (I e II QUADRIMESTRE) MODALITA’ a) Prove scritte: risposte a domande aperte, risposta a scelta multipla, sviluppo temi, progettazione e realizzazione semplici programmi e/o moduli software. b) Prove orali: interrogazioni, interventi significativi e partecipazione al dialogo educativo. c) Prove pratiche (laboratorio): lavori individuali e/o in gruppo, documentazione progetti. VALUTAZIONE Griglie di valutazione e relativi indicatori: vedi quanto deliberato in sede di Dipartimento PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 3 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] AZIONI PRELIMINARI ANALISI DELLA SITUAZIONE DI PARTENZA La classe 4°H è formata da 20 alunni tutti maschi tra cui tre alunni ripetenti provenienti dalla terza della medesima sezione di informatica. La classe appare sufficientemente scolarizzata ed abbastanza interessata al dialogo educativo: altresì educata nei confronti dei docenti, rispettosa delle regole in vigore e con un buon livello di unione ed integrazione tra gli alunni. Dal punto di vista delle competenze disciplinari possedute la classe ha mostrato sin dallo scorso a.s. di apparire divisa, quasi polarizzata, tra due gruppi molto disomogenei tra loro e dalle potenzialità e dagli orizzonti differenti. Un gruppetto numeroso di alunni appare più che sufficiente e motivato nell’approfondire ogni aspetto dei contenuti disciplinari proposti anche attraverso uno studio a casa abbastanza regolare e proficuo, un altro, altrettanto numeroso, appare poco volenteroso e, nonostante gli sforzi profusi, non sempre in grado di raggiungere livelli sufficienti, sia per carenze pregresse anche in altre discipline scientifiche correlate all’informatica, sia per il poco impegno nello studio a casa. Destano qualche preoccupazione dal punto di vista didattico le situazioni relative a 4/5 alunni che sono approdati al quarto anno superando a settembre con fatica 2/3 debiti nelle discipline di indirizzo, non riuscendo a colmare completamente alcune lacune specifiche nella disciplina in oggetto. OBIETTIVI FORMATIVI E COMPORTAMENTALI (CAPACITA’ COMPORTAMENTALI) Gli obiettivi formativi e comportamentali stabiliti in sede di consiglio classe in base agli elementi presenti nel PTOF per l’attuale a.s. saranno: AGIRE IN MODO AUTONOMO E RESPONSABILE : Accettare le consegne portando a termine compiti e rispettando i tempi di lavoro convenuti; sapersi inserire in modo attivo e consapevole nella vita sociale facendo valere i propri diritti nel rispetto delle regole, degli altri e dell’ambiente. COLLABORARE E PARTECIPARE : interagire in gruppo esercitando la collaborazione con compagni e adulti e ricercando soluzioni condivise per migliorare situazioni comuni, collettive e organizzate. OBIETTIVI DI COMPETENZA TRASVERSALI (COMPETENZE) Gli obiettivi cognitivi trasversali stabiliti in sede di consiglio classe in base agli elementi presenti nel PTOF per l’attuale a.s. saranno: IMPARARE AD IMPARARE: Organizzare il proprio apprendimento in maniera razionale anche in funzione dei tempi disponibili (ivi compresa la organizzazione funzionale del lavoro sia in classe che a casa, la gestione ordinata degli strumenti come quaderni o altro materiale di lavoro). PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 4 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] COMUNICARE Comprendere autonomamente varie tipologie di testi verbali, visivi, simbolici o grafici di diversa complessità. Produrre in maniera codificata varie tipologie di testi verbali, visivi, simbolici o grafici. RISOLVERE PROBLEMI: affrontare situazioni problematiche adeguatamente dati per fornire soluzioni valutando e utilizzando INDIVIDUARE COLLEGAMENTI E RELAZIONI: Individuare fatti e fenomeni riconoscendo in un insieme le singole parti cogliendo collegamenti e relazioni tra fenomeni, eventi e concetti diversi, individuando analogie e differenze, coerenze ed incoerenze, cause ed effetti. Tali obiettivi, oggetto di osservazione, intervento e valutazione dei singoli docenti resteranno validi fino al loro raggiungimento e concorrono alla determinazione della valutazione sommativa quadrimestrale di ciascun docente. OBIETTIVI DIDATTICI DISCIPLINARI (CONOSCENZE) PREMESSA: Si preferisce per questa classe, considerata la situazione di partenza, sempre in accordo a quanto stabilito nelle linee guida presentate in sede di Coordinamento di Materia, insistere nel corso del presente a.s. su quei contenuti disciplinari che permettano il rafforzamento della conoscenza del linguaggio di programmazione imperativo classico (linguaggio C) utilizzato nel corso dell’anno scolastico precedente, piuttosto che presentare ed utilizzare esclusivamente i principi della programmazione ad oggetti all’interno di un nuovo linguaggio di programmazione (linguaggio C++) che potrebbero, in mancanza dell’assimilazione del precedente, aumentare la confusione e l’incertezza tecnica complessiva. Si riportano gli obiettivi disciplinari massimi e quelli minimi previsti: Obiettivi massimi Saper individuare l’algoritmo e la struttura dati più efficiente tra quelli che risolvono lo stesso problema e saperlo codificare utilizzando un linguaggio di programmazione con paradigma imperativo Saper individuare l’algoritmo e la struttura dati più efficiente tra quelli che risolvono lo stesso problema e saperlo codificare utilizzando un linguaggio di programmazione con paradigma ad oggetti Saper progettare e realizzare un programma in Visual Basic e la relativa GUI Saper risolvere problemi non noti in modo autonomo. Saper approfondire in modo autonomo gli argomenti proposti. Saper utilizzare le conoscenze e le abilità acquisite in modo interdisciplinare. PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 5 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] Obiettivi minimi Teoria Conoscere alcune strategie/metodologie per l'analisi e la risoluzione dei problemi: dati ingresso/uscita,con la metodologia top-down; Saper analizzare il testo di un problema per identificare le sue richieste. Saper impostare la risoluzione di un problema per raffinamenti successivi Conoscere i concetti di funzione e procedura con parametri. Conoscere le strutture lineari ADT: pila, coda e lista. Conoscere le strutture non lineari ADT: grafi ed alberi. Conoscere gli archivi e la loro implementazione su file. (TEO-LAB) Saper implementare i principali ADT (TEO-LAB) Saper definire e manipolare strutture di dati connesse da puntatori. (TEO-LAB) Conoscere i principali tipi di accesso ai dati memorizzati su file: accesso sequenziale e diretto (TEO-LAB) Saper interpretare codice scritto nel linguaggio di programmazione studiato. (TEO-LAB) Saper utilizzare il linguaggio di programmazione utilizzato in laboratorio per codificare gli algoritmi risolutivi. (TEO-LAB) Conoscere la definizione e le proprietà dei principali tipi di dati strutturati e gli algoritmi per la loro manipolazione. (TEO-LAB) Conoscere i principali algoritmi di gestione dei file: inserimento, cancellazione, stampa, ricerca. Laboratorio Saper scrivere programmi composti da moduli contenuti anche in file separati Saper utilizzare l'ambiente di sviluppo per individuare e correggere gli errori di un programma (debugging) Conoscere gli elementi essenziali presenti nella documentazione tecnica e utente di un programma. Saper produrre la documentazione tecnica e utente di un programma. (TEO-LAB) Saper interpretare codice scritto nel linguaggio di programmazione studiato. (TEO-LAB) Saper utilizzare il linguaggio di programmazione utilizzato in laboratorio per codificare gli algoritmi risolutivi. (TEO-LAB) Saper implementare in un linguaggio di programmazione i principali ADT lineari: lista, pila e coda (TEO-LAB) Saper leggere, inserire, aggiornare e cancellare dati in un linguaggio di programmazione da un file sequenziale (TEO-LAB) Saper utilizzare un linguaggio per la definizione delle pagine web (HTML) PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 6 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] PROGRAMMAZIONE DIDATTICA E TEMPI Risulta difficile poter prevedere con precisione i tempi per lo svolgimento dei vari argomenti, poiché ciò dipende da diversi fattori quali: eventuali difficoltà incontrate dagli studenti; maggiore/minore interesse della classe per un certo argomento (alcuni argomenti, su richiesta degli alunni, potrebbero richiedere approfondimenti, altri no). Verrà quindi riportato un piano di lavoro all’interno del quale i contenuti disciplinari sono organizzati in moduli costituiti da più unità didattiche. TEORIA MODULO 1: Dati e sottoprogrammi Obiettivi Usare la metodologia di programmazione top-down, aumentando l’astrazione sul controllo tramite funzioni e procedure; Aumentare la capacità di programmazione con sottoprogrammi e strutture di controllo, scrivendo programmi ricorsivi; Iniziare a comprendere le varie tipologie di classificazione delle strutture dati; Capire quando un programma viene eseguito e che il computer risponde ad eventi eseguendo programmi Conoscenze da apprendere Conoscere il concetto di ambiente di valutazione delle variabili e delle espressioni; Conoscere il concetto di ambito di visibilità di una variabile; Conoscere la definizione e l’utilizzo di un sottoprogramma; Conoscere la distinzione tra funzione e procedura Competenze da acquisire Saper realizzare programmi strutturati; Saper utilizzare la giusta tipologia di dato; Saper costruire nuove tipologie di dato; Saper realizzare programmi utilizzando la metodologia top-down; Saper individuare e realizzare sottoprogrammi: procedure e funzioni; Saper applicare i meccanismi del passaggio dei parametri; Saper realizzare definizioni ricorsive e programmi ricorsivi; Saper utilizzare le strutture di dati. UNITA’ DIDATTICA 1: Dati semplici e strutturati (Ripetizione) 1.1 I tipi di dati e l’astrazione sui dati 1.2 Le strutture dati 1.3 Il tipo strutturato Vettore 1.4 Operazioni sui Vettori 1.5 Algoritmi di ricerca ed ordinamento PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H 1.6 Le matrici 1.7 Operazioni sulle Matrici 1.8 Il record 1.9 Lavoriamo sul Record 1.10 I Vettori di record PAG. 7 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] UNITA’ DIDATTICA 2: Una metodologia di programmazione: l’approccio top-down 2.1 Metodologia top-down e bottom-up 2.2 I sottoprogrammi 2.3 L’esecuzione di un sottoprogramma 2.4 Le procedure 2.5 Le funzioni 2.6 Ambiente e risorse locali e globali 2.7 Le regole di visibilità o “scope” 2.8 I parametri (attuali e formali) 2.9 Il passaggio dei parametri 2.10 La ricorsività (diretta, indiretta e multipla) MODULO 2: La programmazione ad oggetti Obiettivi Conoscere i concetti di classe ed istanza Conoscere i concetti di attributo e metodo; Conoscere i concetti di variabile e metodo istanza; Conoscere le tecniche per realizzare l’incapsulamento, l’ereditarietà ed il polimorfismo; Conoscere i concetto di contenitore e componenti standard per implementare una GUI Conoscenze da apprendere Conoscere il concetto classe, oggetto ed istanza; Conoscere i concetti di attributo e metodo; Conoscere il concetto di stato di un oggetto; Conoscere i metodi costruttori; Conoscere il concetto di incapsulamento e information hiding; Conoscere il concetto di variabile e metodo di classe; Conoscere il concetto di ereditarietà; Conoscere il concetto di polimorfismo, ridefinizione ed overloading di metodi; Conoscere il concetto di oggetto GUI; Conoscere il concetto di evento come oggetto; Conoscere come collegare eventi agli oggetti GUI (mouse, tastiera, etc.) Competenze da acquisire Saper individuare e costruire una classe di oggetti; Saper impostare un semplice programma principale ad oggetti; Saper descrivere una classe impostando la visibilità di attributi e metodi; Saper descrivere una classe utilizzando attributi e metodi di classe; Saper creare gerarchie di classi e gerarchie di oggetti; Saper sfruttare i vantaggi offerti dall’ereditarietà; Saper sfruttare i vantaggi offerti dal polimorfismo; Saper operare con i contenitori e con i componenti di una GUI; Saper inserire oggetti GUI all’interno di contenitori. UNITA’ DIDATTICA 1: Introduzione agli oggetti 1.1 Nascita e scopo della programmazione ad oggetti 1.2 Classi ed oggetti. 1.3 Attributi e metodi. 1.4 Definire una classe 1.5 Creare degli oggetti: i metodi costruttori PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 8 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] UNITA’ DIDATTICA 2: Incapsulamento e information hiding 2.1 Interfacce con l’esterno: Incapsulamento ed information hiding 2.2 Oggetti come parametri 2.3 Oggetti come valori di ritorno 2.4 Il riferimento oggetto corrente 2.5 Variabili e metodi di classe UNITA’ DIDATTICA 3: Ereditarietà e polimorfismo 3.1 Ereditarietà e gerarchie di classi 3.2 Chiamata di un metodo della superclasse 3.3 Tipi di ereditarietà 3.4 Polimorfismo 3.5 I metodi distruttori UNITA’ DIDATTICA 4: Le relazioni tra le classi 4.1 Il linguaggio di modeling UML: il diagramma delle classi 4.2 Associazioni tra classi (Use Relationship) 4.3 Aggregazioni tra classi (Containment Relationship) 4.4 Specializzazioni-Generalizzazioni tra classi (Inheritance Relationship) 4.5 Rappresentazione in un diagramma delle classi dei tre tipi di relazioni UNITA’ DIDATTICA 5: GUI e programmazione guidata dagli eventi 5.1 Le interfacce utente 5.2 Oggetti componenti ed oggetti contenitori 5.3 Creazione ed utilizzo dei contenitori e dei componenti standard 5.4 Disposizione degli oggetti all’interno dei contenitori 5.5 La gestione degli eventi MODULO 3: Strutture di dati Obiettivi Disporre di tipi di dati più complessi: i dati strutturati. Comprendere il concetto di astrazione sui dati o ADT; Capire l’importanza della separazione tra struttura dati astratta e struttura dati concreta; Analizzare gli algoritmi che implementano le operazioni sulle strutture dati astratte; Confrontare i diversi tipi di strutture dati astratte per scegliere la struttura che meglio si addice alle esigenze emerse dall’analisi del problema; Confrontare due o più implementazioni di strutture astratte dal punto di vista della complessità computazionale; Capire la differenza di utilizzo tra strutture lineari e strutture non lineari. PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 9 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] Conoscenze da apprendere Conoscere il concetto di struttura dati astratta o ADT (Abstract Data Type); Conoscere la differenza tra dati semplici e dati strutturati; Conoscere le strutture dati concrete (record e puntatori); Conoscere le strutture dati astratte (lineari e non lineari); Sapere utilizzare l’allocazione della memoria sequenziale e non sequenziale, statica e dinamica. Competenze da acquisire Saper distinguere una struttura astratta dalla sua implementazione con una struttura di dati concreta; Saper utilizzare le strutture dati concrete per implementare una struttura dati astratta in modo statico ed in modo dinamico; Saper implementare strutture dati astratte con algoritmi iterativi e ricorsivi. UNITA’ DIDATTICA 1: Puntatori ed allocazione dinamica della memoria 1.1 L’allocazione della memoria 1.2 L’allocazione dinamica della memoria 1.3 I puntatori UNITA’ DIDATTICA 2: Strutture astratte lineari 1.4 Come allocare dati nello heap 1.5 Utilizziamo le variabili dinamiche 1.6 La matematica dei puntatori 2.1 Il nodo 2.2 La sequenza 2.3 Le specifiche ADT sequenza 2.4 La pila o stack 2.5 Le specifiche ADT della pila o stack 2.6 La coda o queue 2.7 Le specifiche ADT della coda o queue UNITA’ DIDATTICA 3: Implementazione delle strutture astratte lineari 3.1 Implementazione di una pila con allocazione sequenziale e statica 3.2 Implementazione di una coda con allocazione sequenziale e statica 3.3 Limiti nell’utilizzo dell’allocazione sequenziale estatica della memoria 3.4 Allocazione concatenata e dinamica della memoria 3.5 Implementazione di una pila con allocazione concatenata e dinamica 3.6 Implementazione di una coda con allocazione concatenata e dinamica UNITA’ DIDATTICA 4: Strutture astratte non lineari 4.1 Le strutture non lineari: generalità 4.2 I grafi 4.3 A cosa servono i grafi PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H 4.4 Gli alberi 4.5 Attraversamento di un albero (pre order o post order) 4.6 Gli alberi binari PAG. 10 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] MODULO 4: Archivi e file Obiettivi Familiarizzare con la memorizzazione delle informazioni sui supporti di massa; Comprendere ed analizzare peculiarità, pregi e difetti della memorizzazione esterna dei dati; Scegliere l’organizzazione di un archivio più consona alle richieste della realtà esaminata. Conoscenze da apprendere Conoscere la differenza tra archivi e file; Conoscere le caratteristicge intrinseche dei file in funzione del supporto di memorizzazione sul quale saranno implementate; Comprendere i fattori che influenzano le scelte dell’organizzazione dei file; Conoscere le varie tecniche implementative dei file. UNITA’ DIDATTICA 1: Archivi di dati e file 1.1 Archivi: nozioni di base 1.2 Archivi: caratteristiche 1.3 Archivi e file 1.4 Il concetto di chiave 1.5 Organizzazione fisica e logica degli archivi Competenze da acquisire Saper riconoscere archivi e file; Saper organizzare un archivio; Saper scegliere l’organizzazione più idonea alla risoluzione di un problema; Saper individuare le situazioni in cui è più idoneo utilizzare l’organizzazione sequenziale e quelle in cui risulta più corretta l’applicazione di un’organizzazione diretta. 1.6 Le operazioni sugli archivi 1.7 Operazioni logiche e pseudoistruzioni 1.8 La dichiarazione dei file 1.9 I diagrammi di flusso dei dati UNITA’ DIDATTICA 2: Il trattamento degli archivi sequenziali 2.1 Archivi sequenziali: nozioni di base 2.2 Operazioni logiche sugli archivi sequenziali 2.3 Inserimento 2.4 Aggiornamento (riscrittura PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H 2.5 Cancellazione 2.6 Ordinamento 2.7 Ricerca 2.8 L’organizzazione sequenziale con indice PAG. 11 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] LABORATORIO Considerando che sulle postazioni del nostro laboratorio è attualmente presente il sistema operativo a pagamento Windows (nella versione 7 professional) al posto di sistemi operativi completamente gratuiti tipo Linux, si farà riferimento a software freeware funzionanti in tale ambiente operativo (o in eventuali altre sue versioni) confidando sul fatto che, essendo comunque il più diffuso, sia già istallato anche sui pc a casa degli studenti. Per quel che riguarda il linguaggio HTML per realizzare pagine web statiche si è scelto di utilizzare il software gratuito NOTEPAD++ già presente in laboratorio. Per quel che riguarda il linguaggio di programmazione da utilizzare per implementare in laboratorio alcuni argomenti teorici abbastanza impegnativi quali l’allocazione dinamica della memoria e la gestione dei file, si è scelto di continuare ad utilizzare il linguaggio C/C++, già conosciuto dagli allievi nel precedente anno scolastico, in quanto l’utilizzo di un nuovo linguaggio di programmazione relativo ad un nuovo paradigma di programmazione avrebbe aggiunto ulteriori difficoltà che avrebbero finito con l’interferire con la corretta acquisizione delle relative competenze. Per quel che riguarda la parte relativa alla programmazione orientata agli oggetti ed alla realizzazione di interfacce grafiche con la relativa gestione degli eventi, si è scelto di utilizzare Visual Studio Express 2008 già presente in laboratorio, in quanto ha il vantaggio sia di essere gratuito e liberamente scaricabile dalla rete, sia di essere un ambiente di sviluppo di tipo RAD N.B. Per i dettagli in termini di obiettivi, competenze e conoscenze delle attività di laboratorio proposte nel corso dell’anno scolastico si rimanda ad un eventuale documento contenente il “Piano delle esercitazioni programmate” che dovrebbe essere redatto e presentato in proprio dall’ITP coerentemente con quanto stabilito sia in sede di coordinamento per materia sia nel presente documento di programmazione teorica disciplinare. Vengono qui riportati, solo a titolo indicativo, gli argomenti di laboratorio da svolgere in accordo ai contenuti teorici disciplinari ipotizzati dal presente documento di programmazione. PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 12 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] MODULO 1: Il linguaggio C UNITA’ DIDATTICA 1: Funzioni e procedure Definizione di una funzione, Accesso ad una funzione, Ingresso degli argomenti nella funzione, Specifica del tipo di argomento, Prototipi di funzioni, Ricorsione UNITA’ DIDATTICA 2: Struttura dei programmi Classi di memoria, Variabile automatiche, Variabili esterne, Variabili statiche, Programmi a file multipli UNITA’ DIDATTICA 3 Array e strutture Definizione di un array, Elaborazione di un array, Passaggio di un array ad una funzione, Array a più dimensioni, Array e stringhe, Definizione di una struttura, Elaborazione di una struttura, Datatype definiti dall’utente (typedef), Passaggio di strutture ad una funzione, Array di strutture. UNITA’ DIDATTICA 4 I Pointer Dichiarazioni di pointer, Passaggio di pointer ad una funzione, Pointer ed array monodimensionali, Operazioni sui pointer, Pointer ed array a più dimensioni, Allocazione dinamica e pointer UNITA’ DIDATTICA 5 Unioni Definizione ed elaborazione di una unione UNITA’ DIDATTICA 6 File dati Apertura e chiusura di un file dati, Creazione di un file dati, Come processare un file dati, MODULO 2: Il linguaggio C++ UNITA’ DIDATTICA 1: Peculiarità del linguaggio C++ rispetto al C – iostream.h – Il tipo bool – L’operatore di scope resolution :: – Il qualificatore const – La definizione di linkage – Definizione ed uso del namespace – La direttiva using – Le funzioni con argomenti di default – L’overloading e l’overriding delle funzioni – Le variabili reference – La classe string PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 13 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] UNITA’ DIDATTICA 2: Linguaggio C++ ed applicazione dei principi base dell’OOP programming – La definizione di una classe: le sezioni public, private e protected – Metodi e proprietà di una classe – Allocazione statica e dinamica di una istanza di una classe: le funzioni new e delete – Costruttore e distruttore di una classe – L’overloading del costruttore di una classe: il polimorfismo in C++ – Ereditarietà semplice e multipla: l’overriding di un metodo – Le funzioni virtuali UNITA’ DIDATTICA 3 Array e strutture Definizione di un array, Elaborazione di un array, Passaggio di un array ad una funzione, Array a più dimensioni, Array e stringhe, Definizione di una struttura, Elaborazione di una struttura, Datatype definiti dall’utente (typedef), Passaggio di strutture ad una funzione, Array di strutture. UNITA’ DIDATTICA 4 I Pointer Dichiarazioni di pointer, Passaggio di pointer ad una funzione, Pointer ed array monodimensionali, Operazioni sui pointer, Pointer ed array a più dimensioni, Allocazione dinamica e pointer MODULO 3: Il linguaggio HTML ed i CSS Obiettivi Abituarsi all’utilizzo di linguaggi di tipo markup; Comprendere la differenza tra linguaggi di programmazione e linguaggi dichiarativi; Abituarsi alla realizzazione ed al ritocco di pagine Web senza strumenti di tipo WYSIWYG; Capire come è composta una pagina ipermediale utilizzabile in Internet. Conoscenze da apprendere Conoscere le funzioni dei linguaggi di tipo markup; Conoscere le caratteristiche fondamentali del linguaggio HTML; Conoscere le potenzialità del linguaggio CSS; Comprendere la simbiosi tra HTML e CSS Competenze da acquisire Saper scrivere un documento HTML e leggerlo con un browser; Saper applicare formattazioni semplici e complesse ai documenti; Saper gestire la multimedialità ed i suoi elementi; Personalizzare documenti HTML esistenti UNITA’ DIDATTICA 1: Elementi di base di HTML e CSS 1.1 Da cosa è costituito un documento ipermediale 1.2 Che cos’è l’HTML 1.3 Istruzioni o elementi (tag) dell’HTML 1.4 Cosa occorre per visualizzare e scrivere documenti HTML 1.5 Elementi di base di un documento HTML 1.6 I commenti PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 14 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] 1.7 Cominciamo ad utilizzare il CSS 1.8 Fogli di stile in linea, incorporati o esterni UNITA’ DIDATTICA 2: Elementi di strutturazione di un documento 2.1 Le tabelle 2.2 Costruire una tabella riga per riga 2.3 Strutturazione del testo 2.4 Come definire un’area 2.5 I caratteri speciali 2.6 Gli elenchi non ordinati oppure ordinati (o numerati) UNITA’ DIDATTICA 3: Collegamenti ipermediali, immagini ed animazioni 3.1 Ancore e link 3.2 I link esterni ed interni 3.3 Modifica del colore dei link 3.4 Risoluzione e colori: colorare lo sfondo 3.5 Le misure dei font 3.6 Le immagini nei documenti HTML 3.7 Immagini ed ancore 3.8 Le mappe sensibili MODULO 4: Il linguaggio di programmazione Visual Basic.NET Obiettivi Riconoscere il ruolo degli ambienti di sviluppo RAD come Visual Studio Express 2008; Gestire l’ambiente di lavoro ed i progetti implementati con Visual Studio Express 2008 ; Conoscere le istruzioni di controllo del linguaggio di programmazione Visual Basic; Conoscere i tipi di dato semplice del linguaggio di programmazione Visual Basic; Conoscere i tipi di dato strutturato del linguaggio di programmazione Visual Basic: array e record; Costruire applicazioni Windows Form Gestire i controlli dell’interfaccia grafica Implementare e gestire gli eventi associati ad una interfaccia grafica Conoscenze da apprendere Gestire progetti di tipo console Creare programmi che utilizzino istruzioni di sequenza, selezione ed iterazione; Conoscere i tipi di dato semplice e gli operatori principali del linguaggio Creare programmi che utilizzano routine Comprendere come avviene il passaggio dei parametri alle routine Conoscere il tipo di dato strutturato array Conoscere il tipo di dato strutturato record PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H Competenze da acquisire Saper creare applicazioni di tipo console; Saper scrivere programmi che utilizzano strutture logiche di selezione unaria, binaria ed ennaria; Sapere scrivere programmi che utilizzano i cicli Saper applicare i tipi standard offerti dal linguaggio Saper utilizzare il tipo di dato strutturato array Saper utilizzare il tipo di dato strutturato record Sapere scrivere programmi che contengono funzioni e procedure Sapere creare applicazioni di tipo Windows Form PAG. 15 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] Gestire progetti di tipo Windows Form Sapere gestire progetti contenenti elementi visuali Saper riconoscere I controlli visuali ed I controlli Sapere creare applicazioni che contengono di dialogo controlli visuali Riconoscere i metodi, le proprietà e gli eventi Saper applicare eventi ai controlli ed alle routine dei principali controlli visuali Saper associare routine ad eventi ai controlli visuali; UNITA’ DIDATTICA 1: I progetti a linea di comando 1.1 L’ambiente di lavoro e la creazione di nuovi progetti 1.2 Le variabili, le costanti ed il dialogo con l’utente 1.3 Gli operatori matematici e le conversioni 1.4 La selezione unaria, binaria ed ennaria 1.5 Gli operatori logici UNITA’ DIDATTICA 2: I cicli, gli array e le routine 2.1 Le strutture di ripetizione per VERO e per FALSO 2.2 Le strutture di ripetizione con contatore 2.3 Le routine: procedure e funzioni 2.4 Gli array: vettori e matrici 2.5 I record UNITA’ DIDATTICA 3: L’interfaccia grafica e la programmazione visuale 3.1 Le applicazioni Windows Form 3.2 I controlli fondamentali dell’interfaccia grafica 3.3 Le principali proprietà e metodi dei controlli dell’interfaccia grafica 3.3 Visual basic e la programmazione orientata agli oggetti PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 16 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] ATTIVITA’ DI VERIFICA E DI VALUTAZIONE METODOLOGIE Al fine di ottenere i risultati prefissi negli obiettivi, l’insegnamento della materia, verrà strutturato in diverse fasi : Lezioni frontali con spiegazione in classe degli argomenti proposti, corredati da presentazioni, esempi ed esercizi di difficoltà crescente. Esercitazioni proposte dal libro di testo ma anche direttamente fornite dall’insegnante, alcune delle quali sviluppate interamente in classe, atte a stimolare domande ed osservazioni da parte degli alunni. Attività laboratoriale con utilizzo degli strumenti messi a disposizione (pc, stampante, software) per l’implementazione pratica di esercizi teorici. Problem solving Realizzazione di progetti software, individuali e di gruppo atti anche a valutare la capacità di svolgere lavori di gruppo. Occorre comunque tener presente che l’insegnamento di questa materia estremamente dinamica, non può svolgersi secondo uno schema prefissato e rigido, bensì flessibile e pronto a relazionarsi con corsi con cui può interagire ed integrarsi. Resta fondamentale la necessità di insegnare agli alunni che conoscere i principi ed i fondamenti dell’informatica non consiste nello scrivere direttamente al pc un programma ed una procedura in un determinato linguaggio di programmazione, bensì avere imparato le tecniche di progettazione generali che portano, attraverso l’analisi e lo studio di un problema concreto, la pianificazioni ed il disegno concettuale dei dati e delle procedure che risolvono il problema proposto. VERIFICHE Gli obiettivi disciplinari coinvolti in tutte le prove di verifica, a prescindere dalla tipologia (scritta, orale o pratica), saranno coerenti con quelli stabiliti nelle scheda disciplinare discussa ed approvata in sede di Coordinamento di Materia e con quelli declinati, a partire da loro, nel presente documento di programmazione didattica. Il numero delle prove previste saranno almeno due scritte con valenza istituzionale, almeno una orale ed almeno due di laboratorio per ciascun quadrimestre. A seconda degli argomenti e della situazione, verranno utilizzati più strumenti atti a valutare la preparazione del discente, in particolare: questionari e serie di esercizi a risposta multipla e/o aperta per verificare le abilità di PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 17 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] applicazione; soluzioni di problemi per rilevare capacità di analisi e sintesi; colloquio per rilevare capacità di argomentazione e di orientamento all’interno del programma. Saranno considerate valide anche le prove di lavori di gruppo e le interrogazioni dal posto. Verrà prestata particolare attenzione all’impegno, alla crescita, alle capacità acquisite, alla collaborazione in aula, al comportamento ed al raggiungimento degli obiettivi. Le prove pratiche verranno progettate e proposte, dall’ITP coerentemente con quanto stabilito in sede di programmazione congiunta con l’insegnante di teoria. STRUMENTI, SUSSIDI E SPAZI Gli allievi utilizzeranno nelle ore di corso essenzialmente o un aula tradizionale o il laboratorio di informatica. Pertanto avranno a disposizione: lavagna di ardesia o metallica; libri di testo (anche quelli presenti in una piccola biblioteca in laboratorio); risorse (appunti, esercizi, esempi, software, etc.) scaricabili gratuitamente dal sito web del docente di teoria; siti internet specifici; laboratorio di informatica con aula LIM VALUTAZIONE Per i dettagli riguardo il meccanismo di valutazione “sommativa” utilizzato in ciascuna valutazione (scritta, orale e di laboratorio) e le singole “componenti” compartecipanti (competenze, capacità, conoscenze) con i relativi “pesi”, si rimanda a quanto stabilito nel POF di istituto. ATTIVITÀ INTEGRATIVE E DI RECUPERO: PROPOSTE Attività di recupero in itinere da svolgersi alla fine del primo quadrimestre con svolgimento di esercizi significativi riepilogativi. PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 18 DI 19 ISIS “GUIDO TASSINARI”- POZZUOLI Sede: via Fasano, 13- 80078 Pozzuoli (Napoli) Tel :0815265754 - Fax : 0815266762 Sito Web : www.itispozzuoli.it - E-Mail : [email protected] LIBRI DI TESTO ADOTTATI INFORMATICA TEORIA Titolo Autori Editore CLOUD P. GALLO - F. SALERNO Minerva Italica INFORMATICA LABORATORIO Titolo Autori Editore HTML, CSS, JAVASCRIPT P. GALLO - F. SALERNO Minerva Italica POZZUOLI, 20 / 10 / 2016 FIRMA PROF. RIO CHIEREGO PROF. GIUSTINO ALTRUDA PROGRAMMAZIONE DIDATTICA INFORMATICA 4 H PAG. 19 DI 19