Elemen& grafici. Albero delle view. Device Monitor AA 2014/15. hierarchyviewer comando della cartella tools

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Elemen& grafici. Albero delle view. Device Monitor AA 2014/15. hierarchyviewer comando della cartella tools"

Transcript

1 Elemen& grafici Programmazione Java per Disposi8vi Mobili 1 Albero delle view Device Monitor hierarchyviewer comando della cartella tools Programmazione Java per Disposi8vi Mobili 2 Programmazione Java per Disposi8vi Mobili 1

2 Albero delle view La grafica è composta da View e ViewGroup Le view disegnano qualcosa sullo schermo e ci si può interagire Le viewgroup sono contenitori invisibili per view e viewgroup I componen8 grafici formano un albero Programmazione Java per Disposi8vi Mobili 3 Composite Pa9ern Le viewgroup estendono view Le viewgroup contengono una o più view Vantaggi Realizzi collezioni di view Non devo differenziare tra nodi e foglie Posso chiamare un metodo su tuqa la collezione Programmazione Java per Disposi8vi Mobili 4 Programmazione Java per Disposi8vi Mobili 2

3 A9raversamento dell'albero Usando il composite paqern ad ogni Ac8vity è associato l'albero delle view Posso chiamare un metodo sulla radice ed a cascata viene chiamato su tuqo l'albero draw!! L aqraversamento dell albero cambia l ordine di visualizzazione Android garan8sce che i nodi sono aqraversa8 partendo dal root i nodi più vicini al root sono aqraversa8 prima i nodi di pari livello sono aqraversa8 secondo l ordine di definizione Programmazione Java per Disposi8vi Mobili 5 Processo di draw Processo distribuito in tre passi Determino le misure delle view sullo schermo Determino il posizionamento delle view Disegno le view Eseguo tuqo in un singolo thread per non aver problemi di contesa inibisco il controllo degli oggev grafici dagli altri thread Programmazione Java per Disposi8vi Mobili 6 Programmazione Java per Disposi8vi Mobili 3

4 Misura Il parent chiama measure(int, int) Viene eseguito in metodo onmeasure Può essere chiamato più volte Il parent comunica alle view se la loro misura UNSPECIFIED misura libera EXACTLY misura esaqa AT_MOST misura massima View.MeasureSpec makemeasurespec metodo per fornire il 8po di misura Anche i layout devono calcolare la propria misura in base a quella delle view setmeasureddimension Programmazione Java per Disposi8vi Mobili 7 Misure di una view Le view hanno due 8pi di misure measured quelle che vorrebbero avere effe?ve quelle che realmente avranno Per oqenere le misure public final int getmeasuredwidth() public final int getmeasuredheight() public final int getwidth() public final int getheight() Entrambe contengono il padding e non il margine Programmazione Java per Disposi8vi Mobili 8 Programmazione Java per Disposi8vi Mobili 4

5 Posizionamento delle view Si aqraversa l'albero una seconda volta per determinare la posizione delle view nota la loro dimensione Il parent chiama layout(int, int, int, int) Viene eseguito in metodo onlayout coordinate del ver8ci top- lek e boqom- right Le informazioni circa il layout sono memorizzate in istanze della classe ViewGroup.LayoutParams Ogni layout definisce la sua con i paramatri specifici Programmazione Java per Disposi8vi Mobili 9 LayoutParam Programmazione Java per Disposi8vi Mobili 10 Programmazione Java per Disposi8vi Mobili 5

6 Disegno delle view Viene chiamato su tuqo l'albero il metodo draw questo chiama il metodo ondraw TuQe le view note le dimensioni e noto la posizione si disegnano Programmazione Java per Disposi8vi Mobili 11 Ridisegnare le view public void requestlayout () richiede di ricominciare la fase di disegno partendo dal ricalcolo delle misure public void invalidate () serve a far ridisegnare le view public void postinvalidate () se sono in un thread differente da quello di grafica Programmazione Java per Disposi8vi Mobili 12 Programmazione Java per Disposi8vi Mobili 6

7 XML e Java I file xml genera oggev java L operazione di conversione si chiama infla&ng da un elemento xml genera un albero di view e viewgroup Per oqenre il riferimento all oggeqo uso public View findviewbyid (int id) metodo di Ac8vity Infla8ng del root ne metodo oncreate public void setcontentview(int id) Programmazione Java per Disposi8vi Mobili 13 Layout Un layout è una specializzazione di ViewGroup posiziona le View contenute in un modo specifico Potete dichiarare layout in xml folder res/layout usando gli elemen8 forni8 da android dire9amente in java classi android Programmazione Java per Disposi8vi Mobili 14 Programmazione Java per Disposi8vi Mobili 7

8 XML Layout Programmazione Java per Disposi8vi Mobili 15 Layout Layout predefini8 LinearLayout Rela8veLayout TableLayout FrameLayout Programmazione Java per Disposi8vi Mobili 16 Programmazione Java per Disposi8vi Mobili 8

