Introduzione al linguaggio Java

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Introduzione al linguaggio Java"

Transcript

1 Introduzione al linguaggio Java Alessandro Martinelli 28 Settembre 2011 Introduzione al linguaggio Java Generalità del Linguaggio Java e Portabilità Java e Robustezza Java come linguaggio ad oggetti Fondamenti di Informatica II

2 Il linguaggio Java Nasce durante gli anni 90 A. Martinelli () Java 28/9/ / 7

3 Il linguaggio Java Nasce durante gli anni 90 Due importanti linee guida: A. Martinelli () Java 28/9/ / 7

4 Il linguaggio Java Nasce durante gli anni 90 Due importanti linee guida: Un linguaggio migliore del C++. Un linguaggio adatto allo sviluppo di software per il Web. A. Martinelli () Java 28/9/ / 7

5 Il linguaggio Java Nasce durante gli anni 90 Due importanti linee guida: Un linguaggio migliore del C++. Un linguaggio adatto allo sviluppo di software per il Web. Tre importanti caratteristiche: A. Martinelli () Java 28/9/ / 7

6 Il linguaggio Java Nasce durante gli anni 90 Due importanti linee guida: Un linguaggio migliore del C++. Un linguaggio adatto allo sviluppo di software per il Web. Tre importanti caratteristiche: Portabilità A. Martinelli () Java 28/9/ / 7

7 Il linguaggio Java Nasce durante gli anni 90 Due importanti linee guida: Un linguaggio migliore del C++. Un linguaggio adatto allo sviluppo di software per il Web. Tre importanti caratteristiche: Portabilità Robustezza A. Martinelli () Java 28/9/ / 7

8 Il linguaggio Java Nasce durante gli anni 90 Due importanti linee guida: Un linguaggio migliore del C++. Un linguaggio adatto allo sviluppo di software per il Web. Tre importanti caratteristiche: Portabilità Robustezza Orientato agli Oggetti A. Martinelli () Java 28/9/ / 7

9 Java e Portabilità: La Java Virtual Machine Come per il linguaggio C, il codice Java viene compilato. A. Martinelli () Java 28/9/ / 7

10 Java e Portabilità: La Java Virtual Machine Come per il linguaggio C, il codice Java viene compilato. Il risultato del processo di compilazione è un insieme di file.class. A. Martinelli () Java 28/9/ / 7

11 Java e Portabilità: La Java Virtual Machine Come per il linguaggio C, il codice Java viene compilato. Il risultato del processo di compilazione è un insieme di file.class. I.class non sono scritti in linguaggio macchina. A. Martinelli () Java 28/9/ / 7

12 Java e Portabilità: La Java Virtual Machine Come per il linguaggio C, il codice Java viene compilato. Il risultato del processo di compilazione è un insieme di file.class. I.class non sono scritti in linguaggio macchina. La Java Virtual Machine Lanciando una Macchina Virtuale Java si può interpretare i.class. La Macchina Virtuale Java è un programma. E possibile eseguire i.class su qualsiasi sistema operativo per il quale esista una Macchina Virtuale Java. Per questi motivi Java è anche detto linguaggio interpretato. A. Martinelli () Java 28/9/ / 7

13 Java e Robustezza Nell epoca d oro del linguaggio C++, era noto che la difficoltà maggiore degli sviluppatori stava nella gestione della memoria (allocazione e deallocazione) A. Martinelli () Java 28/9/ / 7

14 Java e Robustezza Nell epoca d oro del linguaggio C++, era noto che la difficoltà maggiore degli sviluppatori stava nella gestione della memoria (allocazione e deallocazione) Sbagliare in questo compito comporta due grossi rischi: A. Martinelli () Java 28/9/ / 7

15 Java e Robustezza Nell epoca d oro del linguaggio C++, era noto che la difficoltà maggiore degli sviluppatori stava nella gestione della memoria (allocazione e deallocazione) Sbagliare in questo compito comporta due grossi rischi: Segmentation Fault (Facile da riscontrare, non da risolvere) A. Martinelli () Java 28/9/ / 7

16 Java e Robustezza Nell epoca d oro del linguaggio C++, era noto che la difficoltà maggiore degli sviluppatori stava nella gestione della memoria (allocazione e deallocazione) Sbagliare in questo compito comporta due grossi rischi: Segmentation Fault (Facile da riscontrare, non da risolvere) Saturazione della Memoria (Molto più difficile da rilevare) A. Martinelli () Java 28/9/ / 7

17 Java e Robustezza Nell epoca d oro del linguaggio C++, era noto che la difficoltà maggiore degli sviluppatori stava nella gestione della memoria (allocazione e deallocazione) Sbagliare in questo compito comporta due grossi rischi: Segmentation Fault (Facile da riscontrare, non da risolvere) Saturazione della Memoria (Molto più difficile da rilevare) Per far fronte a questi due problemi, Java offre due importanti meccanismi: Il primo problema è risolto con l introduzione delle Eccezioni Runtime. A. Martinelli () Java 28/9/ / 7

