Programmazione Procedurale in Linguaggio C++
|
|
- Carla Murgia
- 5 anni fa
- Visualizzazioni
Transcript
1 Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 6 Metodologia di Sviluppo - b versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università della Basilicata mecca@unibas.it Sottoprogrammi: Metodologia di Sviluppo >> Sommario Sommario Ricapitolando Tecniche di Test Linee Guida per la Scrittura del Codice 2
2 Sottoprogrammi: Metodologia di Sviluppo >> Ricapitolando Ricapitolando In sintesi, ci sono buone e cattive notizie Buone notizie il metodo suggerito aiuta concretamente ad affrontare la soluzione di problemi complessi sequenza di passi sistematica centrata sulla scrittura del codice Cattive notizie non rappresenta di per sé la soluzione a tutti i problemi 3 Sottoprogrammi: Metodologia di Sviluppo >> Ricapitolando Ricapitolando Il metodo è utile nella soluzione di problemi standard che rappresentano la maggioranza dei casi Ma, per essere un ottimo programmatore occorre anche essere creativi essere in grado di concepire soluzioni a volte originali a problemi meno usuali la creatività non si impara 4
3 Sottoprogrammi: Metodologia di Sviluppo >> Ricapitolando Ricapitolando Statisticamente, al giorno d oggi il 90% circa del software sviluppato al giorno d oggi è software client-server con una logica applicativa molto semplice (interfaccia utente per sistemi di basi di dati) competenze standard Il resto del software applicazioni particolari che richiedono seria riflessione dal punto di vista della soluzione 5 Sottoprogrammi: Metodologia di Sviluppo >> Dopo la scrittura del codice è necessario condurre le verifiche (test) ed eliminare gli eventuali errori logici Il metodo tipico di test test manuale e interattivo il programmatore esegue manualmente i test e verifica che il comportamento sia quello atteso 6
4 Sottoprogrammi: Metodologia di Sviluppo >> Piano dei test è necessario mettere a punto un test per ciascuna condizione tipica di utilizzo del programma che copra anche i casi particolari Nota dopo ogni modifica al codice è necessario ripetere tutto il piano dei test potrebbero essere stati introdotti errori 7 Sottoprogrammi: Metodologia di Sviluppo >> Un esempio sovrapposizione di rettangoli Caratteristiche del problema logica applicativa complessa vari raffinamenti nella scelta della soluzione (concepimento della formula) piano di test elaborati 8
5 Sottoprogrammi: Metodologia di Sviluppo >> TEST n. 1 TEST n. 2 rettangolo 1: (1, 2) (7, 6) rettangolo 1: (-2, 3.5) (3, 5.5) rettangolo 2: (3, 1) (8, 5) rettangolo 2: (2, 1) (6.2, 3) sovrapposizione: 12 cm 2 sovrapposizione: 0 9 Sottoprogrammi: Metodologia di Sviluppo >> TEST n. 3 TEST n. 4 rettangolo 1: (-1, 1) (7, 6) rettangolo 1: (-2, 1) (3, 5.5) rettangolo 2: (3, 2) (6, 5) rettangolo 2: (3, 1) (7.2, 3) sovrapposizione: 9 cm 2 sovrapposizione: 0 10
6 Sottoprogrammi: Metodologia di Sviluppo >> TEST n. 5 TEST n. 6 rettangolo 1: (-1, 1) (7, 6) rettangolo 1: (-2, 3) (3, 5.5) rettangolo 2: (4, 2) (7, 5) rettangolo 2: (3, 1) (7.2, 3) sovrapposizione: 9 cm 2 sovrapposizione: 0 11 Sottoprogrammi: Metodologia di Sviluppo >> Che fare nel caso di errori logici? test in cui il codice si comporta in modo diverso da quello atteso In questi casi è necessario capire la causa dell errore correggere il codice ripetere l esecuzione del piano dei test 12
7 Sottoprogrammi: Metodologia di Sviluppo >> Le tecniche semplici ispezione visiva del codice simulazione su carta del funzionamento metodo delle stampe Metodo delle stampe prevede l aggiunta di istruzioni di stampa al codice per verificare i valori delle variabili 13 Sottoprogrammi: Metodologia di Sviluppo >> Metodo delle Stampe >> indovina1errori.cpp Idea in caso di comportamento scorretto, aggiungo stampe per la correzione ( debug ) stampe che dicono quando comincia ciascun sottoprogramma stampe dei valori dei parametri e delle variabili, all inizio, durante e alla fine stampe che dicono quando finisce il sottopr. al termine della correzione elimino le stampe 14
8 Sottoprogrammi: Metodologia di Sviluppo >> Metodo delle Stampe int sceglinumero() { cout << ***** inizio sceglinumero *****\n ; int range; int numero; int seed = time(null); srand(seed); numero = rand() % ; cout << ***** numero = << numero << endl; cout << ***** fine sceglinumero *****\n ; return numero; } 15 Sottoprogrammi: Metodologia di Sviluppo >> Tecniche di Correzione Queste tecniche funzionano per programmi dalla logica applicativa semplice con un piano dei test semplici Principale svantaggio i test sono eseguiti interattivamente il programmatore è costretto a ripeterli tutte le volte che effettua modifiche processo noioso e aperto agli errori 16
9 Sottoprogrammi: Metodologia di Sviluppo >> Tecniche di Correzione In casi più complessi programmi con logica applicativa complessa in cui il codice viene sottoposto a frequenti modifiche è opportuno adottare tecniche alternative e strumenti alternativi Test di Regressione (>>) Debugger (>>) 17 Sottoprogrammi: Metodologia di Sviluppo >> Linee Guida Linee Guida per Scrivere il Codice Obiettivo scrivere codice di qualità Qualità del codice, in ordine di importanza correttezza (sintattica e semantica) usabilità (facilità ed efficacia nell uso) manutenibilità (facilità di adattamento ai cambiamenti) efficienza (consente di risolvere i problemi più rapidamente) 18
10 Sottoprogrammi: Metodologia di Sviluppo >> Linee Guida Linee Guida per Scrivere il Codice Qualità accessorie che contribuiscono ad ottenere quelle principali In questa lezione semplicità leggibilità modularità, ovvero buona organizzazione 19 Sottoprogrammi: Metodologia di Sviluppo >> Linee Guida Semplicità e Leggibilità Linea guida n. 1 adottare sempre la soluzione più semplice tra quelle che potrebbero funzionare non complicare mai inutilmente il codice In generale la prima soluzione ad un problema non è mai la migliore conviene migliorarla e renderla più generale con il tempo, quando il problema è più chiaro 20
11 Sottoprogrammi: Metodologia di Sviluppo >> Linee Guida Semplicità e Leggibilità Linea guida n. 2 adottare regole di stile scegliere accuratamente gli identificatori per variabili e sottoprogrammi - notazione cammello indentare il codice adottare regole per la posizione delle parentesi utilizzare sempre le parentesi 21 Sottoprogrammi: Metodologia di Sviluppo >> Linee Guida Semplicità e Leggibilità Linea guida n. 3 scrivere moduli brevi nel caso di problemi complessi, spezzarli in più passi per frammentare la soluzione il codice di un sottoprogramma non dovrebbe mai richiedere più di 30 secondi per essere interpretato da un altro programmatore di fatto questo può rendere inutili i commenti tranne che nel caso di librerie 22
12 Sottoprogrammi: Metodologia di Sviluppo >> Linee Guida Modularità Linea guida n. 4 adottare la metodologia incrementale procedere per raffinamenti successivi Linea guida n. 5 compilare progressivamente e frequentemente il codice verificare progressivamente il codice eseguibile 23 Sottoprogrammi: Metodologia di Sviluppo >> Linee Guida Modularità Linea guida n. 6 ragionare accuratamente sui parametri scegliere con cura quali e quanti parametri (evitare parametri inutili) scegliere con cura il tipo dei parametri (standard o per riferimento) adottando le linee guida discusse per la scelta dei parametri 24
13 Sottoprogrammi: Metodologia di Sviluppo >> Linee Guida Modularità Linea guida n. 7 minimizzare l accoppiamento tra i sottoprogrammi analizzare il diagramma delle chiamate verificare che la logica applicativa del programma sia chiara ed ordinata Linea guida n. 8 non utilizzare mai variabili globali è consentito di utilizzare costanti globali 25 Sottoprogrammi: Metodologia di Sviluppo >> Linee Guida Modularità Linea guida n. 9 massimizzare la coesione all interno di un sottoprogramma ogni sottoprogramma deve avere una funzione precisa nell applicazione deve risolvere un problema ben preciso e non fare due o più cose diverse 26
14 Sottoprogrammi: Metodologia di Sviluppo >> Linee Guida Modularità Linea guida n. 10 separare i sottoprogrammi orientati all elaborazione dai sottoprogrammi orientati all interazione con l utente i secondi (tipicamente chiamati schermi ) sono meno riutilizzabili, sia nella stessa applicazione che in applicazioni diverse i primi dovrebbero essere pensati per essere per quanto possibile riutilizzabili 27 Sottoprogrammi: Metodologia di Sviluppo >> Linee Guida Modularità Linea guida n. 10 (cont.) ogni applicazione dovrebbe avere una collezione di sottoprogrammi per le elaborazione che non interagiscono con l utente ed una collezione di sottoprogrammi per la gestione dell interazione con l utente >> sottoprogrammi di interfaccia le funzionalità dovrebbero essere ben separate 28
15 Sottoprogrammi: Metodologia di Sviluppo >> Sommario Riassumendo Metodologia suggerita per raffinamenti successivi Tecniche di Test Linee Guida di Carattere Metodologico per la scrittura di codice di qualità 29 Termini della Licenza Termini della Licenza This work is licensed under the Creative Commons Attribution- ShareAlike License. To view a copy of this license, visit or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. Questo lavoro viene concesso in uso secondo i termini della licenza Attribution-ShareAlike di Creative Commons. Per ottenere una copia della licenza, è possibile visitare oppure inviare una lettera all indirizzo Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. 30
Programmazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Test e Correzione: Introduzione versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Concetti Avanzati Tecniche di Test e Correzione versione 2.4 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 3 (b) Metodologia di Sviluppo versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Introduzione versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web JavaScript Concetti Fondamentali versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Programmazione Web: Introduzione versione 3.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica: Convenzioni di Stile versione 1.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 5 Conclusioni versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Introduzione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Strumenti di Sviluppo: Introduzione versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Design Pattern: Introduzione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Concetti Introduttivi Parte 2 Linguaggi di Programmazione versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Concetti Introduttivi Parte 2 Linguaggi di Programmazione versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 6 Il FORTRAN versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte c versione 1.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 2 (a) Sintassi e Semantica versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Concetti Avanzati versione 2.5 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Concetti Introduttivi Parte 1 Architettura del Calcolatore versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Grafica: C# versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Ereditarietà e Polimorfismo: Polimorfismo - d Regole Sintattiche e Semantiche versione 1.2 Questo lavoro è concesso in uso secondo i termini di
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Presentazione del Corso Anno Accademico 2003-2004 http://www.db.unibas.it/users/mecca/corsi/progoggettii versione 1.0 Questo lavoro è concesso in
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Programmazione Web: Conclusioni versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Strutture di Controllo Parte 3 Istruzioni Iterative (Cicli) versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica Introduzione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java : Conclusioni versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione su XML: Strato di Persistenza versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 1 Introduzione versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Conclusioni Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Ruoli e Responsabilità: Strati Applicativi versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Parte 3 Record versione 2.1 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: C# versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca
DettagliIntroduzione ai Calcolatori Elettronici
Introduzione ai Calcolatori Elettronici Elementi di Base dell ICT Information and Communication Technology Concetti Introduttivi A.A. 2013/2014 Domenica Sileo Università degli Studi della Basilicata Elementi
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Ruoli e Responsabilità: C# versione 1.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Ruoli e Responsabilità: Incapsulamento versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica Componenti versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Strutture di Dati La Matrice versione. Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università
DettagliInformatica Applicata
Ing. Irina Trubitsyna Elementi di base di un programma Dichiarazione dei dati in un programma Sommario Panoramica Elementi di Base di un Programma Struttura Direttive Elementi Sintattici di Base Commenti
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Ruoli e Responsabilità: Introduzione versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Tecniche di Programmazione: Date versione 1.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 1 Introduzione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Linguaggi di Programmazione Sintassi
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti Sintassi e Semantica Parte b: Peculiarità di Java versione 1.2 Questo lavoro è concesso in uso secondo i termini di una licenza
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Test e Correzione: C# Parte a versione 1.5 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Strumenti di Sviluppo: Ant Parte d versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica Uso dei Componenti versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Programmazione su Basi di Dati: Tecnologie versione 3.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Strumenti di Sviluppo: Linee Guida versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Conclusioni Parte b versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Test e Correzione: Conclusioni - Parte b Riflessione versione 1.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons
DettagliAlgoritmi e Strutture di Dati
Algoritmi e Strutture di Dati Capitolo 3 - Tipi di dato e strutture di dati This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License. To view a copy of this license,
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Tecniche di Programmazione: Clonazione e Serializzazione versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative
DettagliAnalisi e Progettazione del Software
Analisi e Progettazione del Software La Fase di Elaborazione: Introduzione versione 1.0 G. Mecca Università della Basilicata mecca@unibas.it La Fase di Elaborazione: Introduzione >> Sommario Sommario Il
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Design Pattern: Storia Parte b versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Tecniche di Programmazione: Collezioni Parte b versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi
DettagliIntroduzione alle reti telematiche
Introduzione alle reti telematiche Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ INTRODUZIONE ALLE RETI TELEMATICHE - 1 Copyright Quest opera è protetta dalla licenza Creative
DettagliReti di calcolatori Introduzione al corso
Reti di calcolatori Introduzione al corso Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ RETI DI CALCOLATORI Introduzione al corso - 1 Copyright Quest opera è protetta dalla licenza
DettagliIl problema dello zaino
Il problema dello zaino (knapsack problem) Damiano Macedonio mace@unive.it Copyright 2010 2012 Moreno Marzolla, Università di Bologna (http://www.moreno.marzolla.name/teaching/asd2011b/) This work is licensed
DettagliSommario. Introduzione Architettura Client-Server. Server Web Browser Web. Architettura a Due Livelli Architettura a Tre Livelli
Sommario Introduzione Architettura Client-Server Architettura a Due Livelli Architettura a Tre Livelli Server Web Browser Web Introduzione La storia inizia nel 1989 Tim Berners-Lee al CERN, progetto WWW
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Applicazioni Web J2EE Framework per il Modello 2 Struts versione 3.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Grafica: Thread versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Grafica: Introduzione versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliXML extensible Markup Language
XML extensible Markup Language Introduzione versione 3.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università della Basilicata mecca@unibas.it
DettagliTesting, correttezza e invarianti
Testing, correttezza e invarianti Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ Copyright 2018 Moreno Marzolla, Università
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Applicazioni Web J2EE Framework per il Modello 2 it.unibas.pinco versione 3.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Programmazione Web: Architetture versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it
DettagliProgrammazione Orientata agli Oggetti I
Programmazione Orientata agli Oggetti I Presentazione del Corso Anno Accademico 2004-2005 http://www.db.unibas.it/users/mecca/corsi/progoggettii G. Mecca Università della Basilicata mecca@unibas.it Presentazione
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Programmazione su Basi di Dati: JDBC Dettagli e Approfondimenti versione 3.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliConcetti Introduttivi
Concetti Introduttivi Linguaggi di Programmazione http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Linguaggi di Programmazione Impartiscono
DettagliIntroduzione alla rete Internet
Introduzione alla rete Internet Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ INTRODUZIONE ALLE RETI TELEMATICHE - 1 Copyright Quest opera è protetta dalla licenza Creative Commons
DettagliEsercizi di Algoritmi e Strutture Dati
Esercizi di Algoritmi e Strutture Dati Moreno Marzolla http://www.moreno.marzolla.name/ Ultima Modifica: 7 ottobre 202 Copyright Portions of this work are Copyright 202, Moreno Marzolla. This work is licensed
DettagliIntroduzione alla rete Internet
Introduzione alla rete Internet Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ INTRODUZIONE ALLE RETI TELEMATICHE - 1 Copyright Quest opera è protetta dalla licenza Creative Commons
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica: C# Parte b versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Applicazioni Web J2EE: Java Servlet Parte a versione 3.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca
DettagliELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)
1 LEZIONE 9 ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE) Laboratorio di Informatica per l Educazione A. A. 2014/2015 IN SINTESI (ELABORAZIONE) Con i COMPUTER, le macchine diventano
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web JavaScript Introduzione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università della Basilicata
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Ereditarietà e Polimorfismo: Introduzione versione 1.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Programmazione su Basi di Dati: Transazioni Parte b versione 3.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliOrdinamento. Lorenzo Donatiello,Moreno Marzolla Dip. di Scienze dell'informazione Università di Bologna
Ordinamento Lorenzo Donatiello,Moreno Marzolla Dip. di Scienze dell'informazione Università di Bologna Original work Copyright Alberto Montresor, University of Trento (http://www.dit.unitn.it/~montreso/asd/index.shtml)
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione su XML: Librerie per XML versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università della Basilicata mecca@unibas.it
DettagliIntroduzione alla rete Internet
Introduzione alla rete Internet Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ INTRODUZIONE ALLE RETI TELEMATICHE - 1 Copyright Quest opera è protetta dalla licenza Creative Commons
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Tecniche di Programmazione: Thread Parte a versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi
DettagliProgrammazione Procedurale
Programmazione Procedurale Presentazione del Corso Anno Accademico 2004-2005 http://www.db.unibas.it/users/mecca/corsi/progprocedurale G. Mecca Università della Basilicata mecca@unibas.it Sommario Sommario
DettagliCos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia
Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Parte 1 Introduzione G. Mecca M. Samela Università della Basilicata Tipi Strutturati: Introduzione >> Sommario Sommario Panoramica Alcuni Esempi
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Strumenti di Sviluppo: C# versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Parte 3 Record G. Mecca M. Samela Università della Basilicata Tipi Strutturati: Record >> Sommario Sommario Introduzione Dichiarazione di Record
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Grafica: Organizzazione del Codice Parte a versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Capitolo 1 - Introduzione Alberto Montresor Università di Trento This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License. To view a copy
DettagliSicurezza e Gestione delle Reti (di telecomunicazioni)
Sicurezza e Gestione delle Reti (di telecomunicazioni) Tommaso Pecorella tommaso.pecorella@unifi.it Corso di Studi in Ingegneria Elettronica e delle Telecomunicazioni Corso di Studi in Ingegneria Informatica
DettagliITI M. FARADAY. Programmazione a. s
ITI M. FARADAY Programmazione a. s. 2018-2019 Disciplina: INFORMATICA Indirizzo: INFORMATICA E TELECOMUNICAZIONI Classi: Terza A Terza B Ore settimanali previste: 6 (3 ora Teoria - 3 ore Laboratorio) Docenti:
DettagliMappatura dei canali logici sui canali fisici
Mappatura dei canali logici sui canali fisici Renato Lo Cigno www.dit.unitn.it/locigno/didattica/wn/...copyright Quest opera è protetta dalla licenza Creative Commons NoDerivs-NonCommercial. Per vedere
DettagliHomework #1: test di usabilità
Homework #1: test di usabilità LINEE GUIDA Laura Farinetti - DAUIN Descrizione del lavoro Scegliere una categoria di siti Linee aeree, servizi di prenotazione hotel, recensione di (categoria specifica),
DettagliHomework #1: test di usabilità
Homework #1: test di usabilità LINEE GUIDA Laura Farinetti - DAUIN Descrizione del lavoro Scegliere una categoria di siti Linee aeree, servizi di prenotazione hotel, recensione di (categoria specifica),
Dettagliutente: collezione di contenuti e servizi sviluppatore: pagine e applicazioni
Tecnologie di Sviluppo per il Web Valutazione della Qualità del Codice HTML versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Ereditarietà e Polimorfismo: Conclusioni versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliIl linguaggio C Strutture
Il linguaggio C Strutture Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ Copyright Mirko Viroli Copyright 2017, 2018 Moreno
DettagliSTORIA E CARATTERISTICHE
IL LINGUAGGIO C STORIA E CARATTERISTICHE STORIA E VERSIONI Sviluppato da Dennis Ritchie ai Bell Labs nel 1972 per realizzare il sistema operativo UNIX K&R C: 1978 (prima versione, K&R dal nome degli autori
Dettagli