9 Esempio di Layout hqps://developer.android.com/reference/ android/view/viewgroup.html Esempio di FrameLayout Programmazione Java per Disposi8vi Mobili 17 Linear Layout Allinea le view contenute Si specifica il verso di allineamento android:layout_orienta8on public void setorienta8on (int orienta8on) Si può specificare la dimensione rela8va android:layout_weigth nell altra direzione è possibile ges8re l allineamento android:layout_gravity ProgeQo LinearLayoutTest Programmazione Java per Disposi8vi Mobili 18 Programmazione Java per Disposi8vi Mobili 9

10 Programmazione Java per Disposi8vi Mobili 19 Programmazione Java per Disposi8vi Mobili 20 Programmazione Java per Disposi8vi Mobili 10

11 Programmazione Java per Disposi8vi Mobili 21 Rela&ve Layout Posizionamento delle view rela8vo ad altre view al parent Programmazione Java per Disposi8vi Mobili 22 Programmazione Java per Disposi8vi Mobili 11

12 Frame layout Singola finestra tuqe le view sono poste una sull'altra posso solo controllare la loro gravity Programmazione Java per Disposi8vi Mobili 23 Programmazione Java per Disposi8vi Mobili 12

Sistemi Mobili e Wireless Android Interfacce utente: Widget e Layout (2)

Sistemi Mobili e Wireless Android Interfacce utente: Widget e Layout (2) Sistemi Mobili e Wireless Android Interfacce utente: Widget e Layout (2) Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it

Dettagli

Grafica Android Mobile Programming Prof. R. De Prisco

Grafica Android Mobile Programming Prof. R. De Prisco Grafica Un immagine può essere disegnata in un oggejo View grafica semplice, senza necessità di cambiameno un oggeto Canvas grafica complessa, aggiornameno frequeno 144 Classe Drawable rappresenta un oggejo

Dettagli

Corso di programmazione di sistemi mobile 1. Android. Activity, View e Layout

Corso di programmazione di sistemi mobile 1. Android. Activity, View e Layout Corso di programmazione di sistemi mobile 1 Android Activity, View e Layout Corso di programmazione di sistemi mobile 2 Activity In qualsiasi programma è sicuramente richiesta un interfaccia grafica che

Dettagli

Android. Project, Activity, Layout e Toast

Android. Project, Activity, Layout e Toast Android Project, Activity, Layout e Toast ANDROID PROJET Un progetto android è composto da diverse cartelle, ogni cartella può contenere uno o più file. Android_20150310 : cartella principale, contiene

Dettagli

Sistemi Mobili e Wireless Android Interfacce utente: Widget e Layout (1)

Sistemi Mobili e Wireless Android Interfacce utente: Widget e Layout (1) Sistemi Mobili e Wireless Android Interfacce utente: Widget e Layout (1) Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it

Dettagli

Android. Layout.

Android. Layout. Android Layout diegozabot@yahoo.it Interfaccia grafica Interfaccia grafica (1) Esistono due tipi di componenti che ereditano da View: widget (Button, ImageView, TextView, etc.) e layout, sottoclassi di

Dettagli

Android. Implementare una interfaccia utente

Android. Implementare una interfaccia utente Android Implementare una interfaccia utente Introduzione In questa lezione vedremo come implementare una interfaccia utente sullo schermo di Android. Vedremo gli elementi di base visualizzabili sullo schermo

Dettagli

Alberi. Alberi: definizioni. Alberi Binari. Esercizi su alberi binari: metodi ricorsivi. Struttura dati per alberi generici. ASD-L - Luca Tesei

Alberi. Alberi: definizioni. Alberi Binari. Esercizi su alberi binari: metodi ricorsivi. Struttura dati per alberi generici. ASD-L - Luca Tesei Alberi Alberi: definizioni Alberi Binari Esercizi su alberi binari: metodi ricorsivi Struttura dati per alberi generici 1 Alberi Gli alberi sono strutture dati naturalmente ricorsive Un albero è un particolare

Dettagli

Mobile Programming. Prova scritta del 10/02/2017. Prof. De Prisco. Corso di laurea in Informatica

Mobile Programming. Prova scritta del 10/02/2017. Prof. De Prisco. Corso di laurea in Informatica Corso di laurea in Informatica Mobile Prof. De Prisco Prova scritta del 10/02/2017 NOME: COGNOME: MATRICOLA: Domande Punti 1 /10 2 /10 3 /10 4 /10 5 /10 6 /10 7 /10 8 /10 9 /10 10 /10 TOTALE /100 Quesito

Dettagli

Android. Android01: Introduzione alle Activity.

Android. Android01: Introduzione alle Activity. Android Android01: Introduzione alle Activity diegozabot@yahoo.it Applicazioni Android (1) Una applicazione android è un insieme di task ognuno dei quali è detto Activity. Ogni Activity ha un unico scopo

Dettagli

Android. Android. Sviluppo di applicazioni. Dalvik 19/03/2011. A. Ferrari

Android. Android. Sviluppo di applicazioni. Dalvik 19/03/2011. A. Ferrari Android Android A. Ferrari Android è un sistema opera8vo per disposi8vi mobili. Inizialmente sviluppato da Startup Android Inc. acquisita poi nel 2005 da Google Inc. Il cuore di Android è un kernel Linux.

Dettagli

Mobile Programming. Prova scritta del 05/02/2016. Prof. De Prisco. Corso di laurea in Informatica