18 Java e Robustezza Nell epoca d oro del linguaggio C++, era noto che la difficoltà maggiore degli sviluppatori stava nella gestione della memoria (allocazione e deallocazione) Sbagliare in questo compito comporta due grossi rischi: Segmentation Fault (Facile da riscontrare, non da risolvere) Saturazione della Memoria (Molto più difficile da rilevare) Per far fronte a questi due problemi, Java offre due importanti meccanismi: Il primo problema è risolto con l introduzione delle Eccezioni Runtime. Il secondo problema è risolto attraverso il Garbage Collector. A. Martinelli () Java 28/9/ / 7

19 Java e Robustezza : le Eccezioni Runtime Gestione delle Eccezioni La Gestione delle Eccezioni è un importante meccanismo comune a molti linguaggi ad oggetti, caratteristico tra gli altri del linguaggio Java. La Gestione delle Eccezioni consente di regolamentare il comportamento del Software quando si verificano comportamenti eccezionali. A. Martinelli () Java 28/9/ / 7

20 Java e Robustezza : le Eccezioni Runtime Gestione delle Eccezioni La Gestione delle Eccezioni è un importante meccanismo comune a molti linguaggi ad oggetti, caratteristico tra gli altri del linguaggio Java. La Gestione delle Eccezioni consente di regolamentare il comportamento del Software quando si verificano comportamenti eccezionali. Le Eccezioni Runtime (RunTimeException) sono un particolare tipo di eccezione, trattata in modo privilegiato rispetto alle altre. A. Martinelli () Java 28/9/ / 7

21 Java e Robustezza : le Eccezioni Runtime Gestione delle Eccezioni La Gestione delle Eccezioni è un importante meccanismo comune a molti linguaggi ad oggetti, caratteristico tra gli altri del linguaggio Java. La Gestione delle Eccezioni consente di regolamentare il comportamento del Software quando si verificano comportamenti eccezionali. Le Eccezioni Runtime (RunTimeException) sono un particolare tipo di eccezione, trattata in modo privilegiato rispetto alle altre. Con le Eccezioni Runtime Java gestisce tutte quelle situazioni comuni del linguaggio che solitamente si tradurrebbero in un segmentation fault. A. Martinelli () Java 28/9/ / 7

22 Java e Robustezza : le Eccezioni Runtime Gestione delle Eccezioni La Gestione delle Eccezioni è un importante meccanismo comune a molti linguaggi ad oggetti, caratteristico tra gli altri del linguaggio Java. La Gestione delle Eccezioni consente di regolamentare il comportamento del Software quando si verificano comportamenti eccezionali. Le Eccezioni Runtime (RunTimeException) sono un particolare tipo di eccezione, trattata in modo privilegiato rispetto alle altre. Con le Eccezioni Runtime Java gestisce tutte quelle situazioni comuni del linguaggio che solitamente si tradurrebbero in un segmentation fault. Il vantaggio di usare la Gestione delle Eccezioni per trattare queste situazioni sta nelle informazioni che la Java Virtual Machine fornisce in output quando questi problemi si verificano. A. Martinelli () Java 28/9/ / 7

23 Java e Robustezza : il Garbage Collector Per far fronte al secondo problema, Java introduce il Garbage Collector: Responsabile dell allocazione della memoria. A. Martinelli () Java 28/9/ / 7

24 Java e Robustezza : il Garbage Collector Per far fronte al secondo problema, Java introduce il Garbage Collector: Responsabile dell allocazione della memoria. Mantiene una mappa di tutti i puntatori alle aree di memoria utilizzate. A. Martinelli () Java 28/9/ / 7

25 Java e Robustezza : il Garbage Collector Per far fronte al secondo problema, Java introduce il Garbage Collector: Responsabile dell allocazione della memoria. Mantiene una mappa di tutti i puntatori alle aree di memoria utilizzate. Dealloca le aree di memoria non più utilizzate. A. Martinelli () Java 28/9/ / 7

26 Java e Robustezza : il Garbage Collector Per far fronte al secondo problema, Java introduce il Garbage Collector: Responsabile dell allocazione della memoria. Mantiene una mappa di tutti i puntatori alle aree di memoria utilizzate. Dealloca le aree di memoria non più utilizzate. Di fatto: il programmatore non alloca, non dealloca e i puntatori nemmeno li vede. A. Martinelli () Java 28/9/ / 7

27 Java come linguaggio ad Oggetti Offre gli strumenti per applicare i più importanti principi della programmazione ad oggetti. A. Martinelli () Java 28/9/ / 7

28 Java come linguaggio ad Oggetti Offre gli strumenti per applicare i più importanti principi della programmazione ad oggetti. Ha rappresentato una solida basa per lo sviluppo e la concettualizzazione della teoria della programmazione ad oggetti. A. Martinelli () Java 28/9/ / 7

