Prof. Pagani Corrado IL DEBUGDEL SOFTWARE

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Prof. Pagani Corrado IL DEBUGDEL SOFTWARE"

Transcript

1 Prof. Pagani Corrado IL DEBUGDEL SOFTWARE

2 INTRODUZIONE Di solito i programmi non funzionano Un programma funziona quando in ogni condizione restituisce il valore atteso o gestisce l errore di inserimento dati dell utente fornendo l opportuno messaggio di errore in output Esempi Un programma che va in ciclo non funziona Un programma che si pianta se l utente inserisce valori sbagliati non funziona Un programma che ogni tanto si pianta non funziona

3 TIPOLOGIE DI ERRORI Errori di sintassisi commettono nella fase di scrittura delprogrammanellinguaggioscelto. Gli errori di sintassi impediscono la compilazione del programma da parte delcompilatoreche quindi tipicamente segnalerà la presenza dell'errore. Errori di logica(o semantica) si commettono nella fase di progettazione dell'algoritmo: possono essere causati da una mancata comprensione delproblema. Questi errori conducono tipicamente alla progettazione di un algoritmo che non fornisce l'output richiesto nell'ambito di una o più istanze del problema da risolvere. Sono difficili da individuare e spesso si deve ricorrere al debugging. Errori di runtimepossono verificarsi nella fase diesecuzionedel programma, anche se l'algoritmo è corretto e il codice viene compilato correttamente. Spesso sono relativi all'utilizzo errato dellamemoriada parte deipuntatorio nell elaborazione di dati che portano ad operazioni non eseguibili (ad esempio divisioni per 0).

4 TEST E DEBUG Ildebugging(o semplicementedebug), ininformatica, indica l'attività che consiste nell'individuazione da parte delprogrammatoredella porzione disoftwareaffetta da errore (bug) rilevata neisoftwarea seguito dell'utilizzo del programma. L'attività di debugè una delle operazioni più importanti per la messa a punto di unprogramma, spesso estremamente difficile per la complessità dei software oggi in uso e delicata per il pericolo di introdurre nuovi errori (effetti collaterali) o comportamenti difformi da quelli desiderati nel tentativo di correggere quelli per cui si è svolta l'attività di debug. Tipicamente permette di: Procedere passo passo o fino al successivo breackpoint Monitorare il valore delle variabili Assegnare valore manualmente alle valibili Fondamentale per individuare gli errori LOGICI e di RUNTIME

5 DEBUGGING A MANO Si può effettuare senza l ausilio dell ambiente di sviluppo Si inseriscono delle stampe ausiliarie per capire il flusso dell'esecuzione gli stati intermedi e i valori delle varibili Non richiede supporto di toolsparticolari Richiede attenzione a non introdurre ulteriori errori Un po' artigianale Poco efficiente

6 TOOLS DI DEBUG DEGLI AMBIENTI DI SVILUPPO Richiede l'uso di tooldell'ambiente di sviluppo o installazione di plug in esterni Consente di verificare il flusso dell'esecuzione: Tracing breakpoints gli stati intermedi Espressioni custom di controllo Strumento Molto potente Ad esempio ambienti di sviluppo come Eclipse, Code::Blockse VisualStudio forniscono un buon supporto

7 DEBUGCON ECLIPSE(JAVA) Lanciate il programma con Debugdal menu Run si passaalla prospettiva Debug Inserite almeno un breakpoint(doppio click a fianco della numerazione di riga) da cui far iniziare l analisi del codice Esecuzione del codice ResumeF8 StepIntoF5 quando incontra una chiamata a funzione entra nel codice sorgente della funzione chiamata StepOverF6 quando incontra una chiamata a funzione NON entra nel codice sorgente della funzione chiamata si fermerà ugualmente se incontra un breakpoint Tracing Nella scheda Variablespotete vedere i valori delle variabili Nella scheda breakpointspotete osservare tutti i punti di interruzione definiti Nella scheda Expressions(Windows Show view) potete digitare le espressioni custom e verificare il valore di ritorno

8 DEBUG CON ECLIPSE(JAVA) - CONFIGURAZIONE Siccome non vogliamo entrare nell esecuzione del codice delle chiamatealle librerie di sistema le filtriamo: Windows PreferencesJava DebugStep Filtering Seleziono Use Step Filters Select All