Mobile Programming. Prova scritta del 05/02/2016. Prof. De Prisco. Corso di laurea in Informatica Corso di laurea in Informatica Mobile Prof. De Prisco Prova scritta del 05/02/2016 NOME: COGNOME: MATRICOLA: Domande Punti 1 /10 2 /10 3 /10 4 /10 5 /10 6 /10 7 /10 8 /10 9 /10 10 /10 TOTALE /100 Quesito

Dettagli

Android lezione 9 Le listview

Android lezione 9 Le listview Android lezione 9 Le listview In questa lezione introduciamo le ListView. Una listview ci permette di mostrare una serie di elementi all interno di una lista che puo anche essere scrollata. Ecco un esempio

Dettagli

Sviluppare Applicazioni per Android

Sviluppare Applicazioni per Android Sviluppare Applicazioni per Android ArrayAdapter ndroid disegna i componenti di una schermata attraverso oggetti della classe View, raccolti all'interno di oggetti ViewGroup (che possono raccogliere, a

Dettagli

Laboratorio di Informatica (Chimica)

Laboratorio di Informatica (Chimica) Laboratorio di Informatica (Chimica) Lezione 01: Architettura del Computer. Walter Cazzola Dipartimento di Informatica e Comunicazione Università à degli Studi di Milano. e-mail: cazzola@dico.unimi.it

Dettagli

Mobile Programming. Prova scritta del 11/01/2018. Prof. De Prisco. Corso di laurea in Informatica

Mobile Programming. Prova scritta del 11/01/2018. Prof. De Prisco. Corso di laurea in Informatica Corso di laurea in Informatica Mobile Prof. De Prisco Prova scritta del NOME: COGNOME: MATRICOLA: Domande Punti 1 /10 2 /10 3 /10 4 /10 5 /10 6 /10 7 /10 8 /10 9 /10 10 /10 TOTALE /100 1 Disegnare nell

Dettagli

ProgettAzione tecnologie in movimento - V anno Unità 4 - Applicazioni per i sistemi mobili

ProgettAzione tecnologie in movimento - V anno Unità 4 - Applicazioni per i sistemi mobili ProgettAzione tecnologie in movimento - V anno Unità 4 - Applicazioni per i sistemi mobili Compito in classe proposto Partendo dall App appena realizzata sul volume di riferimento, modificarla affinché,

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

Dettagli

Albero Binario GT 7.3. interfacce di Positio<E>, Tree<E>, e BinaryTree<E>; il file TestLinkedBinaryTree.java

Albero Binario GT 7.3. interfacce di Positio<E>, Tree<E>, e BinaryTree<E>; il file TestLinkedBinaryTree.java Laboratorio Java Albero Binario GT 7.3 Esercitazione Sono dati : interfacce di Positio, Tree, e BinaryTree; il file TestLinkedBinaryTree.java e i file.class che implementano le interfacce www.dei.unipd.it/corsi/fi2ae

Dettagli

Classi astratte Interfacce

Classi astratte Interfacce Classi astratte Interfacce Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni 1 Ereditarietà Abbiamo visto come L ereditarietà permette di costruire nuove classi utilizzando

Dettagli

PROGRAMMAZIONE III Appello del 7/03/2003

PROGRAMMAZIONE III Appello del 7/03/2003 PROGRAMMAZIONE III Appello del 7/03/2003 Scrivere in stampatello COGNOME, NOME e NUMERO DI MATRICOLA (se conosciuto) su ogni foglio consegnato e sul testo, che va consegnato insieme al compito. ESERCIZIO

Dettagli

Programmazione in Java e gestione della grafica. Lezione 6

Programmazione in Java e gestione della grafica. Lezione 6 Programmazione in Java e gestione della grafica Lezione 6 La scorsa lezione.. Operatori incremento/decremento ++ -- Istruzione while Riscritto programmi precedenti usando istruzione while Esercizio della

Dettagli

Programmazione orientata agli oggetti Classi astratte e interfacce. Classi astratte - Interfacce

Programmazione orientata agli oggetti Classi astratte e interfacce. Classi astratte - Interfacce Programmazione orientata agli oggetti Classi astratte e interfacce 1 Classi astratte Java ci consente di definire classi in cui uno o più metodi non sono implementati, ma solo dichiarati Questi metodi

Dettagli

Esercitazione 8. Corso di Tecniche di programmazione. Laurea in Ingegneria Informatica

Esercitazione 8. Corso di Tecniche di programmazione. Laurea in Ingegneria Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 8 Corso di Tecniche di programmazione Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti

Dettagli

PROGRAMMAZIONE II canale A-D luglio 2008 TRACCIA DI SOLUZIONE

PROGRAMMAZIONE II canale A-D luglio 2008 TRACCIA DI SOLUZIONE PROGRAMMAZIONE II canale A-D 2007-2008 14 luglio 2008 TRACCIA DI SOLUZIONE 1. Si vogliono realizzare mediante puntatori delle liste circolari, cioè delle liste tali che l ultimo elemento della lista punta

Dettagli

Sistemi Mobili e Wireless Android - Risorse