29 Java come linguaggio ad Oggetti Offre gli strumenti per applicare i più importanti principi della programmazione ad oggetti. Ha rappresentato una solida basa per lo sviluppo e la concettualizzazione della teoria della programmazione ad oggetti. Porta con se una vasta gamma di librerie ad oggetti, che sono il principale output della teoria della programazione ad oggetti. A. Martinelli () Java 28/9/ / 7

Introduzione alla Progettazione per Componenti

Introduzione alla Progettazione per Componenti Introduzione alla Progettazione per Componenti Alessandro Martinelli 6 ottobre 2014 Obiettivo del Corso Il Progetto Software Reale Il Componente Software La Programmazione Ad Oggetti Fondamenti di Informatica

Dettagli

Riferimenti ed Oggetti

Riferimenti ed Oggetti Riferimenti e oggetti Riferimenti ed Oggetti In non si possono definire variabili di tipo oggetto ma solo di tipo riferimento a oggetto. I riferimenti sono assimilabili ai tipi base. Allocazione statica

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T1 B2 Significato e proprietà della OOP 1 Prerequisiti Concetto ed elementi della comunicazione Allocazione e deallocazione della memoria Compilazione di un programma Spazio

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

Dettagli

Sistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1

Sistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1 MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati

Dettagli

MECCANISMI E POLITICHE DI PROTEZIONE 13.1

MECCANISMI E POLITICHE DI PROTEZIONE 13.1 MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati

Dettagli

Protezione. Protezione. Protezione. Obiettivi della protezione

Protezione. Protezione. Protezione. Obiettivi della protezione Protezione Protezione La protezione riguarda i meccanismi per il controllo dell accesso alle risorse in un sistema di calcolo da parte degli utenti e dei processi. Meccanismi di imposizione fissati in

Dettagli

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione Lezione 4 La Struttura dei Sistemi Operativi Introduzione Funzionamento di un SO La Struttura di un SO Sistemi Operativi con Struttura Monolitica Progettazione a Livelli di un SO 4.2 1 Introduzione (cont.)

Dettagli

FONDAMENTI di INFORMATICA L. Mezzalira

FONDAMENTI di INFORMATICA L. Mezzalira FONDAMENTI di INFORMATICA L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software

Dettagli

Programmazione ad Oggetti. Java Parte I

Programmazione ad Oggetti. Java Parte I Programmazione ad Oggetti Java Parte I Overview Caratteristiche generali 1 Caratteristiche generali Un moderno linguaggio orientato agli oggetti Pensato per lo sviluppo di applicazioni che devono essere

Dettagli

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE Relatore: prof. Michele Moro Laureando: Marco Beggio Corso di laurea in Ingegneria Informatica Anno Accademico 2006-2007

Dettagli

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo Sistema Operativo Fondamenti di Informatica 1 Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al

Dettagli

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro Introduzione alle tecnologie informatiche Strumenti mentali per il futuro Panoramica Affronteremo i seguenti argomenti. I vari tipi di computer e il loro uso Il funzionamento dei computer Il futuro delle

Dettagli

Programmazione in Java e gestione della grafica (I modulo) Lezione 1: Presentazione corso

Programmazione in Java e gestione della grafica (I modulo) Lezione 1: Presentazione corso Programmazione in Java e gestione della grafica (I modulo) Lezione 1: Presentazione corso Informazioni generali Docente: Prof.ssa Dora Giammarresi: giammarr@mat.uniroma2.it Tutor:??? Informazioni generali

Dettagli

INFORMATICA 1 L. Mezzalira

INFORMATICA 1 L. Mezzalira INFORMATICA 1 L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software del modello

Dettagli

e-dva - eni-depth Velocity Analysis

e-dva - eni-depth Velocity Analysis Lo scopo dell Analisi di Velocità di Migrazione (MVA) è quello di ottenere un modello della velocità nel sottosuolo che abbia dei tempi di riflessione compatibili con quelli osservati nei dati. Ciò significa

Dettagli

Introduzione al Calcolo Scientifico

Introduzione al Calcolo Scientifico Introduzione al Calcolo Scientifico Corso di Calcolo Numerico, a.a. 2010/2011 Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico

Dettagli

Gestione della memoria centrale

Gestione della memoria centrale Gestione della memoria centrale Un programma per essere eseguito deve risiedere in memoria principale e lo stesso vale per i dati su cui esso opera In un sistema multitasking molti processi vengono eseguiti

Dettagli

Linguaggi 2 e laboratorio

Linguaggi 2 e laboratorio Linguaggi 2 e laboratorio Docente: Leonardo Badia Contatti: leonardo.badia@gmail.com Pagina web del corso: www.unife.it/scienze/informatica/ insegnamenti/linguaggi-2-laboratorio Argomenti del corso: Java

Dettagli

Linguaggi di programmazione

Linguaggi di programmazione Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di un programma, cioè di una sequenza di istruzioni descritte nel linguaggio interpretabile dal calcolatore

Dettagli