9 DEBUGCON VISUALSTUDIO (C#) Lanciate il programma con Debugdal menu Runsi passa alla prospettiva Debug Inserite almeno un breakpoint(click a fianco della numerazione di riga) da cui far iniziare l analisi del codice Esecuzione del codice ResumeF5 StepIntoF11 quando incontra una chiamata a funzione entra nel codice sorgente della funzione chiamata StepOverF10 quando incontra una chiamata a funzione NON entra nel codice sorgente della funzione chiamata si fermerà ugualmente se incontra un breakpoint Tracing Nella scheda Watch(Espressione di controllo) potete vedere i valori delle variabili

10 DEBUGCON VISUALSTUDIO (C#) Punto di interruzione Prossima riga in esecuzione Verifico i valori attualmente memorizzati nella variabile mylista

DEBUGGING. Ivan Lanese

DEBUGGING. Ivan Lanese DEBUGGING Ivan Lanese Argomenti Tecniche di debugging Di solito i programmi non funzionano int main() { int n, prod = 1; do { cout > n; prod = prod * n; }

Dettagli

FUNZIONI. Ivan Lanese

FUNZIONI. Ivan Lanese FUNZIONI Ivan Lanese Argomenti Tecniche di debugging Funzioni Di solito i programmi non funzionano int main() { int n, prod = 1; do { cout > n; prod = prod

Dettagli

DEBUGGING. Ivan Lanese

DEBUGGING. Ivan Lanese DEBUGGING Ivan Lanese Argomenti Tecniche di debugging Di solito i programmi non funzionano int main() { int n, prod = 1; do { cout > n; prod = prod * n; }

Dettagli

Esercitazioni di Fondamenti Informatica - Modulo A 1

Esercitazioni di Fondamenti Informatica - Modulo A 1 Esercitazioni di Fondamenti Informatica - Modulo A 1 Raccolta requisiti Progettazione Implementazione Errori Sintattici Errori Semantici CICLO DI VITA DEL SOFTWARE Debug Test Trasferimento Assistenza Ammodernamento

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica Prof. Arcangelo Castiglione A.A. 2016/17 Debugging 1/7 Il debugging (o semplicemente debug) è l'attività che permette al programmatore di individuare la porzione di programma

Dettagli

Lab 01 Introduzione a Codelite

Lab 01 Introduzione a Codelite Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2011/2012 Lab 01 Introduzione a Codelite Lab01

Dettagli

Informatica Problema Algoritmo Programma

Informatica Problema Algoritmo Programma Informatica Problema Algoritmo Programma 2^ PARTE I linguaggi di programmazione I linguaggi di programmazione si possono suddividere fondamentalmente in tre categorie: 1. Linguaggio Macchina 2. Linguaggio

Dettagli

ISTRUZIONI DEVC++ Autore: Luca Florio (luca.florio<at>polimi.it)

ISTRUZIONI DEVC++ Autore: Luca Florio (luca.florio<at>polimi.it) ISTRUZIONI DEVC++ Autore: Luca Florio (luca.floriopolimi.it) DevC++ è un ambiente di programmazione scaricabile gratuitamente che fornisce funzionalità per la creazione di applicativi in linguaggio

Dettagli

Creare un nuovo progetto. Marco Bonelli a.s. 2016/2017. San Secondo P.se I,T.I.S. G. Galilei Department of Computer Science.

Creare un nuovo progetto. Marco Bonelli a.s. 2016/2017. San Secondo P.se I,T.I.S. G. Galilei Department of Computer Science. Debugger Code Blocks Il debugger del Code Blocks funziona egregiamente, a patto che si seguano alcune regole: non bisogna creare dei file orfani; ogni vostro programma deve essere inserito all'interno

Dettagli

Cos'è il Debug? Il debug di un programma è la fase di ricerca e correzione di errori che si manifestano a runtime

Cos'è il Debug? Il debug di un programma è la fase di ricerca e correzione di errori che si manifestano a runtime GDB Debugger Cos'è il Debug? Il debug di un programma è la fase di ricerca e correzione di errori che si manifestano a runtime In genere questo accade quando sono presenti frammenti di codice errati detti

Dettagli

2 Lavorare con Eclipse

2 Lavorare con Eclipse Corso Eclipse 2 Lavorare con Eclipse 1 Prerequisiti Conoscenza elementare ambiente Eclipse Compilare ed eseguire semplici applicazioni Java Conoscere i tipici errori di programmazione Individuare errori

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica (La Ricorsione e Debugging) Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2017/18 OUTLINE La ricorsione - Principi base Caso Studio

Dettagli

Debug di un programma

Debug di un programma Debug di un programma Col termine Debug si intende una fase di sviluppo del software, nella quale si cerca di eliminare gli errori dal programma Due tipi di errori: Errori sintattici, rilevati sempre dal

Dettagli

Linguaggio C Debugging

Linguaggio C Debugging FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota

Dettagli

PER UTILIZZARE LCC IN LAB

PER UTILIZZARE LCC IN LAB PER UTILIZZARE LCC IN LAB La prima volta che un utente utilizza lcc-win32 deve impostare una chiave nel registro utente. Per fare questo occorre semplicemente: Aprire con il gestione risorse la cartella

Dettagli

Unix e comandi di base

Unix e comandi di base Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Unix e comandi di base Lab19 1 Unix - Shell dei comandi Es. 1 Utilizzando il comando ls Elencare a video il contenuto

Dettagli

Fondamenti di Informatica T2 Modulo 2

Fondamenti di Informatica T2 Modulo 2 Università degli Studi di Bologna Facoltà di Ingegneria Fondamenti di Informatica T2 Modulo 2 Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009 Integrated Development Environment (IDE)

Dettagli

Installazione. Eclipse. Workspace. Primo Avvio. Fondamenti di Informatica T2 Modulo 2. Università di Bologna A.A. 2008/2009

Installazione. Eclipse. Workspace. Primo Avvio. Fondamenti di Informatica T2 Modulo 2. Università di Bologna A.A. 2008/2009 Università degli Studi di Bologna Facoltà di Ingegneria Fondamenti di Informatica T2 Modulo 2 Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009 Integrated Development Environment (IDE)

Dettagli

Fondamenti Teorici. Antonio Pescapè e Marcello Esposito Parte Quarta v1.0

Fondamenti Teorici. Antonio Pescapè e Marcello Esposito Parte Quarta v1.0 Fondamenti Teorici Antonio Pescapè e Marcello Esposito Parte Quarta v1.0 Agenda Ambiente di sviluppo del software Le fasi di sviluppo del programma La documentazione dei programmi Errori di programmazione

Dettagli

Errori di programmazione Università degli Studi di Milano

Errori di programmazione Università degli Studi di Milano Errori di programmazione Lo sviluppo di programmi è ovviamente soggetto ad errori da parte del programmatore. Gli errori sono generalmente di due tipi: Errori di sintassi (syntax errors): violazioni della

Dettagli

INTRODUZIONE A VISUAL STUDIO

INTRODUZIONE A VISUAL STUDIO INTRODUZIONE A VISUAL STUDIO Cosa è Visual Studio Visual Studio è un ambiente di sviluppo integrato (Integrated development environment o IDE) Sviluppato da Microsoft Supporta numerosi linguaggi C, C++,

Dettagli

Debugger. Marco Alberti Programmazione e Laboratorio, A.A

Debugger. Marco Alberti Programmazione e Laboratorio, A.A Debugger Marco Alberti Programmazione e Laboratorio, A.A. 2016-2017 Dipartimento di Matematica e Informatica - Università di Ferrara Ultima modifica: 18 ottobre 2016 Introduzione Che cos è un debugger

Dettagli

Fondamenti di Informatica AA 2016/2017

Fondamenti di Informatica AA 2016/2017 Fondamenti di Informatica AA 2016/2017 Eng. Ph.D. Michela Paolucci DISIT Lab http://www.disit.dinfo.unifi.it Department of Information Engineering, DINFO University of Florence Via S. Marta 3, 50139, Firenze,

Dettagli

Guida all uso dell ambiente di sviluppo 1 integrato o IDE JCreator LE

Guida all uso dell ambiente di sviluppo 1 integrato o IDE JCreator LE Guida all uso dell ambiente di sviluppo 1 integrato o IDE JCreator LE Inizializzazione: creazione del nuovo progetto e del file sorgente in ambiente JCreator Al lancio del programma si apre la finestra

Dettagli

Anno Accademico Laboratorio di Tecnologie Web Uso di Firebug

Anno Accademico Laboratorio di Tecnologie Web Uso di Firebug Universita degli Studi di Bologna Facolta di Ingegneria Anno Accademico 2008-2009 Laboratorio di Tecnologie Web Uso di Firebug http://www-lia.deis.unibo.it/courses/tecnologieweb0809 Estensione del browser

Dettagli

Debugger. Stefano Ferrari. Università degli Studi di Milano Programmazione. anno accademico

Debugger. Stefano Ferrari. Università degli Studi di Milano Programmazione. anno accademico Debugger Stefano Ferrari Università degli Studi di Milano stefano.ferrari@unimi.it Programmazione anno accademico 2017 2018 Errori sintattici e semantici Gli errori commessi in un programma si dividono

Dettagli

Concetti Introduttivi

Concetti 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

Dettagli

Linguaggi Compilati vs. Interpretati

Linguaggi Compilati vs. Interpretati INTRODUZIONE ED ESEMPI Ing. Giuseppe Cirillo g.cirillo@unina.it Linguaggi Compilati vs. Interpretati Es. C, C++ compilatore compilatore compilatore Performance / Custom Portabilità Es. Java Interprete

Dettagli

COSTRUZIONE DI UN APPLICAZIONE

COSTRUZIONE DI UN APPLICAZIONE COSTRUZIONE DI UN APPLICAZIONE Per costruire un applicazione occorre: compilare il file (o i file se più d uno) che contengono il testo del programma (file sorgente) Il risultato sono uno o più file oggetto.

Dettagli

INTRO a MS Visual Studio 2008: LINEA di COMANDO

INTRO a MS Visual Studio 2008: LINEA di COMANDO INTRO a MS Visual Studio 2008: LINEA di COMANDO Aprire una shell di DOS tramite: Start MS VisualStudio 2008 Visual Studio Tools è una normale shell di DOS con aggiunte al path ed alle variabili d ambiented

Dettagli

Fondamenti di informatica T-1 (A K) Esercitazione 6: Eclipse

Fondamenti di informatica T-1 (A K) Esercitazione 6: Eclipse Fondamenti di informatica T-1 (A K) Esercitazione 6: Eclipse AA 2018/2019 Tutor lorenzo.rosa@unibo.it 2 Esercitazione 6 Introduzione al calcolatore e Java Linguaggio Java, basi e controllo del flusso Eclipse

Dettagli

Compilatori. g ++ prog.c. che crea il file eseguibile a.out. È utile conoscere alcune opzioni di g ++

Compilatori. g ++ prog.c. che crea il file eseguibile a.out. È utile conoscere alcune opzioni di g ++ Compilatori Per Linux esistono molti compilatori C, C ++ e F ORT RAN. Il compilatore C ++ si chiama g ++ e per compilare il programma prog.c bisogna dare il comando g ++ prog.c che crea il file eseguibile

Dettagli

Laboratorio di Python

Laboratorio di Python Laboratorio di Python Variabili e Funzioni Lab02 1 Marzo 2017 Outline Variabili modificabili Teoria Esempi ed esercizi Funzioni Teoria Esempi ed esercizi Esercizi per casa Outline Variabili modificabili

Dettagli

Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C

Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C IL LINGUAGGIO C Nel 1972 Dennis Ritchie nei Bell Laboratories progettò il linguaggio C Il linguaggio possiede tutti i costrutti di controllo dei linguaggi

Dettagli

LabView Parte 1 IL LABVIEW LEZ_1. Corso di. Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento )

LabView Parte 1 IL LABVIEW LEZ_1. Corso di. Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento ) Corso di Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento ) IL LABVIEW LEZ_1 Luigi Ferrigno ferrigno@unicas.it Gruppo Misure Elettriche ed Elettroniche Facoltà

Dettagli

Fondamenti di Informatica II 6. Esercitazioni Laboratorio 1

Fondamenti di Informatica II 6. Esercitazioni Laboratorio 1 Costruzione di un file eseguibile ( build ) Fondamenti di Informatica II 6. Esercitazioni Laboratorio 1 Un editor e un word processor specializzato e usato per preparare i moduli sorgenti nel linguaggio

Dettagli

Fondamenti di Informatica T-1 CdS Ingegneria Informatica. Introduzione agli ambienti di sviluppo MS Visual Studio 2005/2008/2010 CodeLite 6.1.

Fondamenti di Informatica T-1 CdS Ingegneria Informatica. Introduzione agli ambienti di sviluppo MS Visual Studio 2005/2008/2010 CodeLite 6.1. Fondamenti di Informatica T-1 CdS Ingegneria Informatica Introduzione agli ambienti di sviluppo MS Visual Studio 2005/2008/2010 CodeLite 6.1.1 1 Outline Solution/Workspace e Project IDE e linguaggio C

Dettagli

L IDE NETBEANS. (slide: A. Baratè) Programmazione per la Musica Adriano Baratè

L IDE NETBEANS. (slide: A. Baratè) Programmazione per la Musica Adriano Baratè L IDE NETBEANS (slide: A. Baratè) Programmazione per la Musica Adriano Baratè NETBEANS: UN PO DI STORIA Lo sviluppo inizia nel 1996 alla Facoltà di Matematica e Fisica di Praga come IDE Java Nel 1999 il

Dettagli

COSTRUZIONE DI UN APPLICAZIONE

COSTRUZIONE DI UN APPLICAZIONE COSTRUZIONE DI UN APPLICAZIONE Per costruire un applicazione occorre: compilare il file (o i file se più d uno) che contengono il testo del programma (file sorgente) Il risultato sono uno o più file oggetto.

Dettagli

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia

Cos è 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

Dettagli

Errori di programmazione

Errori di programmazione Errori di programmazione Lo sviluppo di programmi è ovviamente soggetto ad errori da parte del programmatore. Gli errori sono generalmente di due tipi: Errori di sintassi (syntax errors): violazioni della

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione 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

Dettagli

Primo programma in C

Primo programma in C Primo programma in C Compilare il primo programma Un semplice programma L ambiente di sviluppo Dev-C++ Codifica del programma Compilazione e correzione errori Esecuzione e verifica 2 Compilare il primo

Dettagli

Fondamenti di Informatica 9. Esercitazione in linguaggio C

Fondamenti di Informatica 9. Esercitazione in linguaggio C Esercitazione in linguaggio C Fondamenti di Informatica 9. Esercitazione in linguaggio C Lo sviluppo dei programmi Compilazione dei file sorgente, link e caricamento La libreria di run time L ambiente

Dettagli

Programmazione con Java

Programmazione con Java Programmazione con Java con Eclipse Introduzione Sviluppare software è un attività umana e quindi possibilmente soggetta ad errori Tipi di errori Failure (malfunzionamento) il programma non funziona il

Dettagli

Un semplice programma L ambiente di sviluppo Dev-C++ Codifica del programma Compilazione e correzione errori Esecuzione e verifica

Un semplice programma L ambiente di sviluppo Dev-C++ Codifica del programma Compilazione e correzione errori Esecuzione e verifica Primo programma in C Un semplice programma L ambiente di sviluppo Dev-C++ Codifica del programma Compilazione e correzione errori Esecuzione e verifica 2 2006 Politecnico di Torino 1 Esercizio Somma due

Dettagli

NOTE SULL USO DI ECLIPSE per la compilazione di programmi c

NOTE SULL USO DI ECLIPSE per la compilazione di programmi c Università degli Studi di Firenze - Scuola di Ingegneria Corso di Laurea in Ingegneria Elettronica e delle Telecomunicazioni Fondamenti di Informatica - Anno Accademico 2018/2019 Docente: Ing. Laura Carnevali

Dettagli

Guida introduttiva su Eclipse. Ing. Marco Dell'Unto marco.dellunto@iet.unipi.it

Guida introduttiva su Eclipse. Ing. Marco Dell'Unto marco.dellunto@iet.unipi.it Guida introduttiva su Eclipse Ing. Marco Dell'Unto marco.dellunto@iet.unipi.it Introduzione Eclipse è un ambiente di sviluppo (IDE) multilinguaggio e multipiattaforma scritto in Java. E Open Source. Può

Dettagli

Lab 01 Introduzione a Codelite

Lab 01 Introduzione a Codelite Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 01 Introduzione a Codelite Lab01 1 Costruzione di un Applicazione Per costruire un applicazione occorre: compilare

Dettagli

IL COSTRUTTO SEQUENZA

IL COSTRUTTO SEQUENZA IL COSTRUTTO SEQUENZA La programmazione strutturata Le istruzioni sono scritte una di seguito all altra nell ordine in cui vogliamo che siano interpretate dal compilatore e poi eseguite. Non sono contemplate

Dettagli

Bloodshed Dev-C++ Bloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio. IDE = Integrated Development Environment. Codice corso: 21012

Bloodshed Dev-C++ Bloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio. IDE = Integrated Development Environment. Codice corso: 21012 Bloodshed Dev-C++ Bloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio IDE = Integrated Development Environment Pagina 1 di 8 Dev-C++ - Installazione Con sistema operativo Windows, potete

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione 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

Dettagli

Fondamenti di Informatica Ing. Biomedica

Fondamenti di Informatica Ing. Biomedica Fondamenti di Informatica Ing. Biomedica Esercitazione n.5 Debugger & Funzioni Ricorsive Antonio Arena antonio.arena@ing.unipi.it Debugger Cos è? Il debugger è uno strumento molto potente che permette

Dettagli

Cenni sul preprocessore e il suo utilizzo

Cenni sul preprocessore e il suo utilizzo Alessio Bechini - Corso di - Cenni sul preprocessore e il suo utilizzo Il preprocessore: cenni Il preprocessore Storicamente, i compilatori C operavano con passaggi multipli. Il primo passaggio eseguiva

Dettagli

Prof. Pagani Corrado INGEGNERIA DEL SOFTWARE

Prof. Pagani Corrado INGEGNERIA DEL SOFTWARE Prof. Pagani Corrado INGEGNERIA DEL SOFTWARE INTRODUZIONE L ingegneria del software è la disciplina tecnologica e gestionalerelativa alla realizzazione sistematica e alla manutenzione di un software rispettando

Dettagli

La scrittura di un programma Modellizzazione del programma Scrittura del codice Esercizi. Sperimentazioni I. Alberto Garfagnini, Marco Mazzocco

La scrittura di un programma Modellizzazione del programma Scrittura del codice Esercizi. Sperimentazioni I. Alberto Garfagnini, Marco Mazzocco Sperimentazioni I Alberto Garfagnini, Marco Mazzocco Università degli studi di Padova 10 Novembre 2011 La scrittura di un programma Modellizzazione programma Flowcharts Pseudocode Scrittura del codice

Dettagli

Lab 01 Introduzione a Codelite

Lab 01 Introduzione a Codelite Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 01 Introduzione a Codelite Lab01 1 Costruzione di un Applicazione Per costruire un applicazione occorre: compilare

Dettagli

Laboratorio di informatica Ingegneria meccanica

Laboratorio di informatica Ingegneria meccanica Laboratorio di informatica Ingegneria meccanica Esercitazione 6 7 novembre 2007 Correzione di un programma Un programma può contenere errori sintattici e/o errori logici. Gli errori sintattici vengono

Dettagli

Iniziare a programmare in C++

Iniziare a programmare in C++ Iniziare a programmare in C++ Docente: Ing. Edoardo Fusella Dipartimento di Ingegneria Elettrica e Tecnologie dell Informazione Via Claudio 21, 4 piano laboratorio SECLAB Università degli Studi di Napoli

Dettagli

liceo B. Russell PROGRAMMAZIONE INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE BIENNIO: SECONDA DISCIPLINA: INFORMATICA

liceo B. Russell PROGRAMMAZIONE INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE BIENNIO: SECONDA DISCIPLINA: INFORMATICA INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE PROGRAMMAZIONE BIENNIO: SECONDA DISCIPLINA: INFORMATICA PIANO DI LAVORO DEL DOCENTE / RELAZIONE FINALE Anno scolastico 2014/2015 DOCENTE Prof. PAOLO ARMANI CLASSE:

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

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)

Dettagli

Corso di Laurea in Matematica. Seminario C/C++ Lorenzo Dusty Costa. Università degli Studi di Milano Dipartimento di Matematica

Corso di Laurea in Matematica. Seminario C/C++ Lorenzo Dusty Costa. Università degli Studi di Milano Dipartimento di Matematica Corso di Laurea in Matematica Seminario C/C++ Costa Università degli Studi di Milano Dipartimento di Matematica 19 Ottobre 2011 Cos'é un'ide IDE = Integrated Development Environment Consiste in: Editor

Dettagli

La scrittura di un programma Modellizzazione del programma Scrittura del codice Esercizi. Sperimentazioni I. Alberto Garfagnini, Marco Mazzocco

La scrittura di un programma Modellizzazione del programma Scrittura del codice Esercizi. Sperimentazioni I. Alberto Garfagnini, Marco Mazzocco Sperimentazioni I Alberto Garfagnini, Marco Mazzocco Università degli studi di Padova 30 Ottobre 2013 La scrittura di un programma Modellizzazione programma Flowcharts Pseudocode Scrittura del codice Esercizi

Dettagli

Le fasi della programmazione

Le fasi della programmazione Ad un primo livello di astrazione l attività della programmazione può essere suddivisa in quattro (macro) fasi principali. 1. Definizione del problema (specifica): quale funzione si vuole calcolare e quali

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione 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

Dettagli

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algoritmi e Programmazione Stefano Cagnoni Il problema

Dettagli

Introduzione. Informatica B. Daniele Loiacono

Introduzione. Informatica B. Daniele Loiacono Introduzione Informatica B Cos è l informatica? q È la scienza che si occupa della rappresentazione dell informazione e della sua elaborazione e gestione " Si occupa dell informazione, che fa parte di

Dettagli

Informatica (A-K) 9. Esercitazione in linguaggio C

Informatica (A-K) 9. Esercitazione in linguaggio C Esercitazione in linguaggio C Informatica (A-K) 9. Esercitazione in linguaggio C Lo sviluppo dei programmi Compilazione dei file sorgente, link e caricamento La libreria di run time L ambiente IDE C Language

Dettagli

Sviluppo dei Programmi

Sviluppo dei Programmi Programmazione I a.a 2009-2010 docente: Carmine Gravino Sviluppo dei Programmi Presentazione realizzata dal Prof. Andrea De Lucia 1 Analisi e Specifica Sviluppo dei programmi Progettazione Codifica Verifica

Dettagli

Linguaggi di Programmazione

Linguaggi di Programmazione Linguaggi di Programmazione E una notazione con cui e possibile descrivere gli algoritmi. Programma: e la rappresentazione di un algoritmo in un particolare linguaggio di programmazione. In generale, ogni

Dettagli

Linguaggi di Programmazione

Linguaggi di Programmazione Linguaggi di Programmazione 1 Linguaggio naturale e linguaggio macchina La comunicazione uomo-macchina avviene attraverso formalismi che assumono la forma di un linguaggio. Caratteristiche del Linguaggio

Dettagli

Lezione n. 2i Informatica e tecnologia informatica Sistema di elaborazione Algoritmo Linguaggi di programmazione Realizzazione di un programma

Lezione n. 2i Informatica e tecnologia informatica Sistema di elaborazione Algoritmo Linguaggi di programmazione Realizzazione di un programma Lezione2i Lezione n. 2i Informatica e tecnologia informatica Sistema di elaborazione Algoritmo Linguaggi di programmazione Realizzazione di un programma Informatica e tecnologia informatica Il termine

Dettagli

Linguaggi di Programmazione e Paradigmi. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Linguaggi di Programmazione e Paradigmi. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Linguaggi di Programmazione e Paradigmi Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Come risolvere un problema Le 3 tappe fondamentali di risoluzione di un problema algoritmico sono:

Dettagli

Programmazione C Massimo Callisto De Donato

Programmazione C Massimo Callisto De Donato Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE

Dettagli

Linguaggi di programmazione

Linguaggi di programmazione Linguaggi di programmazione Fondamenti di Informatica Daniele Loiacono Ho definito un algoritmo e adesso? Daniele Loiacono Dall algoritmo all esecuzione q Come deve essere formalizzato un algoritmo affinché

Dettagli

Fondamenti VBA. Che cos è VBA

Fondamenti VBA. Che cos è VBA Fondamenti VBA Che cos è VBA VBA, Visual Basic for Application è un linguaggio di programmazione, inserito nelle applicazioni Office di Microsoft (Ms Word, Ms Excel, Ms PowerPoint, Visio). VBA è una implementazione

Dettagli

Fondamenti di Informatica. Ingegneria elettronica

Fondamenti di Informatica. Ingegneria elettronica Fondamenti di Informatica Ingegneria elettronica Prima esercitazione Cecilia Catalano Sistema Operativo Il S.O. è costituito da un insieme di programmi che permettono di utilizzare e gestire tutte le risorse

Dettagli

Tutorial su Codelite. Luca Ceriani 2011 Federico Cerutti

Tutorial su Codelite. Luca Ceriani 2011 Federico Cerutti Tutorial su Codelite Luca Ceriani 2011 Federico Cerutti Sommario Creare un nuovo workspace Creare un primo progetto all interno di un workspace

Dettagli

Calcolo numerico e programmazione Introduzione a Scilab (3)

Calcolo numerico e programmazione Introduzione a Scilab (3) Calcolo numerico e programmazione Introduzione a Scilab (3) Tullio Facchinetti 3 maggio 2012 23:58 http://robot.unipv.it/toolleeo Cos è una funzione le funzioni sono insiemi

Dettagli

Corso di Linguaggi di Programmazione + Laboratorio

Corso di Linguaggi di Programmazione + Laboratorio Corso di inguaggi di Programmazione + aboratorio Capitolo 1 - Introduzione Si ringrazia il Dott. Marco de Gemmis per la collaborazione nella predisposizione del materiale didattico Apprendimento di un

Dettagli

Elementi di programmazione

Elementi di programmazione Fondamenti di Informatica per la Sicurezza a.a. 2003/04 Elementi di programmazione Stefano Ferrari Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Stefano Ferrari Università

Dettagli

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Il problema di fondo Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algoritmi e Programmazione Stefano

Dettagli

Modularizzazione del software

Modularizzazione del software Modularizzazione del software Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: Subroutine e function DIS - Dipartimento di informatica e sistemistica

Dettagli

Introduzione a Visual Studio 2005

Introduzione a Visual Studio 2005 Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009 Introduzione a Visual Studio 2005 Outline Solutions e Projects Visual Studio e il linguaggio C Visual Studio Schermata

Dettagli

Introduzione a Visual Studio Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Introduzione a Visual Studio Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Introduzione a Visual Studio 2010 Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Sviluppo del Software Un editor e un word processor specializzato e usato per scrivere i moduli sorgenti

Dettagli

Algoritmi e diagrammi di flusso versione biennio

Algoritmi e diagrammi di flusso versione biennio Algoritmi e diagrammi di flusso versione biennio Pablo Genova gallini.genova@gmail.com I. I. S. Angelo Omodeo Mortara Indirizzo Tecnico-Economico A. S. 2015 2016 Cos'è un algoritmo? Algoritmo: procedimento

Dettagli

Ambienti di Sviluppo. Linguaggi compilati

Ambienti di Sviluppo. Linguaggi compilati Insieme omogeneo di strumenti adatti allo sviluppo di progetti software. Compilatori e/o interpreti; Editor; Ambienti di Sviluppo Strumenti di debug e/o test; 1 Linguaggi compilati Codice sorgente convertito

Dettagli

Corso Programmazione

Corso Programmazione Corso Programmazione 2008-2009 (docente) Fabio Aiolli E-mail: aiolli@math.unipd.it Web: www.math.unipd.it/~aiolli (docenti laboratorio) A. Ceccato, F. Di Palma, M. Gelain Dipartimento di Matematica Pura

Dettagli

Introduzione al C. Unità 10 Preprocessore. D. Bloisi, S. Peluso, A. Pennisi, S. Salza

Introduzione al C. Unità 10 Preprocessore. D. Bloisi, S. Peluso, A. Pennisi, S. Salza Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Introduzione al C Unità 10 Preprocessore D. Bloisi, S. Peluso, A. Pennisi, S. Salza Sommario Processo

Dettagli

Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni. Lab 01. Introduzione a Codelite. Lab01 1

Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni. Lab 01. Introduzione a Codelite. Lab01 1 Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 01 Introduzione a Codelite Lab01 1 Costruzione di un Applicazione Per costruire un applicazione occorre: compilare

Dettagli

NetBeans. Dott. Ing. Rossella Rubino A.A. 2007/2008 Laboratorio II CdL: Operatore Informatico Giuridico

NetBeans. Dott. Ing. Rossella Rubino A.A. 2007/2008 Laboratorio II CdL: Operatore Informatico Giuridico NetBeans Dott. Ing. Rossella Rubino rossella.rubino@unibo.it A.A. 2007/2008 Laboratorio II CdL: Operatore Informatico Giuridico Software necessario J2SE(TM) Development Kit (JDK) http://java.sun.com/javase/downloads/index.jsp

Dettagli