Sistemi Mobili e Wireless Android - Risorse Sistemi Mobili e Wireless Android - Risorse Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Risorse in Android In Android,

Dettagli

Programmazione orientata agli oggetti Classi astratte e interfacce

Programmazione orientata agli oggetti Classi astratte e interfacce Programmazione orientata agli oggetti Classi astratte e interfacce Fondamenti di Informatica L-B 1 Classi astratte Java ci consente di definire classi in cui uno o più metodi non sono implementati, ma

Dettagli

Programmazione orientata agli oggetti Classi astratte e interfacce. Classi astratte - Interfacce

Programmazione orientata agli oggetti Classi astratte e interfacce. Classi astratte - Interfacce Programmazione orientata agli oggetti Classi astratte e interfacce 1 Classi astratte Java ci consente di definire classi in cui uno o più metodi non sono implementati, ma solo dichiarati Questi metodi

Dettagli

Esercizio. 2 i=i*2) j=j*2)

Esercizio. 2 i=i*2) j=j*2) Esercizio 1 Esercizio 2 i=i*2) j=j*2) Soluzione Il frammento è composto da due parti quasi identiche. L unica differenza è il modo in cui crescono i contatori. Nella prima parte la crescita è lineare mentre

Dettagli

Windows. La prima realizzazione di un ambiente grafico si deve alla Apple (1984) per il suo Macintosh. La gestione dei file conserva la logica del DOS

Windows. La prima realizzazione di un ambiente grafico si deve alla Apple (1984) per il suo Macintosh. La gestione dei file conserva la logica del DOS Windows La prima realizzazione di un ambiente grafico si deve alla Apple (1984) per il suo Macintosh La gestione dei file conserva la logica del DOS Funzionalità di un S.O. Gestione dei file Gestione dei

Dettagli

Inizializzare oggetti

Inizializzare oggetti Inizializzare oggetti Uso della Classe Software per TLC - AA 2008/2009 1 Costruttori e polimorfismo Uso della Classe Un codice migliore Software per TLC - AA 2008/2009 2 Costruttori ed Ereditarietà Output:

Dettagli

Mobile Programming. Prova scritta del 08/01/2016. Prof. De Prisco. Corso di laurea in Informatica

Mobile Programming. Prova scritta del 08/01/2016. Prof. De Prisco. Corso di laurea in Informatica Corso di laurea in Informatica Mobile Prof. De Prisco Prova scritta del 08/01/2016 NOME: COGNOME: MATRICOLA: Domande Punti 1 /10 2 /10 3 /10 4 /10 5 /10 6 /10 7 /10 8 /10 9 /10 10 /10 TOTALE /100 Quesito

Dettagli

Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java

Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java AA 2018/2019 Tutor Lorenzo Rosa lorenzo.rosa@unibo.it 2 Programma Introduzione al calcolatore e Java Linguaggio Java, basi e

Dettagli

Sommario INTRODUZIONE... 11

Sommario INTRODUZIONE... 11 INTRODUZIONE... 11 1. INTRODUZIONE A SILVERLIGHT... 15 Che cos è Silverlight...15 Storia di Silverlight...16 Silverlight 1...16 Silverlight 2...16 Silverlight 3...17 Silverlight 4...18 Installazione di

Dettagli

Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona

Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Sommario Implementazione con Vettori Implementazione con Strutture Collegate Concetti

Dettagli

Tipi riferimento e stringhe

Tipi riferimento e stringhe Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 8 Tipi riferimento e stringhe A. Miola Novembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Tipi riferimento e stringhe 1

Dettagli

Alberi. Albero binario. Un albero binario è un albero (ordinato) in cui ciascun nodo può avere al massimo due figli (figlio destro e figlio sinistro)

Alberi. Albero binario. Un albero binario è un albero (ordinato) in cui ciascun nodo può avere al massimo due figli (figlio destro e figlio sinistro) Albero binario Un albero binario è un albero (ordinato) in cui ciascun nodo può avere al massimo due figli (figlio destro e figlio sinistro) albero binario proprio: ogni nodo interno ha esattamente due

Dettagli

Introduzione alla programmazione Android. Emanuel Di Nardo

Introduzione alla programmazione Android. Emanuel Di Nardo Introduzione alla programmazione Android 1 Emanuel Di Nardo emanuel.dinardo@gmail.com Architettura di base Insieme software composto da: Sistema operativo Middleware Applicazioni di base Utilizzo del linguaggio

Dettagli

CSS: HTML: Proprietà per la formattazione delle immagini Immagini di sfondo e sfondi multipli. Le immagini mappate

CSS: HTML: Proprietà per la formattazione delle immagini Immagini di sfondo e sfondi multipli. Le immagini mappate CSS: Proprietà per la formattazione delle immagini Immagini di sfondo e sfondi multipli HTML: Le immagini mappate 1 Le principali proprietà che permettono di manipolare le immagini agiscono sul box mode

Dettagli

PROGRAMMAZIONE 2 5. Dynamic dispatch

PROGRAMMAZIONE 2 5. Dynamic dispatch PROGRAMMAZIONE 2 5. Dynamic dispatch PR2 2017-2018 1 Cosa significa? La dichiarazione di una variabile non determina in maniera univoca il >po dell oggeao che la variabile riferisce Cerchiamo di capire