Introduzione al Calcolo Scientifico

Introduzione al Calcolo Scientifico Introduzione al Calcolo Scientifico Corso di Calcolo Numerico, a.a. 2008/2009 Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico

Dettagli

Informatica. Prof. A. Longheu. Introduzione a Java

Informatica. Prof. A. Longheu. Introduzione a Java Informatica Prof. A. Longheu Introduzione a Java 1 Code-Name Green Nome del progetto Sun con l obiettivo di fornire intelligent consumer-electronic devices. Il risultato fu Oak Un linguaggio basato su

Dettagli

Reflection in Java. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010

Reflection in Java. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it Reflection in Java 1 Reflection Riflessione

Dettagli

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI!

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Fondamenti di Informatica Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Finalità: Fornire gli elementi di base dei concetti che sono di fondamento all'informatica Informazioni Pratiche ORARIO:

Dettagli

Approccio stratificato

Approccio stratificato Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia

Dettagli

Architettura di un sistema operativo

Architettura di un sistema operativo Architettura di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Struttura di un S.O. Sistemi monolitici Sistemi a struttura semplice Sistemi a livelli Virtual Machine Sistemi

Dettagli

PROFILO FORMATIVO Profilo professionale e percorso formativo

PROFILO FORMATIVO Profilo professionale e percorso formativo Agenzia del Lavoro Provincia Autonoma di Trento DESCRIZIONE PROFILO PROFESSIONALE PROFILO FORMATIVO Profilo professionale e percorso formativo DENOMINAZIONE FIGURA PROFESSIONALE - ADDETTO ALLA CONTABILITA

Dettagli

Programmare in Java. Olga Scotti

Programmare in Java. Olga Scotti Programmare in Java Olga Scotti Linguaggi di programmazione linguaggio macchina assembler linguaggi ad alto livello Linguaggi ad alto livello istruzioni comprensibili linguaggio simile a quello naturale

Dettagli

SCUOLA PRIMARIA I.C. di CRESPELLANO PROGRAMMAZIONE ANNUALE DI TECNOLOGIA E INFORMATICA

SCUOLA PRIMARIA I.C. di CRESPELLANO PROGRAMMAZIONE ANNUALE DI TECNOLOGIA E INFORMATICA TRAGUARDI DELLE AL TERMINE della CLASSE I L alunno esplora e interpreta il mondo fatto dall uomo, individua le funzioni di un artefatto e di una semplice macchina, usa oggetti e strumenti coerentemente

Dettagli

Adobe Flash CS5.5 e Web Animation. Lezione 7: introduzione ad ActionScript 3.0, livelli guida, realizzazione di un player audio in streaming

Adobe Flash CS5.5 e Web Animation. Lezione 7: introduzione ad ActionScript 3.0, livelli guida, realizzazione di un player audio in streaming Adobe Flash CS5.5 e Web Animation Lezione 7: introduzione ad ActionScript 3.0, livelli guida, realizzazione di un player audio in streaming Cos è ActionScript ActionScript è il linguaggio di programmazione

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione

Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione Università Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

DBMS e Linguaggi di programmazione nell'era di Internet

DBMS e Linguaggi di programmazione nell'era di Internet DBMS e Linguaggi di programmazione nell'era di Internet Crippa Francesco fcrippa@tiscalinet.it Crippa Francesco (GPL) 1 Programma del corso DBMS nati per il WEB: MySQL Postgres Il cuore del WWW, il web

Dettagli

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine

Dettagli

Architetture software. Virtualizzazione

Architetture software. Virtualizzazione Sistemi Distribuiti Architetture software 1 Virtualizzazione 2 1 Virtualizzazione (motivazioni) Sullo stesso elaboratore possono essere eseguiti indipendentemente d t e simultaneamente t sistemi i operativi

Dettagli

TECNOLOGIA: CLASSI PRIME

TECNOLOGIA: CLASSI PRIME 1 TECNOLOGIA: CLASSI PRIME 1 2 3 strumenti adatti con autonomia e sicurezza, in modo esatto e preciso comunicazione digitali ed è in grado di farne un uso efficace e responsabile rispetto alle proprie

Dettagli

Introduzione al sistema operativo Il file system: file, directory,...

Introduzione al sistema operativo Il file system: file, directory,... ,OVRIWZDUHGLVLVWHPD cosa vedremo: Introduzione al sistema operativo Il file system: file, directory,...... 223,OVRIWZDUHLQWURGX]LRQH L hardware da solo non è sufficiente per il funzionamento dell elaboratore

Dettagli

Il sistema operativo TinyOS

Il sistema operativo TinyOS tesi di laurea Anno Accademico 2005/2006 relatore Ch.mo prof. Domenico Cotroneo candidato Giovanni Chierchia Matr. 534 / 804 ::. Obiettivi del lavoro di tesi Studio del sistema operativo TinyOS Studio

Dettagli

Il Sistema Operativo

Il Sistema Operativo Il Sistema Operativo Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al meglio le risorse del Sistema

