PROGRAMMA DI INFORMATICA Classe 4°A Genovesi a.s. 2015-2016 Docenti: Proff. Massimiliano Iennaco, Caterina D’Alessandro Java Eclipse: processo di sviluppo e compilazione ed esecuzione dei programmi Blocchi e regole di visibilità delle variabili. Java doc, librerie standard, Classe String e caratteri. Metodi ausiliari Algoritmi sulle stringhe Ricerca numero di vocali in una stringa Dati in input (da tastiera) una frase ed una stringa verificare quante volte la stringa è contenuta nella frase. Data una stringa in input produrre una nuova stringa senza spazi Data una stringa in input produrre una nuova stringa eliminando gli spazi in eccesso (al piu deve esserci uno spazio tra una parola e l’altra) Algoritmo di verifica se una stringa è palindroma e se una stringa è anagramma di un’altra Programmazione ad oggetti e Java Introduzione ai concetti di classe ed oggetto Classi, istanze di classi, diagramma delle classi UML. Tecniche di progettazione ad oggetti (analisi dei sostantivi e dei verbi) Dichiarazione e utilizzo di una classe, dichiarazione degli attributi, dichiarazione dei metodi. Costruttori Utilizzo di oggetti e parola chiave this. Array di oggetti ed array di tipi primitivi Tipi di dato riferimento e passaggio dei parametri ad i metodi. Attributi e metodi static Diagramma degli oggetti UML, Riferimenti nulli, uguaglianza tra oggetti, copia dei riferimenti. Mascheramento delle informazioni (information hiding), interfaccia di classe. Gestione delle Eccezioni I Package e come strutturarli Ereditarietà singola e multipla. Implementazione dell’ereditarietà Polimorfismo, Parola chiave super, overloading ed overriding Classi e metodi final. Librerie. Gerarchie di classi Chiamate a metodi come scambio di messaggi tra classi Strutture di dati e file Strutture dati dinamiche, array dinamici. Vector (caratteristica della classe; Costruttori, metodi principali, significato di size e capacity del vettore). Esempio di utilizzo di classe Vector ed approfondimento da Internet (java doc) in merito ai metodi della classe Vector. I flussi di input/output, i file. Operazioni fondamentali sui file. File strutturati e file di testo e gerarchia delle classi per la gestione dei file. File strutturati e File di testo Processo di sviluppo del software Analisi del dominio ed analisi dei requisiti utente 1 Progettazione delle classi utilizzando il metodo dei sostantivi e dei verbi Esercitazioni in laboratorio in merito agli argomenti svolti Materiale del corso Libro di testo: Java. Programmazione ad oggetti e applicazioni android. Lorenzi, Rizzi Atlas Altro materiale: Slide su java e programmazione ad oggetti consegnate in Laboratorio. Appunti presi in classe http://www.di.unipi.it/~milazzo/teaching/AA1314-ProgJava/slides/6-Blocchi-e-cicli.pdf http://www.di.unipi.it/~milazzo/teaching/AA1314-ProgJava/slides/8-Classi-Oggetti-Stringhe.pdf http://www.di.unipi.it/~milazzo/teaching/AA1314-ProgJava/slides/7-Metodi-ausiliari.pdf http://www.dia.uniroma3.it/java/fondinf/materiale1112/2011_E07_Esempi_Problemi_Iterativi.pdf (per stringhe palindrome ed anagrammi) https://docs.oracle.com/javase/7/docs/api/java/util/Vector.html Alunni: ______________________ Docenti: Prof. Massimiliano Iennaco ______________________ Prof. ssa Caterina D’Alessandro _______________________ 2