Dettagli

Services. Servizi. Componen8 che avviano operazioni in background. Specializzazioni della classe Context

Services. Servizi. Componen8 che avviano operazioni in background. Specializzazioni della classe Context Services Programmazione di disposi8vi mobili - v1.0 1 Servizi Componen8 che avviano operazioni in background i loro thread sopravvivono di più di quelli delle ac8vity nascoste Specializzazioni della classe

Dettagli

AutoCAD Map. Marco Negretti. tel V

AutoCAD Map. Marco Negretti.     tel V AutoCAD Map Marco Negretti e-mail: marco@torno.ing.unico.it http://geomatica.ing.unico.it tel. 031.332.7524 V 1.1-2001 I dati in AutoCAD I dati vengono memorizzati come coordinate X, Y, Z che formano punti,

Dettagli

Alberi. Gli alberi sono una generalizzazione delle liste che consente di modellare delle strutture gerarchiche come questa: Largo. Fosco.

Alberi. Gli alberi sono una generalizzazione delle liste che consente di modellare delle strutture gerarchiche come questa: Largo. Fosco. Alberi Alberi Gli alberi sono una generalizzazione delle liste che consente di modellare delle strutture gerarchiche come questa: Largo Fosco Dora Drogo Frodo Dudo Daisy Alberi Gli alberi sono una generalizzazione

Dettagli

Esercitazione 3. Heapsort

Esercitazione 3. Heapsort Esercitazione Heapsort Heapsort Algoritmo di ordinamento che utilizza una struttura dati detta heap per la gestione delle informazioni Tempo di esecuzione O(n lg n) Heap (binario) = struttura dati composta

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA 1 Struttura di un programma Java Un programma Java consiste in un insieme di definizioni di classi. In genere

Dettagli

Un heap binario è un albero binario con le seguenti caratteristiche:

Un heap binario è un albero binario con le seguenti caratteristiche: Heap Un heap binario è un albero binario con le seguenti caratteristiche: È quasi completo: tutti i livelli, tranna al più l ultimo sono completi e le foglie dell ultimo livello sono tutte adossate a sinistra.

Dettagli

Indice generale. Prefazione...xiii. Introduzione...xv. Android e Java per Android...1

Indice generale. Prefazione...xiii. Introduzione...xv. Android e Java per Android...1 Indice generale Prefazione...xiii Introduzione...xv Ringraziamenti...xviii Capitolo 1 Capitolo 2 Android e Java per Android...1 Cos è Android... 2 Architettura di Android... 2 La Dalvik Virtual Machine...

Dettagli

Alberi. Strutture dati: Alberi. Alberi: Alcuni concetti. Alberi: definizione ricorsiva. Alberi: Una prima realizzazione. Alberi: prima Realizzazione

Alberi. Strutture dati: Alberi. Alberi: Alcuni concetti. Alberi: definizione ricorsiva. Alberi: Una prima realizzazione. Alberi: prima Realizzazione Alberi Strutture dati: Alberi Strutture gerarchiche di dati Esempi Il file system di un sistema operativo L organigramma di un azienda Alberi generali, alberi n-ari, alberi binari, Ogni nodo ha un unico

Dettagli

Mobile Programming. Prova scritta del 07/02/2015. Prof. De Prisco. Corso di laurea in Informatica

Mobile Programming. Prova scritta del 07/02/2015. Prof. De Prisco. Corso di laurea in Informatica Corso di laurea in Informatica Mobile Prof. De Prisco Prova scritta del 07/02/2015 NOME: COGNOME: MATRICOLA: Domande Punti 1 /10 2 /10 3 /10 4 /10 5 /10 6 /10 7 /10 8 /10 9 /10 10 /10 TOTALE /100 Quesito

Dettagli

Mobile Programming. Prova scritta del 07/04/2016. Prof. De Prisco. Corso di laurea in Informatica

Mobile Programming. Prova scritta del 07/04/2016. Prof. De Prisco. Corso di laurea in Informatica Corso di laurea in Informatica Mobile Prof. De Prisco Prova scritta del 07/04/2016 NOME: COGNOME: MATRICOLA: Domande Punti 1 /10 2 /10 3 /10 4 /10 5 /10 6 /10 7 /10 8 /10 9 /10 10 /10 TOTALE /100 Quesito

Dettagli

Lezione 15 programmazione in Java. Nicola Drago Dipartimento di Informatica Università di Verona

Lezione 15 programmazione in Java. Nicola Drago Dipartimento di Informatica Università di Verona Lezione 15 programmazione in Java Nicola Drago nicola.drago@univr.it Dipartimento di Informatica Università di Verona Anteprima Approfondimenti della programmazione OO Il modificatore abstract Le classi

Dettagli

Esercizio 1. FONDAMENTI DI INFORMATICA II Algoritmi e Strutture dati a.a 2015/16 14 giugno 2016