Dettagli

Sistema di Trouble Ticket Management. Gestione Informatizzata dei Servizi di Help Desk

Sistema di Trouble Ticket Management. Gestione Informatizzata dei Servizi di Help Desk Sistema di Trouble Ticket Management Gestione Informatizzata dei Servizi di Help Desk Introduzione La gestione informatizzata dei servizi di help-desk è una problematica nota e ampiamente risolta in ambiti

Dettagli

Introduzione alla Virtualizzazione

Introduzione alla Virtualizzazione Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: luca.tasquier@unina2.it Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse

Dettagli

Panoramica: che cosa è necessario

Panoramica: che cosa è necessario Scheda 02 L installazione dell SDK G IOVANNI PULITI Panoramica: che cosa è necessario Per poter lavorare con applicazioni Java o crearne di nuove, il programmatore deve disporre di un ambiente di sviluppo

Dettagli

Scienze della Comunicazione Università di Salerno. UD 3.2a: Introduzione alla Programmazione

Scienze della Comunicazione Università di Salerno. UD 3.2a: Introduzione alla Programmazione UD 3.2a: Introduzione alla Programmazione Bibliografia Curtin, (vecchie edizioni) 12.1 Curtin (IV edizione): 11.1 Questi lucidi Il concetto di programma memorizzato Gli elettrodomestici di uso quotidiano

Dettagli

Tecniche di progettazione e sviluppo di applicazioni mobile

Tecniche di progettazione e sviluppo di applicazioni mobile Slide del corso FSE Tecniche di progettazione e sviluppo di applicazioni mobile svolto presso AREA Science Park Padriciano - Trieste - Italy diegozabot@yahoo.it Android Introduzione diegozabot@yahoo.it

Dettagli

INFORMATICA GENERALE. Prof Alberto Postiglione Dipartim. Scienze della Comunicazione Univ. Salerno. Università degli Studi di Salerno

INFORMATICA GENERALE. Prof Alberto Postiglione Dipartim. Scienze della Comunicazione Univ. Salerno. Università degli Studi di Salerno INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno : Introduzione alla Programmazione Bibliografia 14 apr 2010 Dia 2 Curtin, (vecchie

Dettagli

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione

Dettagli

PARTE 4 La Macchina Software

PARTE 4 La Macchina Software PARTE 4 La Macchina Software 94 Macchina Hardware e Macchina Software applicativi sistema operativo macchina hardware Agli albori dell'informatica, si programmava in binario, cioe` in linguaggio macchina,

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

ISTITUTO TECNICO COMMERCIALE STATALE ABBA - BALLINI

ISTITUTO TECNICO COMMERCIALE STATALE ABBA - BALLINI ISTITUTO TECNICO COMMERCIALE STATALE ABBA - BALLINI Via Tirandi n. 3-25128 BRESCIA tel. 030/307332-393363 - fax 030/303379 www.abba-ballini.it email: info@abba-ballini.it DIPARTIMENTO DI INFORMATICA Attività

Dettagli

Fondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009. Prof. Raffaele Nicolussi

Fondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009. Prof. Raffaele Nicolussi Fondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via B. Castiglione 59-00142 Roma Docente Raffaele Nicolussi rnicolussi@fub.it Lezioni

Dettagli

NORMA CEI EN 61131. PLC: programmazione. PLC: programmazione. PLC: programmazione. Automazione Industriale 3. Automazione Industriale

NORMA CEI EN 61131. PLC: programmazione. PLC: programmazione. PLC: programmazione. Automazione Industriale 3. Automazione Industriale NORMA CEI EN 61131 Ing.Francesco M. Raimondi www.unipa.it/fmraimondi Lezioni del corso di Dipartimento di Ingegneria dell Automazione e dei Sistemi 1 La normativa IEC 1131 del 1993 ha standardizzato 5

Dettagli

Situazione Attuale. Le persone svolgono molte operazioni ripetitive ed occupano il proprio computer per le elaborazioni..

Situazione Attuale. Le persone svolgono molte operazioni ripetitive ed occupano il proprio computer per le elaborazioni.. Gestione Presenze Situazione Attuale Con sistemi classici di rilevazione presenze installati in azienda Le persone svolgono molte operazioni ripetitive ed occupano il proprio computer per le elaborazioni..

Dettagli

Progettazione : Design Pattern Creazionali

Progettazione : Design Pattern Creazionali Progettazione : Design Pattern Creazionali Alessandro Martinelli alessandro.martinelli@unipv.it 30 Novembre 2010 Progettazione : Design Pattern Creazionali Aspetti generali dei Design Pattern Creazionali

Dettagli

Concetti di base di ingegneria del software

Concetti di base di ingegneria del software Concetti di base di ingegneria del software [Dalle dispense del corso «Ingegneria del software» del prof. A. Furfaro (UNICAL)] Principali qualità del software Correttezza Affidabilità Robustezza Efficienza

Dettagli

Caso di Studio : Dispositivi a Teatro

Caso di Studio : Dispositivi a Teatro Caso di Studio : Dispositivi a Teatro Alessandro Martinelli alessandro.martinelli@unipv.it 6 Dicembre 2012 Fondamenti di Informatica II Dispositivi a Teatro Un produttore cinematografico si sta organizzando

Dettagli

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati Informatica 3 Informatica 3 LEZIONE 10: Introduzione agli algoritmi e alle strutture dati Modulo 1: Perchè studiare algoritmi e strutture dati Modulo 2: Definizioni di base Lezione 10 - Modulo 1 Perchè

Dettagli

Origini e caratteristiche dei calcolatori elettronici

Origini e caratteristiche dei calcolatori elettronici Origini e caratteristiche dei calcolatori elettronici Lunedì, 09 ottobre 2006 Supercomputer, mainframe 1 Server, workstation, desktop, notebook, palmare Un po di storia 1642 Biagio Pascal 1671 Leibniz

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione 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

Dettagli

9. Architetture di Dominio

9. Architetture di Dominio 9. Architetture di Dominio imparare dall esperienza comune Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 9. Architetture di Dominio 1 / 20 Sommario 1 Architetture

Dettagli

COMUNE DI RAVENNA GUIDA ALLA VALUTAZIONE DELLE POSIZIONI (FAMIGLIE, FATTORI, LIVELLI)

COMUNE DI RAVENNA GUIDA ALLA VALUTAZIONE DELLE POSIZIONI (FAMIGLIE, FATTORI, LIVELLI) COMUNE DI RAVENNA Il sistema di valutazione delle posizioni del personale dirigente GUIDA ALLA VALUTAZIONE DELLE POSIZIONI (FAMIGLIE, FATTORI, LIVELLI) Ravenna, Settembre 2004 SCHEMA DI SINTESI PER LA

Dettagli

PROGETTAZIONE DISCIPLINARE DI DIPARTIMENTO

PROGETTAZIONE DISCIPLINARE DI DIPARTIMENTO Progettazione disciplinare di dipartimento Pag. 1 di 5 ANNO SCOLASTICO 2013-2014 PROGETTAZIONE DISCIPLINARE DI DIPARTIMENTO TECNOLOGIA classe prima FINALITA OBIETTIVI GENERALI Le finalità educative (obiettivi

Dettagli

Manuale Utente Prerequisiti per DigitalSign Lite Sistema Operativo Linux a 64 bit

Manuale Utente Prerequisiti per DigitalSign Lite Sistema Operativo Linux a 64 bit - Carta Regionale dei Servizi e Certificati Qualificati di Firma Digitale Manuale Utente Prerequisiti per DigitalSign Lite Sistema Operativo Linux a 64 bit Codice del Documento: CRS-CA-MES#05 Revisione

Dettagli

Breve storia del calcolo automatico

Breve storia del calcolo automatico Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Approfondimenti 01 Breve storia del calcolo automatico Marzo 2010 L architettura del calcolatore 1 Approfondimenti: Storia del calcolo automatico

Dettagli

Indice. pagina 2 di 10

Indice. pagina 2 di 10 LEZIONE PROGETTAZIONE ORGANIZZATIVA DOTT.SSA ROSAMARIA D AMORE Indice PROGETTAZIONE ORGANIZZATIVA---------------------------------------------------------------------------------------- 3 LA STRUTTURA

Dettagli

Java? Sì, grazie. Scopo del corso

Java? Sì, grazie. Scopo del corso Modulo di Java? Sì, grazie Il linguaggio di Internet? Portabilità su qualunque piattaforma (non solo calcolatori): It works everywhere Supporto e disponibilità di strumenti, librerie e documentazione garantiti

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 3-Compilatori e interpreti 1 Prerequisiti Principi di programmazione Utilizzo di un compilatore 2 1 Introduzione Una volta progettato un algoritmo codificato in un linguaggio

Dettagli

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09 SISTEMI OPERATIVI Prof. Enrico Terrone A. S: 2008/09 Che cos è il sistema operativo Il sistema operativo (SO) è il software che gestisce e rende accessibili (sia ai programmatori e ai programmi, sia agli

Dettagli

Introduzione alla Programmazione Orientata agli Oggetti. Classi, Oggetti e Messaggi

Introduzione alla Programmazione Orientata agli Oggetti. Classi, Oggetti e Messaggi Introduzione alla Programmazione Orientata agli Oggetti Classi, Oggetti e Messaggi Agenda 1. La metodologia di progettazione ad oggetti Concetti fondamentali: oggetti, classi, messaggi 2. I concetti fondamentali

Dettagli

Programmazione in Java Parte I: Fondamenti

Programmazione in Java Parte I: Fondamenti Programmazione in Java Parte I: Fondamenti Lezione 1 Dott. Marco Faella Riferimenti Testi consigliati: Progettazione del software e design pattern in Java di C.S. Horstmann Apogeo Gli esempi di codice

Dettagli

FINALMENTE SUL TREPPIEDE WINDOWS con PREGEO, AutoCAD, PFCAD e tutto quello che serve per la massima autonomia ed efficienza in campagna.

FINALMENTE SUL TREPPIEDE WINDOWS con PREGEO, AutoCAD, PFCAD e tutto quello che serve per la massima autonomia ed efficienza in campagna. Tel. 045 797 1883 337501210 337 486191 - Fax 045 4859389 1 YES, WE CAN! LA TUA STAZIONE TOTALE HA UNA BUONA OTTICA E MECCANICA, MA HAI PROBLEMI A REGISTRARE I DATI? TI PIACEREBBE AVERE IN TEMPO REALE LA

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 1 Sistema software 1 Prerequisiti Utilizzo elementare di un computer Significato elementare di programma e dati Sistema operativo 2 1 Introduzione In questa Unità studiamo

Dettagli

SCUOLA PRIMARIA Anno Scolastico 2014/2015 CURRICOLO DI TECNOLOGIA OBIETTIVI DI APPRENDIMENTO AL TERMINE DELLA CLASSE TERZA DELLA SCUOLA PRIMARIA

SCUOLA PRIMARIA Anno Scolastico 2014/2015 CURRICOLO DI TECNOLOGIA OBIETTIVI DI APPRENDIMENTO AL TERMINE DELLA CLASSE TERZA DELLA SCUOLA PRIMARIA Ministero dell Istruzione, dell Università e della Ricerca Istituto Comprensivo Statale di Calolziocorte Via F. Nullo,6 23801 CALOLZIOCORTE (LC) e.mail: lcic823002@istruzione.it - Tel: 0341/642405/630636

Dettagli

12. Evoluzione del Software

12. Evoluzione del Software 12. Evoluzione del Software Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 12. Evoluzione del Software 1 / 21 Evoluzione del Software - generalità Cosa,

Dettagli

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools Una breve introduzione operativa a STGraph Luca Mari, versione 5.3.11 STGraph è un sistema software per creare, modificare ed eseguire modelli di sistemi dinamici descritti secondo l approccio agli stati

Dettagli

Uso di librerie preconfezionate. pezzi di programma già scritto da altri; di solito ben collaudati;

Uso di librerie preconfezionate. pezzi di programma già scritto da altri; di solito ben collaudati; Uso di librerie preconfezionate Cosa sono: pezzi di programma già scritto da altri; di solito ben collaudati; comprendono le definizioni delle funzioni e il codice eseguibile; per librerie di pubblico

Dettagli

Istituto Universitario Navale Facoltà di Ingegneria Corso di Laurea in Ingegneria delle Telecomunicazioni

Istituto Universitario Navale Facoltà di Ingegneria Corso di Laurea in Ingegneria delle Telecomunicazioni Istituto Universitario Navale Facoltà di Ingegneria Corso di Laurea in Ingegneria delle Telecomunicazioni Fondamenti di Informatica Modulo 1 Programma dell'a.a. 2003/2004 Luigi Romano Dipartimento di Informatica

Dettagli

11. Evoluzione del Software

11. Evoluzione del Software 11. Evoluzione del Software Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 11. Evoluzione del Software 1 / 21 Evoluzione del Software - generalità Cosa,

Dettagli

1 Processo, risorsa, richiesta, assegnazione 2 Concorrenza 3 Grafo di Holt 4 Thread 5 Sincronizzazione tra processi

1 Processo, risorsa, richiesta, assegnazione 2 Concorrenza 3 Grafo di Holt 4 Thread 5 Sincronizzazione tra processi 1 Processo, risorsa, richiesta, assegnazione 2 Concorrenza 3 Grafo di Holt 4 Thread 5 Sincronizzazione tra processi Il processo E' un programma in esecuzione Tipi di processo Stati di un processo 1 indipendenti

Dettagli

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1) La gestione di un calcolatore Sistemi Operativi primo modulo Introduzione Augusto Celentano Università Ca Foscari Venezia Corso di Laurea in Informatica Un calcolatore (sistema di elaborazione) è un sistema

Dettagli

Prova Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse

Prova Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse Prova Finale a.a. 2011/2012 Laboratorio 1: Introduzione a Java e Eclipse 1 Java 6 Standard Edition Linguaggio Java (... (javac, Tool di sviluppo Librerie per l'interfaccia grafica Librerie di base Macchina

Dettagli

La Macchina Virtuale

La Macchina Virtuale Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2008/2009 Docente: ing. Salvatore

Dettagli

Che cosa è un VIRUS?

Che cosa è un VIRUS? Virus & Antivirus Virus Nella sicurezza informatica un virus è un software, appartenente alla categoria dei malware, che è in grado, una volta eseguito, di infettare dei file in modo da riprodursi facendo

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione 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)

Dettagli

introduzione I MICROCONTROLLORI

introduzione I MICROCONTROLLORI introduzione I MICROCONTROLLORI Definizione Un microcontrollore è un dispositivo elettronico programmabile Può svolgere autonomamente diverse funzioni in base al programma in esso implementato Non è la

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

I puntatori e l allocazione dinamica di memoria

I puntatori e l allocazione dinamica di memoria I puntatori e l allocazione dinamica di memoria L allocazione delle variabili Allocazione e rilascio espliciti di memoria Le funzioni malloc e free 2 2006 Politecnico di Torino 1 Allocare = collocare in

Dettagli

APPENDICE I Pratiche di tecnologie informatiche per la elaborazione della musica e del suono

APPENDICE I Pratiche di tecnologie informatiche per la elaborazione della musica e del suono APPENDICE I Pratiche di tecnologie informatiche per la elaborazione della musica e del suono 135 L elaborazione digitale del segnale audio 136 L appendice dedicata alle Pratiche di tecnologie informatiche

Dettagli

Scenario di Progettazione

Scenario di Progettazione Appunti del 3 Ottobre 2008 Prof. Mario Bochicchio SCENARIO DI PROGETTAZIONE Scenario di Progettazione Il Committente mette a disposizione delle risorse e propone dei documenti che solitamente rappresentano

Dettagli

LABORATORIO DI INFORMATICA

LABORATORIO DI INFORMATICA - PROGRAMMAZIONE DI DIPARTIMENTO - anno scolastico 2015-2016 Corso: Liceo Linguistico Quadro orario Classe I II Laboratorio di 2 2 LABORATORIO DI INFORMATICA L insegnamento dell informatica nel liceo linguistici

Dettagli

DIREZIONE INFORMATICA AREA HELPDESK

DIREZIONE INFORMATICA AREA HELPDESK Il programma consente di compilare l'elenco degli archivi che conteengono dati personali come richiesto alla legge 196/03 E' raggiungibile da DBErw, alla voce Applicazioni Guidate: La prima schermata e'

Dettagli

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA) Il software Software Il software Il software è la sequenza di istruzioni che permettono ai computer di svolgere i loro compiti ed è quindi necessario per il funzionamento del calcolatore. Il software può

Dettagli

COPYRIGHT riproduzione vietata 1/9

COPYRIGHT riproduzione vietata 1/9 1/9 I BISOGNI DELL UOMO L uomo per vivere deve soddisfare i bisogni primari come la fame e la sete, dormire, abitare. Vengono poi i bisogni di tipo psicologico e sociale. La tecnologia, mediante le attività

Dettagli

Sistemi Operativi. 5 Gestione della memoria

Sistemi Operativi. 5 Gestione della memoria Gestione della memoria Compiti del gestore della memoria: Tenere traccia di quali parti della memoria sono libere e quali occupate. Allocare memoria ai processi che ne hanno bisogno. Deallocare la memoria

Dettagli

Software - Software applicativo - Altri campi di applicazione

Software - Software applicativo - Altri campi di applicazione Software - Software applicativo - Altri campi di applicazione Word (word processor) Excel (foglio di calcolo) Power Point (presentazioni) Entourage (posta elettronica e organizer) word processor e editor

Dettagli

RMI. Prova pratica di Sistemi Distribuiti:

RMI. Prova pratica di Sistemi Distribuiti: Prova pratica di Sistemi Distribuiti: RMI Di Nicola Milella Al fine di toccare con mano queste tecnologie e capirne i rispettivi pro e contro si è deciso di sviluppare un applicazione distribuita sfruttando

Dettagli

Il Sistema Operativo. Introduzione di programmi di utilità. Elementi di Informatica Docente: Giorgio Fumera

Il Sistema Operativo. Introduzione di programmi di utilità. Elementi di Informatica Docente: Giorgio Fumera CPU Memoria principale Il Sistema Operativo Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura A.A. 2009/2010 ALU Unità di controllo Registri A indirizzi

Dettagli

La Gestione delle risorse Renato Agati

La Gestione delle risorse Renato Agati Renato Agati delle risorse La Gestione Schedulazione dei processi Gestione delle periferiche File system Schedulazione dei processi Mono programmazione Multi programmazione Gestione delle periferiche File

Dettagli

Il.NET Framework. By Dario Maggiari. L architettura del.net Framework è riassunta, nel complesso, nella figura seguente:

Il.NET Framework. By Dario Maggiari. L architettura del.net Framework è riassunta, nel complesso, nella figura seguente: Il.NET Framework By Dario Maggiari L architettura del.net Framework è riassunta, nel complesso, nella figura seguente: Il cuore del.net Framework è costituito dal CLR (Common Language Runtime) che, secondo

Dettagli

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti 13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere

Dettagli

Sistemi Web! per il turismo! - lezione 3 -

Sistemi Web! per il turismo! - lezione 3 - Sistemi Web per il turismo - lezione 3 - I computer sono in grado di eseguire molte operazioni, e di risolvere un gran numero di problemi. E arrivato il momento di delineare esplicitamente il campo di

Dettagli