Esercizio 1. FONDAMENTI DI INFORMATICA II Algoritmi e Strutture dati a.a 2015/16 14 giugno 2016 FONDAMENTI DI INFORMATICA II Algoritmi e Strutture dati a.a 201/16 14 giugno 2016 1 2 3 4 7 6 7 7 6 Esercizio 1 Calcolare la complessità del blocco (indicando le relazioni di ricorrenza di tempo e risultato

Dettagli

Sviluppare Applicazioni per Android

Sviluppare Applicazioni per Android Sviluppare Applicazioni per Android ArrayAdapter ndroid disegna i componenti di una schermata attraverso oggetti della classe View, raccolti all'interno di oggetti ViewGroup (che possono raccogliere, a

Dettagli

Il sistema operativo deve fornire una visione astratta dei file su disco e l'utente deve avere la possibilità di:

Il sistema operativo deve fornire una visione astratta dei file su disco e l'utente deve avere la possibilità di: Il File System Il sistema operativo deve fornire una visione astratta dei file su disco e l'utente deve avere la possibilità di: identificare ogni file con un nome (filename) astraendo completamente dalla

Dettagli

Autodesk Map. Marco Negretti. tel

Autodesk Map. Marco Negretti.    tel Autodesk Map Marco Negretti e-mail: marco@geomatica.como.polimi.it http://geomatica.como.polimi.it tel. 031.332.7524 V 3.1b 09/2003 I dati in Autodesk Map I dati vengono memorizzati come coordinate X,

Dettagli

Fragments. Frammento. Un acmvity può ospitare vari frammenm. Si possono creare UI con molm frammenm

Fragments. Frammento. Un acmvity può ospitare vari frammenm. Si possono creare UI con molm frammenm Università di Salerno - a.a. 2013-2014 1 Frammento rappresenta una porzione dell UI 2 Un acmvity può ospitare vari frammenm I frammenm possono essere inserim e rimossi durante l esecuzione Si possono creare

Dettagli

Esame di Algoritmi e Strutture Dati Corso di Laurea in Ingegneria Informatica Canali A-L, M-Z

Esame di Algoritmi e Strutture Dati Corso di Laurea in Ingegneria Informatica Canali A-L, M-Z Esame di Algoritmi e Strutture Dati Corso di Laurea in Ingegneria Informatica Canali A-L, M-Z Anno Accademico 2002-2003 9 luglio 2002-03 Domanda 1, punti 6 Si consideri la seguente classe Java, in cui,

Dettagli

Android. Custom View.

Android. Custom View. Android Custom View diegozabot@yahoo.it Creazione di una Custom View (1) La classe View è la classe madre di tutti i componenti visuali di Android. Ogni sottoclasse implementa il metodo ondraw(canvas)

Dettagli

Programmazione orientata agli oggetti. Ivan Lanese e Cosimo Laneve

Programmazione orientata agli oggetti. Ivan Lanese e Cosimo Laneve Programmazione orientata agli oggetti Ivan Lanese e Cosimo Laneve Argomenti Programmazione orientata agli oggetti Classi Oggetti Costruttori Programmazione orientata agli oggetti È un paradigma di programmazione

Dettagli

Alberi binari di ricerca

Alberi binari di ricerca Alberi binari di ricerca Definizione Un albero si dice albero binario di ricerca è un albero binario in cui: - Ogni nodo è caratterizzato un valore chiamato chiave - L insieme delle chiavi è totalmente

Dettagli

Programmazione è gestione di eventi

Programmazione è gestione di eventi FUNZIONI Ed Eventi Programmazione è gestione di eventi Evento 1 (tasto premuto) Evento 2 (mouse) Evento 3 (cambio frame) Oggetto Evento 4 (fine di un brano audio) Azioni per evento 1 1. Azione 1 2. Azione

Dettagli

CdL in Medicina Veterinaria - STPA AA

CdL in Medicina Veterinaria - STPA AA CdL in Medicina Veterinaria - STPA AA 2007-08 I Files I files I Files sono l unità base di informazione nell interazione tra utente e sistema operativo Costituito da un insieme di byte (di natura omogenea)

Dettagli

Pag. 1/8. Esercizi lezione 4. Esercizio A

Pag. 1/8. Esercizi lezione 4. Esercizio A Pag. 1/8 Esercizi lezione 4 Esercizio A Progettate una UI con una textview (id=text) e un pulsante (id=button). Cliccando sul pulsante appare una alert dialog con un avviso e un pulsante. Suggerimenti:

Dettagli

Video Scrittura (MS Word) Lezione 1 Funzioni di base

Video Scrittura (MS Word) Lezione 1 Funzioni di base Video Scrittura (MS Word) Lezione 1 Funzioni di base Cos e un programma di Video Scrittura Un programma di Video Scrittura serve per effettuare tutte quelle operazioni che consentono di creare, modificare,

Dettagli

Introduzione alla Programmazione in Java attraverso un esempio commentato

Introduzione alla Programmazione in Java attraverso un esempio commentato Corso di Studi in Informatica Programmazione 1 corso B prof. Elio Giovannetti Introduzione alla Programmazione in Java attraverso un esempio commentato Programmazione 1 B - a.a. 2002-03 53 Modello di memoria

Dettagli

Indice generale. Capitolo 1 Android e Java per Android Il progetto ApoBus e la creazione dell ambiente con Android Studio...

Indice generale. Capitolo 1 Android e Java per Android Il progetto ApoBus e la creazione dell ambiente con Android Studio... Introduzione...xiii Struttura del testo...xiv Ringraziamenti...xvi Capitolo 1 Android e Java per Android... 1 Che cos è Android... 2 Architettura di Android... 2 I componenti principali di Android... 4

Dettagli

Programmazione con Snap4Arduino. Paola Giannini

Programmazione con Snap4Arduino. Paola Giannini Programmazione con Snap4Arduino Paola Giannini Informazioni preliminari Accedete a https://orienta.dir.uniupo.it/course/view.php? id=43 Con le vostre credenziali Facebook o gmail Pwd: arduino2017 Trovate

Dettagli

Programmazione in Java (I modulo) Lezione 4

Programmazione in Java (I modulo) Lezione 4 Programmazione in Java (I modulo) Lezione 4 Costanti Chiamiamo costanti tutti i valori numerici (interi o con la virgola), i caratteri e le stringhe. Esempio: 2, 3.7, 'y, buongiorno Le costanti numeriche

Dettagli

Alberi. Gli alberi sono una generalizzazione delle liste che consente di modellare delle strutture gerarchiche come questa: Largo. Fosco.

Alberi. Gli alberi sono una generalizzazione delle liste che consente di modellare delle strutture gerarchiche come questa: Largo. Fosco. Alberi Alberi Gli alberi sono una generalizzazione delle liste che consente di modellare delle strutture gerarchiche come questa: Largo Fosco Dora Drogo Dudo Frodo Daisy Alberi Gli alberi sono una generalizzazione

Dettagli

Modulo 2: Strutture fondamentali della programmazione Java

Modulo 2: Strutture fondamentali della programmazione Java Modulo 2: Strutture fondamentali della programmazione Java Argomenti Trattati: Un semplice programma Java: Presentazione di un primo Esempio; Introduzione alla struttura; Compilazione ed esecuzione. Argomenti

Dettagli

Ripasso di programmazione ricorsiva

Ripasso di programmazione ricorsiva Ripasso di programmazione ricorsiva Ripasso di programmazione ricorsiva Algoritmo ricorsivo: algoritmo espresso in termini di se stesso. Programmazione iterativa e programmazione ricorsiva sono equivalenti.

Dettagli

Riassunto: cos è la OOP? classi astratte, interfacce, classi interne. Scaletta. Figura con area()? Figura senza area()? Stefano Mizzaro 1.

Riassunto: cos è la OOP? classi astratte, interfacce, classi interne. Scaletta. Figura con area()? Figura senza area()? Stefano Mizzaro 1. OO in Java: classi astratte, interfacce, classi interne Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro mizzaro@dimi.uniud.it Programmazione,

Dettagli

Grafica in Java. introduzione

Grafica in Java. introduzione Grafica in Java introduzione Awt vs swing Contenitori Top level Swing: indipendenza dalla piattaforma muro grezzo da rivestire ad esempio con pannelli Frame Un frame (lett.: 'cornice') è, a livello visivo,

Dettagli

LEZIONE 5. CORSO BASE DI AutoCad. Corso Base di AutoCad. AutoCad. Ing. Lorenzo Procino

LEZIONE 5. CORSO BASE DI AutoCad. Corso Base di AutoCad. AutoCad. Ing. Lorenzo Procino AutoCad CORSO BASE DI AutoCad Ing. Lorenzo Procino Email : lorenzo.procino@unifi.it LEZIONE 5 I BLOCCHI I BLOCCHI Un blocco è un insieme di oggetti memorizzati come unica entità. La loro gestione è definita

Dettagli

Sistema Operativo. (hardware e software) della della macchina

Sistema Operativo. (hardware e software) della della macchina Sistema Operativo Senza Sistema Operativo (SO) un computer è solo un macchinario inutile... Il SO rende possibile la gestione, elaborazione e immagazinamento dell informazione. Il Il SO SO è il il software

Dettagli

LE STRUTTURE DATI DINAMICHE: GLI ALBERI. Cosimo Laneve

LE STRUTTURE DATI DINAMICHE: GLI ALBERI. Cosimo Laneve LE STRUTTURE DATI DINAMICHE: GLI ALBERI Cosimo Laneve 1 argomenti 1. definizione di alberi e nozioni relative 2. implementazione degli alberi, creazione, visita 3. algoritmo di visita iterativa e sua implementazione

Dettagli

Alberi binari di ricerca

Alberi binari di ricerca Alberi binari di ricerca Definizione Un albero si dice albero binario di ricerca è un albero binario in cui: - Ogni nodo è caratterizzato un valore chiamato chiave - L insieme delle chiavi è totalmente

Dettagli

Laboratorio di programmazione

Laboratorio di programmazione Laboratorio di programmazione 9 novembre 2016 (Trump Day!) Lo scheletro dei vostri programmi deve essere import java.io.*; import java.util.*; public class... { public static void main( String[] args )

Dettagli

d. Cancellazione del valore 5 e. Inserimento del valore 1

d. Cancellazione del valore 5 e. Inserimento del valore 1 Esercizio1 Si consideri un albero binario non vuoto in cui a ciascun nodo v è associato un numero reale v.val. Scrivere un algoritmo che, dato in input l'albero T e un numero reale x, restituisce true

Dettagli

EAGLE (Easily Applicable Graphical Layout Editor)

EAGLE (Easily Applicable Graphical Layout Editor) 18 Ottobre 2007 EAGLE (Easily Applicable Graphical Layout Editor) Ver 4.16r2 Scritto da Ermes ZANNONI http://www.zannoni.to.it ermes@zannoni.to.it Creazione del progetto Dalla finestra Control Panel, creiamo

Dettagli

Fondamenti di Programmazione Prof.ssa Elisa Tiezzi. Programmazione orientata a oggetti

Fondamenti di Programmazione Prof.ssa Elisa Tiezzi. Programmazione orientata a oggetti Fondamenti di Programmazione Prof.ssa Elisa Tiezzi Programmazione orientata a oggetti 1 Programmazione OO Concetti base: dati istruzioni Dati: variabili tipi Istruzioni: istruzioni base strutture di controllo

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 a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Variabili e Metodi di classe Interfacce e Package Gestione di File in Java

Variabili e Metodi di classe Interfacce e Package Gestione di File in Java Fondamenti di Informatica Variabili e Metodi di classe Interfacce e Package Gestione di File in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Variabili di classe: Static Una variabile di classe

Dettagli

Informatica. Il computer

Informatica. Il computer Informatica per Igienisti Dentali LEZIONE 1 Il computer 1 INTRODUZIONE 2 I calcolatori L informatica È la disciplina scientifica che studia nati in risposta all esigenza di eseguire meccanicamente calcoli

Dettagli

Variabili e Metodi di classe Interfacce e Package File in Java

Variabili e Metodi di classe Interfacce e Package File in Java Fondamenti di Informatica Variabili e Metodi di classe Interfacce e Package File in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Variabili di classe: Static Una variabile di classe definisce un

Dettagli

NON ABBIAMO ANCORA CORRETTO LE PROVETTE!!!

NON ABBIAMO ANCORA CORRETTO LE PROVETTE!!! NON ABBIAMO ANCORA CORRETTO LE PROVETTE!!! OO in Java: classi astratte, interfacce, classi interne Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/

Dettagli

CHE COSA FA? P.S. io comunque dissento sul 4. Ing. Luca Frigerio

CHE COSA FA? P.S. io comunque dissento sul 4. Ing. Luca Frigerio CHE COSA FA? P.S. io comunque dissento sul 4. Ing. Luca Frigerio ? NON SEMBRANO APPARTENERE ALLO STESSO MONDO 334.000.000.000 L'ANNO IN EUROPA MMMMM + 11.000.000 DI POSTI DI LAVORO Elaborazione Dell'informazione

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA5 A1.3 Gestori di layout 1 Prerequisiti Programmazione base in Java Utilizzo di classi e oggetti Elementi grafici di un interfaccia 2 1 Introduzione Noti i contenitori

Dettagli

Alberi. In informatica, un albero è un modello astratto di una struttura dati gerarchica

Alberi. In informatica, un albero è un modello astratto di una struttura dati gerarchica Il TDA Tree Alberi In informatica, un albero è un modello astratto di una struttura dati gerarchica Struttura dati non lineare Si pensi al file system di un sistema operativo Le relazioni in un albero

Dettagli

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE

Dettagli

Appendice B:Interfacce Grafiche

Appendice B:Interfacce Grafiche Appendice B:Interfacce Grafiche Per usare tali funzioni bisogna importare le librerie: import javax.swing.*; import java.awt.*; B.1 JFrame Creazione ci un interfaccia. JFrame = new JFrame( Prima finestra

Dettagli

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro Laboratorio di Programmazione Lezione 2 Cristian Del Fabbro Prossima lezione GIOVEDÌ 29 OTTOBRE 14:00 Input da tastiera package input; import java.io.*; public class Input { public static void main(string[]

Dettagli

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE

Dettagli

Lezione 13 Classi interne

Lezione 13 Classi interne Lezione 13 Classi interne Questa lezione chiude la parte del corso più squisitamente dedicata alla programmazione orientata agli oggetti con Java. Sarà esaminato un nuovo tipo di classi, finora taciuto,

Dettagli

lezione 9 min-heap binario Heap e Alberi posizionali generali

lezione 9 min-heap binario Heap e Alberi posizionali generali lezione 9 Heap e Alberi posizionali generali min-heap binario Un min-heap è un albero binario quasi completo in cui ogni nodo i diverso dalla radice soddisfa la seguente proprietà: il valore memorizzato

Dettagli

Lezione 4 Widget e Layout (Java)

Lezione 4 Widget e Layout (Java) A cura di Carlo Pelliccia Dopo aver scoperto cosa sono e come funzionano le attività, studiamo ora come si costruiscono e si gestiscono le interfacce utente in Android. Attraverso un percorso che durerà

Dettagli

Definizione di metodi in Java

Definizione di metodi in Java Definizione di metodi in Java Un metodo in Java definisce un operazione ad alto livello (sottoprogramma) che consente di manipolare dati e oggetti. Durante la computazione effettuata da un programma, un

Dettagli