Lo sviluppo sarà diviso in passi incrementali. I file coinvolti ad ogni passo saranno indicati insieme alla descrizione del procedimento.

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Lo sviluppo sarà diviso in passi incrementali. I file coinvolti ad ogni passo saranno indicati insieme alla descrizione del procedimento."

Transcript

1 SimpleAudioPlayer Realizzazione di un semplice player Audio. Introduzione Programmiamo una semplice applicazione Android che ci consenta di riprodurre dei file audio locali e/o remoti. Per rendere l applicazione più completa ed utilizzabile nella vita quotidiana di uno smartphone utilizzeremo un service per la riproduzione in background e registreremo dei BroadcastReceiver per reagire a degli eventi di sistema particolarmente importanti per la nostra applicazione. Lo sviluppo sarà diviso in passi incrementali. I file coinvolti ad ogni passo saranno indicati insieme alla descrizione del procedimento. Questo tutorial è incentrato sulla programmazione di applicazioni su piattaforma Android perciò alcune classi responsabili di funzionalità che esulano dallo scopo saranno già fornite nel progetto basesimplefeedreader. Semplice riproduzione di un file negli asset File coinvolti: Version1.java Nel nostro progetto sono presenti due sample audio in formato.ogg (prelevati dal sito wikipedia) che utilizzeremo per le nostre prove. Android mette a disposizione nel proprio SDK un oggetto chiamato MediaPlayer che consente con discreta facilità la riproduzione di vari formati multimediali: per un dettaglio dei formati disponibili consultare la pagina In questa prima versione provvediamo all inizializzazione dell oggetto MediaPlayer di Android nel metodo onstart() dell activity e successivamente provvediamo a far partire la riproduzione nel metodo onresume() dell activity. public void onstart(){ super.onstart(); mp = MediaPlayer.create(this, R.raw.yesterdaysample); public void onresume(){

2 super.onresume(); mp.start(); A questo punto se facciamo partire l app sentiremo riprodurre il file audio ma se chiudiamo l activity la riproduzione non si interromperà. In questo caso dobbiamo uccidere a mano il processo e possiamo farlo tramite la prospettiva DDMS in Eclipse. Se perdiamo il riferimento in Java all oggetto MediaPlayer abbiamo memory leak e non riusciremo più ad ottenere il controllo sull oggetto appena perso. Pagina 2 di 13

3 Interfaccia grafica e stop del MediaPlayer File coinvolti: Version2.java Per evitare il memory leak fermiamo la riproduzione del MediaPlayer e rilasciamolo per liberarne le risorse nel motodo onstop() dell activity. public void onstop (){ super.onstop(); mp.stop(); mp.release(); mp = null; Aggiungiamo inoltre un layout all activity con i classici pulsanti di pausa, play, avanti, indietro. Per ora attiveremo solo il pulsante di play/pausa. Per gestire meglio il ciclo di vita del media player aggiungiamo inoltre una variabile intera in cui annoteremo lo stato del riproduttore. public void oncreate (Bundle savedinstancestate){ super.oncreate(savedinstancestate); setcontentview(r.layout.version2); this.prevbutton = (Button) this.findviewbyid(r.id.prevbutton); this.playpausebutton = (Button) this.findviewbyid(r.id.playpausebutton); this.nextbutton = (Button) this.findviewbyid(r.id.nextbutton); this.playpausebutton.setonclicklistener(new View.OnClickListener() { ); public void onclick(view v) { if(mpstate == STATE_PLAYING){ mp.pause(); mpstate = STATE_PAUSED; playpausebutton.settext("play"); else{ mp.start(); mpstate = STATE_PLAYING; playpausebutton.settext("pause"); mpstate = STATE_UNDEFINED; Pagina 3 di 13

4 Interfaccia grafica evoluta File coinvolti: Version3.java In questa nuova versione aggiungeremo al layout una SeekBar e due TextView per avere un impatto visivo dell istante corrente di riproduzione. Quindi dopo aver modificato il layout dovremo ottenere il riferimento ai nuovo widget anche nell activity Version3.java. Oltre a questo registreremo un listener per reagire agli spostamenti sulla SeekBar richiesti dall utente in modo da scorrere il file riprodotto all istante desiderato. public void oncreate (Bundle savedinstancestate){ this.progressbar.setonseekbarchangelistener(new SeekBar.OnSeekBarChangeListener() { public void onstoptrackingtouch(seekbar seekbar) { public void onstarttrackingtouch(seekbar seekbar) { ); public void onprogresschanged(seekbar seekbar, int progress, boolean fromuser) { // we should distinguish between a seek caused by an // user, or by an update through the polling thread if (fromuser) { mp.seekto(progress); È necessario inoltre inizializzare correttamente la SeekBar con il massimo valore che può raggiungere (nel nostro caso la durata del file audio) ed il suo stato iniziale. Vogliamo anche che la SeekBar si resetti quando il file audio finisce: per questo l oggetto MediaPlayer permette di registrare un listener che viene invocato nel momento in cui il termine del file viene raggiunto. public void onstart (){ mp.setoncompletionlistener(new MediaPlayer.OnCompletionListener() { Pagina 4 di 13

5 ); public void oncompletion(mediaplayer mp) { playpausebutton.settext("play"); progressbar.setprogress(0); mpstate = STATE_PREPARED; mpstate = STATE_PREPARED; // initialize properly the progress bar // with the info about the current track progressbar.setmax(mp.getduration()); progressbar.setprogress(mp.getcurrentposition()); A questo punto se avviassimo l applicazione noteremmo che la SeekBar non viene aggiornata durante la riproduzione del file: ed effettivamente è giusto così, perché in nessun punto abbiamo codificato il concetto di aggiornarla periodicamente. Per questo compito il MediaPlayer non prevede nessun metodo o listener particolare, perciò l unica alternativa che abbiamo è creare un thread che vada periodicamente a valutare lo stato di riproduzione del MediaPlayer. Il concetto di thread in Android non ha differenze rispetto ai concetti classici: quello su cui dobbiamo fare attenzione è il seguente segmento di codice: if (mp!= null && (mpstate == STATE_PLAYING mpstate == STATE_PAUSED)) { Version3.this.runOnUiThread(new Runnable() { public void run() { // update progress bar progressbar.setprogress(mp.getcurrentposition()); // and progress/duration textview currentprogresstv.settext( TimeUtil.formatProgress(mp.getCurrentPosition())); durationtv.settext( TimeUtil.formatProgress(mp.getDuration())); ); else { Version3.this.runOnUiThread(new Runnable() { public void run() { progressbar.setprogress(0); currentprogresstv.settext(timeutil.formatprogress(-1)); durationtv.settext(timeutil.formatprogress(-1)); ); Pagina 5 di 13

6 Questa parte di codice appena mostrata viene eseguita nel metodo run() di una sottoclasse di Thread, quindi viene eseguita da un Thread differente rispetto a quello dell interfaccia grafica. In Android, l interfaccia grafica NON può essere modificata da un Thread che non sia quello principale dell UI: per questo se provassimo a modificarla direttamente dal Thread in polling sul MediaPlayer verrebbe sollevata un eccezione. Il sistema ci aiuta mettendoci a disposizione alcune tecniche per far eseguire del codice nel Thread UI: la tecnica utilizzata in questo caso è la possibilità di passare un Runnable con il codice da eseguire nel metodo runonuithread() della classe Activity. Il codice dell esempio è molto semplice ed auto esplicativo: semplicemente viene aggiornato il progresso nella SeekBar e l istante di riproduzione nelle TextView. Pagina 6 di 13

7 Disaccoppiamento grafica-servizio File coinvolti: Version4.java ServiceVersion4.java Il software fin qui creato permette di riprodurre una canzone, scorrerla e metterla in pausa: ma per farlo dobbiamo per forza continuare ad avere la nostra activity attiva. Per risolvere questo problema, in questa nuova versione introdurremo un Service in cui sposteremo la gestione del MediaPlayer in modo che continui a funzionare correttamente anche chiudendo l activity principale. In particolare vogliamo un foreground service, tramite il quale magari ripristinare l activity di gestione del player. Per questo, nel file ServiceVersion4.java, i passi cruciali sono riportati nel codice seguente: public int onstartcommand(intent intent, int flags, int startid) { // make the service "foreground", so it acquires max priority Intent i = new Intent(this, Version4.class); i.setflags(intent.flag_activity_new_task Intent.FLAG_ACTIVITY_SINGLE_TOP); pi = PendingIntent.getActivity(this, 1, i, 0); // create the notification that will be shown in the system bar notification = new Notification(android.R.drawable.ic_media_play, "Audio Tutorial", System.currentTimeMillis()); notification.setlatesteventinfo(this, "Audio Tutorial", "Service started", pi); notification.flags = Notification.FLAG_ONGOING_EVENT; startforeground(notification_id, notification); // we want this service to continue running until it is explicitly // stopped, so return sticky return START_STICKY; public IBinder onbind(intent arg0) { clientsbound = true; return binder; public boolean onunbind(intent i) { clientsbound = false; return super.onunbind(i); /** Pagina 7 di 13

8 * Custom binder for the AudioTutorial service * */ public class ServiceBinder extends Binder { ServiceVersion4 getservice() { return ServiceVersion4.this; Nel metodo onstartcommand() creiamo dapprima una notifica che verrà visualizzato nella StatusBar di Android: la cosa interessante è che passiamo un PendingIntent che fa riferimento a Version4.class che conterrà l UI per controllare la riproduzione audio, in modo che quando un utente aprirà la notifica verrà avviata questa Activity. Impostiamo inoltre il flag FLAG_ONGOING_EVENT per indicare che la notifica non deve essere rimossa dalla StatusBar; infine, chiamando il metodo startforeground() avvieremo il servizio come foreground service. I servizi in Android possono essere legati ad un activity: i metodi onbind e onunbind forniscono le chiamate eseguite rispettivamente all atto di instaurazione e rilascio del legame. In particolare nel metodo onbind dobbiamo ritornare un oggetto che fornisca un Binder con il servizio attuale, in modo che il chiamante possa operare in qualche maniera diretta con il servizio. Nel nostro caso abbiamo creato una sottoclasse di Binder che restituisce semplicemente il servizio di cui si è effettuato il legame, in modo che il chiamante possa accedere alla sua interfaccia. Vedremo poi nell activity come questo legame ci sarà utile. Oltre a queste implementazioni, il resto del servizio non presenta nulla di particolare dato che presenta fondamentale un semplice wrapper dell oggetto MediaPlayer. Passando ora in esamine l activity, le novità interessanti sono riportate qui di seguito: private ServiceConnection mconnection = new ServiceConnection() { public void onserviceconnected(componentname name, IBinder s) { // called when the connection is made Log.i(TAG, "Getting a reference to the foreground service"); service = ((ServiceVersion4.ServiceBinder) s).getservice(); public void onservicedisconnected(componentname name) { Pagina 8 di 13

9 Log.i(TAG, "Service disconnected"); // received when the service unexpectedly disconnects service = null; ; public void onstart() { super.onstart(); // initialize a polling thread with an interval of a second pollingthread = new PollingThread(POLLING_DELAY); // start the polling thread pollingthread.start(); // start service Intent serviceintent = new Intent(this, ServiceVersion4.class); startservice(serviceintent); // and bind it bindservice(serviceintent, mconnection, Context.BIND_AUTO_CREATE); public void onstop() { super.onstop(); // stop the polling thread pollingthread.stoppolling(); pollingthread = null; // unbind the service unbindservice(mconnection); Notiamo subito che i metodi onstart() e onstop() presentano delle chiamate per avviare il servizio (startservice()), effettuarne il binding (bindservice()) e rilasciare il binding(unbindservice()). In particolare la chiamata bindservice() si aspetta tra i parametri un oggetto molto importante che è il gestore della connessione (ServiceConnection). Nel nostro caso passiamo mconnection che semplicemente inizializzerà l attributo service al momento della connessione del servizio e lo renderà null nel momento della disconnessione: tra la connessione e la disconnessione, potremo chiamare direttamente i metodi pubblici del nostro servizio. Ed infatti, il resto delle modifiche prevede semplicemente di chiamare i vari metodi (play/pause/seekto/etc..) direttamente sul servizio. Pagina 9 di 13

10 Reagire ad eventi broadcast File coinvolti: ServiceVersion5.java ExtActivity.java NoiseBroadcastReceiver.java AndroidManifest.xml Ora provvediamo ad implementare alcune caratteristiche particolari che ci permetteranno di valutare l utilizzo di un importante componente di Android: il BroadcastReceiver. Nel nostro caso vogliamo semplicemente registrare un BroadcastReceiver che venga chiamato quando l audio del device potrebbe diventare rumoroso, ad esempio perché sono stati appena scollegati gli auricolari e quindi l audio verrebbe riprodotto direttamente dagli speaker del device: in questa caso, vogliamo che la nostra applicazione semplicemente metta in pausa il player per evitare possibili situazione di imbarazzo. Il codice (all interno di NoiseBroadcastReceiver.java) che svolgerà questa funzionalità è molto semplice. public void onreceive(context c, Intent intent) { if (intent.getaction().equals( android.media.audiomanager.action_audio_becoming_noisy)) { // retrieve our service if it's running Intent serviceintent = new Intent(c, ServiceVersion4.class); IBinder servicebinder = this.peekservice(c, serviceintent); if (servicebinder!= null) { ServiceVersion5 service = ((ServiceVersion5.ServiceBinder) servicebinder).getservice(); if (service.getstate() == PlayerState.STATE_PLAYING) { // since the audio is becoming noisy and the player // is playing, we should pause it, otherwise the // user may be angry with us service.pausesong(); else { Log.i(TAG, "Service not started, so do nothing"); Il metodo onreceive() di un BroadcastReceiver viene chiamato quando accade un evento broadcast per il quale lo abbiamo registrato. Nel nostro caso Pagina 10 di 13

11 l evento è android.media.audiomanager.action_audio_becoming_noisy: in questa situazione cerchiamo di ottenere il binder al nostro servizio e, se il servizio è attivo e sta riproducendo, mettere in pausa la riproduzione. Per registrare un BroadcastReceiver abbiamo due possibilità: farlo in maniera dinamica dal codice Java o in maniera statica nell AndroidManifest. Vediamo qui di seguito la seconda possibilità, il Manifest: <!-- --> <receiver android:name=".noisebroadcastreceiver" > <intent-filter> <action android:name="android.media.audio_becoming_noisy" /> </intent-filter> </receiver> <!-- --> Anche le applicazioni possono lanciare Intent Broadcast; per questo modifichiamo il servizio creato precedentemente inserendo un nuovo metodo come di seguito: public static final String BROADCAST_INTENT = "it.uniurb.androidcoursecamp.audioplayer.status_changed"; public static final String EXTRA_STATE = "state"; private void broadcaststate() { // send broadcast intent Intent bi = new Intent(ServiceVersion5.BROADCAST_INTENT); bi.putextra(extra_state, mpstate); this.sendbroadcast(bi); Chiameremo questo metodo ogni qual volta i metodi all interno del servizio facciano cambiare di stato il MediaPlayer: in questa maniera eventuali applicazioni esterne potranno accorgersi di questo cambiamento ed operare di conseguenza. Per esemplificare questa possibilità e mostrare anche la tecnica di registrazione dinamica dei BroadcastReceiver osserviamo il codice della classe ExtActivity.java: public void onstart() { super.onstart(); // register our receiver for ServiceVersion4 intent IntentFilter f = new IntentFilter(ServiceVersion5.BROADCAST_INTENT); this.registerreceiver(mreceiver, f); Pagina 11 di 13

12 public void onstop() { super.onstop(); // unregister our receiver this.unregisterreceiver(mreceiver); private BroadcastReceiver mreceiver = new BroadcastReceiver() { public void onreceive(context context, Intent i) { if(i.getaction().equals(serviceversion5.broadcast_intent)){ String msg; // retrieve state from the intent int state=i.getintextra(serviceversion5.extra_state, -1); if (state == PlayerState.STATE_PLAYING) { msg = "Now playing"; else if (state == PlayerState.STATE_PAUSED) { msg = "Player paused"; else if (state == PlayerState.STATE_STOPPED) { msg = "Player stopped"; else { msg = "Undefined state"; Log.w(TAG, I have not found any state information in the broadcast intent!"); ; // notify user the new state Toast.makeText(context, msg, Toast.LENGTH_LONG).show(); Quando l activity viene avviata (onstart()) creiamo un IntentFilter per filtrare solo gli eventi a cui siamo interessati, nel nostro caso ServiceVersion5.BROADCAST_INTENT. Quindi registriamo il BroadcastReceiver (che è stato definito nelle linee di codice successive) con il filtro appena specificato tramite la chiamata registerreceiver(). Specularmente, quando l activity viene fermata (onstop()) rimuoviamo la registrazione del BroadcastReceiver perché non siamo più interessati ad essere notificati per l evento. Il BroadcastReceiver definito è molto semplice e segue la struttura del BroadcastReceiver spiegato precedentemente: quando capita l evento per cui ci siamo registrati, controlliamo lo stato del servizio e emaniamo un Toast informativo appropriato. Ovviamente questo esempio è molto banale, ma il Pagina 12 di 13

13 funzionamento di base è uguale per tutti i BroadcastReceiver, quindi prevedere comportamenti più complessi ed allo stesso tempo utili è solo questione di fantasia ed ingegno. Pagina 13 di 13

Ciclo di vita delle aevità Android Mobile Programming Prof. R. De Prisco

Ciclo di vita delle aevità Android Mobile Programming Prof. R. De Prisco Ciclo di vita delle aevità Ogni AcHvity ha dei metodi standard A(vità non esiste 1. oncreate() 2. onstart() 3. onresume() A(vità in esecuzione 4. onpause() 5. onstop() 6. ondestroy() A(vità non esiste

Dettagli

Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008. - lezione 14 - Thread in Java

Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008. - lezione 14 - Thread in Java Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it - lezione 14 - Thread in Java 1 Cos è un

Dettagli

Alb@conference GO e Web Tools

Alb@conference GO e Web Tools Alb@conference GO e Web Tools Crea riunioni virtuali sempre più efficaci Strumenti Web di Alb@conference GO Guida Utente Avanzata Alb@conference GO Per partecipare ad un audioconferenza online con Alb@conference

Dettagli

La fase di realizzazione. La fase di realizzazione (cont.) Traduzione in Java del diagramma degli use case

La fase di realizzazione. La fase di realizzazione (cont.) Traduzione in Java del diagramma degli use case Università degli Studi di Roma La Sapienza Corso di Laurea in Ingegneria dell Informazione Sede di Latina Corso di Laurea in Ingegneria dell Informazione Consorzio Nettuno La fase di realizzazione si occupa

Dettagli

Android by Example v4.2 JellyBean

Android by Example v4.2 JellyBean Android by Example v4.2 JellyBean Rossi Pietro Alberto Sorgenti scaricabili dal sito www.sprik.it Premessa Tanto tempo è passato dalla prima guida, troppo. L'intento era quello di costruire una guida solida

Dettagli

Programmazione di rete in Java

Programmazione di rete in Java Programmazione di rete in Java Reti di calcolatori Una rete di calcolatori è un sistema che permette la condivisione di dati informativi e risorse (sia hardware sia software) tra diversi calcolatori. Lo

Dettagli

Programmazione Java: Variabili membro, Metodi La parola chiave final

Programmazione Java: Variabili membro, Metodi La parola chiave final Programmazione Java: Variabili membro, Metodi La parola chiave final romina.eramo@univaq.it http://www.di.univaq.it/romina.eramo/tlp Roadmap Definire una classe» Variabili membro» Metodi La parola chiave

Dettagli

Middleware Laboratory. Dai sistemi concorrenti ai sistemi distribuiti

Middleware Laboratory. Dai sistemi concorrenti ai sistemi distribuiti Dai sistemi concorrenti ai sistemi distribuiti Problemi nei sistemi concorrenti e distribuiti I sistemi concorrenti e distribuiti hanno in comune l ovvio problema di coordinare le varie attività dei differenti

Dettagli

Oggetti Lezione 3. aspetti generali e definizione di classi I

Oggetti Lezione 3. aspetti generali e definizione di classi I Programmazione a Oggetti Lezione 3 Il linguaggio Java: aspetti generali e definizione di classi I Sommario Storia e Motivazioni Definizione di Classi Campi e Metodi Istanziazione di oggetti Introduzione

Dettagli

/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); }

/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); } import java.util.*; class coda * Questa classe contiene tutti i metodi per la gestione della coda * @author D'Ambrosio Giovanni Classe 4D I.T.I.S. Grottaminarda * @version 26/02/2010 * VETTORE DINAMICO

Dettagli

Finestra.java. static String nomicolonne[] = {"ind.","cognome","nome","telefono","e-mail"}; //nomi delle colonne della tabella

Finestra.java. static String nomicolonne[] = {ind.,cognome,nome,telefono,e-mail}; //nomi delle colonne della tabella import java.awt.*; import java.awt.event.actionevent; import java.awt.event.actionlistener; import java.awt.event.windowevent; import java.awt.event.windowlistener; import java.io.*; import java.util.*;

Dettagli

Semplici Algoritmi di Ordinamento

Semplici Algoritmi di Ordinamento Fondamenti di Informatica Semplici Algoritmi di Ordinamento Fondamenti di Informatica - D. Talia - UNICAL 1 Ordinamento di una sequenza di elementi Esistono molti algoritmi di ordinamento. Tutti ricevono

Dettagli

Classi ed Oggetti in JAVA

Classi ed Oggetti in JAVA Classi ed Oggetti in JAVA Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma 56 53100 SIENA Uff. 0577233606 rigutini@dii.unisi.it www.dii.unisi.it/~rigutini/

Dettagli

Sottoprogrammi: astrazione procedurale

Sottoprogrammi: astrazione procedurale Sottoprogrammi: astrazione procedurale Incapsulamento di un segmento di programma presente = false; j = 0; while ( (j

Dettagli

Creare una applicazione Winsock di base

Creare una applicazione Winsock di base Creare una applicazione Winsock di base Usiamo le API Winsock incluse in Creare un progetto per una Socket Windows (in Dev C++) Selezionare la file New Projects Selezionare Empty Project Salvare

Dettagli

Web conferencing software. Massimiliano Greco - Ivan Cerato - Mario Salvetti

Web conferencing software. Massimiliano Greco - Ivan Cerato - Mario Salvetti 1 Web conferencing software Massimiliano Greco - Ivan Cerato - Mario Salvetti Arpa Piemonte 2 Che cosa è Big Blue Button? Free, open source, web conferencing software Semplice ed immediato ( Just push

Dettagli

Fondamenti di Informatica. Dichiarazione, creazione e gestione di array in Java

Fondamenti di Informatica. Dichiarazione, creazione e gestione di array in Java Fondamenti di Informatica Dichiarazione, creazione e gestione di array in Java Array in Java - creazione La creazione fa una inizializzazione implicita: num = new int[10]; con valore 0 per int e double,

Dettagli

Inter Process Communication. Laboratorio Software 2008-2009 C. Brandolese

Inter Process Communication. Laboratorio Software 2008-2009 C. Brandolese Inter Process Communication Laboratorio Software 2008-2009 C. Brandolese Introduzione Più processi o thread Concorrono alla relaizzazione di una funzione applicativa Devono poter realizzare Sincronizzazione

Dettagli

Le funzioni in C. I programmi C sono costituiti da definizioni di variabili e funzioni.

Le funzioni in C. I programmi C sono costituiti da definizioni di variabili e funzioni. Le funzioni in C I programmi C sono costituiti da definizioni di variabili e funzioni. Una definizione di funzione ha il seguente formato: tipo-ritornato nome-funzione(lista-parametri) { dichiarazioni

Dettagli

Zeroshell come client OpenVPN

Zeroshell come client OpenVPN Zeroshell come client OpenVPN (di un server OpenVpn Linux) Le funzionalità di stabilire connessioni VPN di Zeroshell vede come scenario solito Zeroshell sia come client sia come server e per scelta architetturale,

Dettagli

esercizi Esercizi / problemi

esercizi Esercizi / problemi Sistemi informativi applicati (reti di calcolatori): esercizi 1 Esercizi / problemi 1. Creare un applicazione che calcoli la media aritmetica dei seguenti valori interi: 35, 117, 23 e ne visualizzi il

Dettagli

Progettazione Orientata agli Oggetti

Progettazione Orientata agli Oggetti Progettazione Orientata agli Oggetti Sviluppo del software Ciclo di vita del software: comprende tutte le attività dall analisi iniziale fino all obsolescenza (sviluppo, aggiornamento, manutenzione) Procedimento

Dettagli

IDom. Omnicon SRL Via Petrarca 14 20843 Verano Brianza (MB) info@omnicon.it

IDom. Omnicon SRL Via Petrarca 14 20843 Verano Brianza (MB) info@omnicon.it IDom MANUALE UTENTE Omnicon SRL Via Petrarca 14 20843 Verano Brianza (MB) info@omnicon.it 2 COPYRIGHT Tutti i nomi ed i marchi citati nel documento appartengono ai rispettivi proprietari. Le informazioni

Dettagli

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity CORSO DI ALGORITMI E PROGRAMMAZIONE JDBC Java DataBase Connectivity Anno Accademico 2002-2003 Accesso remoto al DB Istruzioni SQL Rete DataBase Utente Host client Server di DataBase Host server Accesso

Dettagli

Abstract Data Type (ADT)

Abstract Data Type (ADT) Abstract Data Type Pag. 1/10 Abstract Data Type (ADT) Iniziamo la nostra trattazione presentando una nozione che ci accompagnerà lungo l intero corso di Laboratorio Algoritmi e Strutture Dati: il Tipo

Dettagli

MODULO DI ISCRIZIONE - ENROLMENT FORM

MODULO DI ISCRIZIONE - ENROLMENT FORM Under the Patronage of Comune di Portofino Regione Liguria 1ST INTERNATIONAL OPERA SINGING COMPETITION OF PORTOFINO from 27th to 31st July 2015 MODULO DI ISCRIZIONE - ENROLMENT FORM Direzione artistica

Dettagli

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof. Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record

Dettagli

Scuola Specializzazione Istruzione Superiore. Object Oriented Programming (OOP) Introduzione alla programmazione orientata agli oggetti

Scuola Specializzazione Istruzione Superiore. Object Oriented Programming (OOP) Introduzione alla programmazione orientata agli oggetti Scuola Specializzazione Istruzione Superiore Object Oriented Programming (OOP) Introduzione alla programmazione orientata agli oggetti Michele Batocchi ITC Vittorio Emanuele II Perugia A.S. 2007/2008 Introduzione

Dettagli

Esiste la versione per Linux di GeCo? Allo stato attuale non è prevista la distribuzione di una versione di GeCo per Linux.

Esiste la versione per Linux di GeCo? Allo stato attuale non è prevista la distribuzione di una versione di GeCo per Linux. FAQ su GeCo Qual è la differenza tra la versione di GeCo con installer e quella portabile?... 2 Esiste la versione per Linux di GeCo?... 2 Quali sono le credenziali di accesso a GeCo?... 2 Ho smarrito

Dettagli

BOSCH EDC16/EDC16+/ME9

BOSCH EDC16/EDC16+/ME9 pag. 16 di 49 BOSCH EDC16/EDC16+/ME9 BOSCH EDC16/EDC16+/ME9 Identificare la zona dove sono poste le piazzole dove andremo a saldare il connettore. Le piazzole sono situate in tutte le centraline Bosch

Dettagli

Integrare le MFC con Irrlicht. Sezione 1: Creazione del progetto. by Raffaele White tiger Mancuso

Integrare le MFC con Irrlicht. Sezione 1: Creazione del progetto. by Raffaele White tiger Mancuso Integrare le MFC con Irrlicht by Raffaele White tiger Mancuso In questo topic spiegherò come integrare irrlicht in un documento singolo MFC *(1). Io ho usato il visual c++ 6 ma la procedura dovrebbe essere

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

e-spare Parts User Manual Peg Perego Service Site Peg Perego [Dicembre 2011]

e-spare Parts User Manual Peg Perego Service Site Peg Perego [Dicembre 2011] Peg Perego Service Site Peg Perego [Dicembre 2011] 2 Esegui il login: ecco la nuova Home page per il portale servizi. Log in: welcome to the new Peg Perego Service site. Scegli il servizio selezionando

Dettagli

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it UML: Class Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Class Diagram Forniscono una vista strutturale

Dettagli

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java]

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java] Desideriamo realizzare una applicazione web che ci consenta di calcolare il fattoriale di un numero. L'esercizio in sé non particolarmente difficile, tuttavia esso ci consentirà di affrontare il problema

Dettagli

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1 Tutorial Configuration Managment Configurare il servizio EC2 su AWS Pagina 1 Sommario 1. INTRODUZIONE... 3 2. PROGRAMMI NECESSARI... 4 3. PANNELLO DI CONTROLLO... 5 4. CONFIGURARE E LANCIARE UN ISTANZA...

Dettagli

! Programmazione strutturata ! TDA. ! Classi, incapsulamento, ! OO. ! Scambio messaggi, eredità, polimorfismo. ! OO in Java

! Programmazione strutturata ! TDA. ! Classi, incapsulamento, ! OO. ! Scambio messaggi, eredità, polimorfismo. ! OO in Java Riassunto Rassegna API - 1 Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@uniud.it Programmazione, lezione 17 3 maggio 2015! Programmazione

Dettagli

RefWorks Guida all utente Versione 4.0

RefWorks Guida all utente Versione 4.0 Accesso a RefWorks per utenti registrati RefWorks Guida all utente Versione 4.0 Dalla pagina web www.refworks.com/refworks Inserire il proprio username (indirizzo e-mail) e password NB: Agli utenti remoti

Dettagli

Corso di Programmazione ad Oggetti

Corso di Programmazione ad Oggetti Corso di Programmazione ad Oggetti Introduzione alla programmazione ad oggetti a.a. 2008/2009 Claudio De Stefano 1 La programmazione modulare Un programma può essere visto come un insieme di moduli che

Dettagli

Il test valuta la capacità di pensare?

Il test valuta la capacità di pensare? Il test valuta la capacità di pensare? Per favore compili il seguente questionario senza farsi aiutare da altri. Cognome e Nome Data di Nascita / / Quanti anni scolastici ha frequentato? Maschio Femmina

Dettagli

1 EJB e Portal Component Object http://desvino.altervista.org

1 EJB e Portal Component Object http://desvino.altervista.org 1 EJB e Portal Component Object http://desvino.altervista.org In questo tutorial studiamo come sfruttare la tecnologia EJB, Enterprise JavaBean, all interno del SAP Netweaver Portal. In breve, EJB è un

Dettagli

WWW.TINYLOC.COM CUSTOMER SERVICE GPS/ RADIOTRACKING DOG COLLAR. T. (+34) 937 907 971 F. (+34) 937 571 329 sales@tinyloc.com

WWW.TINYLOC.COM CUSTOMER SERVICE GPS/ RADIOTRACKING DOG COLLAR. T. (+34) 937 907 971 F. (+34) 937 571 329 sales@tinyloc.com WWW.TINYLOC.COM CUSTOMER SERVICE T. (+34) 937 907 971 F. (+34) 937 571 329 sales@tinyloc.com GPS/ RADIOTRACKING DOG COLLAR MANUALE DI ISTRUZIONI ACCENSIONE / SPEGNERE DEL TAG HOUND Finder GPS Il TAG HOUND

Dettagli

Virtualizzazione con Microsoft Tecnologie e Licensing

Virtualizzazione con Microsoft Tecnologie e Licensing Microsoft Virtualizzazione con Microsoft Tecnologie e Licensing Profile Redirezione dei documenti Offline files Server Presentation Management Desktop Windows Vista Enterprise Centralized Desktop Application

Dettagli

Guida. Vista Live. Controllo. Riproduzione su 24 ore. Ricerca avanz. Le icone includono: Mod. uscita. Icona. Un sensore di allarme.

Guida. Vista Live. Controllo. Riproduzione su 24 ore. Ricerca avanz. Le icone includono: Mod. uscita. Icona. Un sensore di allarme. Guida operatore del registratore TruVision Vista Live Sull immagine live dello schermo vengono visualizzati laa data e l ora corrente, il nome della telecamera e viene indicato se è in corso la registrazione.

Dettagli

Outlook Express 6 Microsoft Internet Explorer, Avvio del programma Creare un nuovo account

Outlook Express 6 Microsoft Internet Explorer, Avvio del programma Creare un nuovo account Outlook Express 6 è un programma, incluso nel browser di Microsoft Internet Explorer, che ci permette di inviare e ricevere messaggi di posta elettronica. È gratuito, semplice da utilizzare e fornisce

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

Web Conferencing and Collaboration tool

Web Conferencing and Collaboration tool Web Conferencing and Collaboration tool La piattaforma Meetecho Piattaforma di Web Conferencing e Collaborazione on line in tempo reale Caratteristiche generali Soluzione client-server progettata per essere

Dettagli

Manuale d Uso. Ref: 04061

Manuale d Uso. Ref: 04061 Manuale d Uso Ref: 04061 1 Grazie per aver acquistato il lettore digitale ENERGY SISTEM INNGENIO 2000. Questo manuale fornisce istruzioni operative dettagliate e spiegazioni delle funzioni per godere al

Dettagli

Gestione dinamica di una pila

Gestione dinamica di una pila Gestione dinamica di una pila Una pila o stack è una lista lineare a lunghezza variabile in cui inserimenti (push) ed estrazioni (pop) vengono effettuate ad un solo estremo, detto testa (top) della pila.

Dettagli

GUIDA alla configurazione di un DVR o Router su dyndns.it. in modalità compatibile www.dyndns.org

GUIDA alla configurazione di un DVR o Router su dyndns.it. in modalità compatibile www.dyndns.org GUIDA alla configurazione di un DVR o Router su dyndns.it in modalità compatibile www.dyndns.org Questa semplice guida fornisce le informazioni necessarie per eseguire la registrazione del proprio DVR

Dettagli

Visibilità dei Membri di una Classe

Visibilità dei Membri di una Classe Visibilità dei Membri di una Classe Lezione 10 Ogni classe definisce un proprio scope racchiude il codice contenuto nella definizione della classe e di tutti i suoi membri ogni metodo della classe definisce

Dettagli

Informazioni su questo libro

Informazioni su questo libro Informazioni su questo libro Si tratta della copia digitale di un libro che per generazioni è stato conservata negli scaffali di una biblioteca prima di essere digitalizzato da Google nell ambito del progetto

Dettagli

BlackBerry Java SDK. Integration Guide Version: 7.0. Guida allo sviluppo

BlackBerry Java SDK. Integration Guide Version: 7.0. Guida allo sviluppo BlackBerry Java SDK Integration Guide Version: 7.0 Guida allo sviluppo SWD-1638866-1215040530-0 Contents 1 Integrazione con le applicazioni BlackBerry Device Software... 6 Richiamo di un'applicazione BlackBerry

Dettagli

Pila.h versione 6. class Pila { private: int marker; int * contenuto; public:

Pila.h versione 6. class Pila { private: int marker; int * contenuto; public: 1 Pila.h versione 6 struct Pila { private: int size; int defaultgrowthsize; int marker; int * contenuto; void cresci(int increment); public: Pila(int initialsize) ; Pila(); ~Pila() ; void copy(pila * to)

Dettagli

Cos è un JavaBean. Java. Componenti software

Cos è un JavaBean. Java. Componenti software Java java beans e programmazione visuale G. Prencipe prencipe@di.unipi.it Cos è un JavaBean Un JavaBean (o semplicemente Bean) è un componente software riusabile Analogia con i componenti elettronici I

Dettagli

Ambienti di sviluppo integrato

Ambienti di sviluppo integrato Ambienti di sviluppo integrato Un ambiente di sviluppo integrato (IDE - Integrated Development Environment) è un ambiente software che assiste i programmatori nello sviluppo di programmi Esso è normalmente

Dettagli

MetaTrader 4/5 per Android. Guida per l utente

MetaTrader 4/5 per Android. Guida per l utente 1 MetaTrader 4/5 per Android Guida per l utente 2 Contenuto Come ottenere il MT4/5 App per Android... 3 Come accedere al vostro Conto Esistente oppure creare un nuovo conto Demo... 3 1. Scheda Quotes...

Dettagli

ALTOPARLANTE SUPER BASS PORTATILE BLUETOOTH

ALTOPARLANTE SUPER BASS PORTATILE BLUETOOTH ALTOPARLANTE SUPER BASS PORTATILE BLUETOOTH Manuale DA-10287 Grazie per aver acquistato l'altoparlante portatile Super Bass Bluetooth DIGITUS DA-10287! Questo manuale d'istruzioni vi aiuterà ad iniziare

Dettagli

Manuale di installazione e d uso

Manuale di installazione e d uso Manuale di installazione e d uso 1 Indice Installazione del POS pag. 2 Funzionalità di Base - POS Sagem - Accesso Operatore pag. 2 - Leggere una Card/braccialetto Cliente con il lettore di prossimità TeliumPass

Dettagli

La ricorsione. Politecnico di Milano Sede di Cremona

La ricorsione. Politecnico di Milano Sede di Cremona La ricorsione Politecnico di Milano Sede di Cremona Gianpaolo Cugola Dipartimento di Elettronica e Informazione cugola@elet.polimi.it http://www.elet.polimi.it/~cugola Definizioni ricorsive Sono comuni

Dettagli

Introduzione alle applicazioni di rete

Introduzione alle applicazioni di rete Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza

Dettagli

Gi-Gi Art. 859 - User's Guide Istruzioni d'uso

Gi-Gi Art. 859 - User's Guide Istruzioni d'uso doc.4.12-06/03 Gi-Gi Art. 859 - User's Guide Istruzioni d'uso A belaying plate that can be used in many different conditions Una piastrina d'assicurazione che può essere utilizzata in condizioni diverse.

Dettagli

Smobilizzo pro-soluto di Lettere di Credito Import

Smobilizzo pro-soluto di Lettere di Credito Import definizione L operazione presuppone l emissione di una lettera di credito IMPORT in favore dell esportatore estero, con termine di pagamento differito (es. 180 gg dalla data di spedizione con documenti

Dettagli

Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati

Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati Condizione di sincronizzazione Qualora si voglia realizzare una determinata politica di gestione delle risorse,la decisione se ad

Dettagli

explorer 2 Manuale dell Installatore e Technical Reference Ver. 2.2.6 del 14 Dicembre 2012

explorer 2 Manuale dell Installatore e Technical Reference Ver. 2.2.6 del 14 Dicembre 2012 explorer 2 Manuale dell Installatore e Technical Reference Ver. 2.2.6 del 14 Dicembre 2012 1 Indice 1. Descrizione del sistema e Requisiti hardware e software per l installazione... 4 1.1 Descrizione del

Dettagli

Introduzione alla Programmazione ad Oggetti in C++

Introduzione alla Programmazione ad Oggetti in C++ Introduzione alla Programmazione ad Oggetti in C++ Lezione 1 Cosa è la Programmazione Orientata agli Oggetti Metodologia per costruire prodotti software di grosse dimensioni che siano affidabili e facilmente

Dettagli

Reti di Telecomunicazione Lezione 7

Reti di Telecomunicazione Lezione 7 Reti di Telecomunicazione Lezione 7 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Il protocollo Programma della lezione file transfer protocol descrizione architetturale descrizione

Dettagli

Introduzione ai Device Drivers in Linux. E.Mumolo, DEEI mumolo@units.it

Introduzione ai Device Drivers in Linux. E.Mumolo, DEEI mumolo@units.it Introduzione ai Device Drivers in Linux E.Mumolo, DEEI mumolo@units.it 1 Device Drivers Moduli software che gestiscono le periferiche attraverso il file system Tutte le periferiche sono viste come file

Dettagli

Energy risk management

Energy risk management Il sistema di supporto alle tue decisioni Energy risk management Un approccio orientato agli attori M.B.I. Srl, Via Francesco Squartini 7-56121 Pisa, Italia - tel. 050 3870888 - fax. 050 3870808 www.powerschedo.it

Dettagli

ipod nano Guida alle funzionalità

ipod nano Guida alle funzionalità ipod nano Guida alle funzionalità 1 Indice Capitolo 1 4 Nozioni di base di ipod nano 5 Panoramica su ipod nano 5 Utilizzare i controlli di ipod nano 7 Disabilitare i controlli di ipod nano 8 Utilizzare

Dettagli

Web Conferencing Open Source

Web Conferencing Open Source Web Conferencing Open Source A cura di Giuseppe Maugeri g.maugeri@bembughi.org 1 Cos è BigBlueButton? Sistema di Web Conferencing Open Source Basato su più di quattordici componenti Open-Source. Fornisce

Dettagli

/*dichiarazioni*/ // le frasi sono contenute in stringhe, cioè array di char char f1[max]; int i, giusto,len;

/*dichiarazioni*/ // le frasi sono contenute in stringhe, cioè array di char char f1[max]; int i, giusto,len; /* Date in ingresso una frase, dire se una è palindroma */ #include #define MAX 100 int main() /*dichiarazioni*/ // le frasi sono contenute in stringhe, cioè array di char char f1[max]; int i,

Dettagli

Indicizzazione terza parte e modello booleano

Indicizzazione terza parte e modello booleano Reperimento dell informazione (IR) - aa 2014-2015 Indicizzazione terza parte e modello booleano Gruppo di ricerca su Sistemi di Gestione delle Informazioni (IMS) Dipartimento di Ingegneria dell Informazione

Dettagli

COME DIVENTARE PARTNER AUTORIZZATO @

COME DIVENTARE PARTNER AUTORIZZATO @ COME DIVENTARE PARTNER AUTORIZZATO @ Come diventare Partner di Ruckus Utilizzare il seguente link http://www.ruckuswireless.com/ e selezionare dal menu : PARTNERS > Channel Partners Applicare per diventare

Dettagli

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client Versione 25.4.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un

Dettagli

INTERNET e RETI di CALCOLATORI A.A. 2014/2015 Capitolo 4 DHCP Dynamic Host Configuration Protocol Fausto Marcantoni fausto.marcantoni@unicam.

INTERNET e RETI di CALCOLATORI A.A. 2014/2015 Capitolo 4 DHCP Dynamic Host Configuration Protocol Fausto Marcantoni fausto.marcantoni@unicam. Laurea in INFORMATICA INTERNET e RETI di CALCOLATORI A.A. 2014/2015 Capitolo 4 Dynamic Host Configuration Protocol fausto.marcantoni@unicam.it Prima di iniziare... Gli indirizzi IP privati possono essere

Dettagli

UN BUON VIAGGIO INIZIA PRIMA DI PARTIRE 3 SERVIZI ALITALIA. SEMPRE DI PIÙ, PER TE.

UN BUON VIAGGIO INIZIA PRIMA DI PARTIRE 3 SERVIZI ALITALIA. SEMPRE DI PIÙ, PER TE. UN BUON VIAGGIO INIZIA PRIMA DI PARTIR 3 RVIZI ALITALIA. MPR DI PIÙ, PR T. FAT TRACK. DDICATO A CHI NON AMA PRDR TMPO. La pazienza è una grande virtù. Ma è anche vero che ogni minuto è prezioso. Per questo

Dettagli

R.Focardi Laboratorio di Ingegneria del Software 6. 1

R.Focardi Laboratorio di Ingegneria del Software 6. 1 Networking Java permette comunicazioni in rete basate sul concetto di socket, che permette di vedere la comunicazione in termini di flusso (stream), in modo analogo all input-output di file, usando Stream

Dettagli

Controllare un nastro trasportatore fischertechnik con Arduino

Controllare un nastro trasportatore fischertechnik con Arduino TITOLO ESPERIENZA: Controllare un nastro trasportatore fischertechnik con Arduino PRODOTTI UTILIZZATI: OBIETTIVO: AUTORE: RINGRAZIAMENTI: Interfacciare e controllare un modello di nastro trasportatore

Dettagli

GUIDA RAPIDA ALL USO DI DJCONTROL MP3 LE E DJUCED 18

GUIDA RAPIDA ALL USO DI DJCONTROL MP3 LE E DJUCED 18 GUID RPID LL USO DI DJCONTROL MP3 LE E DJUCED 18 Installazione Inserisci il CD-ROM. vvia il programma di installazione. Segui le istruzioni. Ulteriori informazioni (forum, tutorial, video...) disponibili

Dettagli

Sistemi Operativi Sincronizzazione tra Processi

Sistemi Operativi Sincronizzazione tra Processi Sistemi Operativi Processi Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides al Prof. Tullio Vardanega 1 Processi indipendenti possono avanzare concorrentemente senza alcun vincolo

Dettagli

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it INTRODUZIONE, LINGUAGGIO, HANDS ON Giuseppe Cirillo g.cirillo@unina.it Il linguaggio C 1972-Dennis Ritchie 1978-Definizione 1990-ANSI C 1966 Martin Richars (MIT) Semplificando CPL usato per sviluppare

Dettagli

Tipicamente un elaboratore è capace di trattare domini di dati di tipi primitivi

Tipicamente un elaboratore è capace di trattare domini di dati di tipi primitivi TIPI DI DATO Tipicamente un elaboratore è capace di trattare domini di dati di tipi primitivi numeri naturali, interi, reali caratteri e stringhe di caratteri e quasi sempre anche collezioni di oggetti,

Dettagli

APPLICATION FORM 1. YOUR MOTIVATION/ LA TUA MOTIVAZIONE

APPLICATION FORM 1. YOUR MOTIVATION/ LA TUA MOTIVAZIONE APPLICATION FORM Thank you for your interest in our project. We would like to understand better your motivation in taking part in this specific project. So please, read carefully the form, answer the questions

Dettagli

Data Alignment and (Geo)Referencing (sometimes Registration process)

Data Alignment and (Geo)Referencing (sometimes Registration process) Data Alignment and (Geo)Referencing (sometimes Registration process) All data aquired from a scan position are refered to an intrinsic reference system (even if more than one scan has been performed) Data

Dettagli

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at]email.

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at]email. La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net di Emanuele Mattei (emanuele.mattei[at]email.it) Introduzione In questa serie di articoli, vedremo come utilizzare

Dettagli

Tutorial Sky Go su Samsung v.1.1

Tutorial Sky Go su Samsung v.1.1 Tutorial Sky Go su Samsung v.1.1 1.1 Presentazione...2 2.2 Download e installazione...2 2.2 Login...3 2.2.1 Limitazioni all'accesso...4 2.3 Profili di visione...6 2.4 Reti...7 2.5 Diritti...7 3.0 Fruizione

Dettagli

Manuale d uso. Congratulazioni per aver scelto e-tab. Ti ringraziamo per la Tua fiducia e la decisione di comprare il nostro prodotto!

Manuale d uso. Congratulazioni per aver scelto e-tab. Ti ringraziamo per la Tua fiducia e la decisione di comprare il nostro prodotto! Manuale d uso Congratulazioni per aver scelto e-tab. Ti ringraziamo per la Tua fiducia e la decisione di comprare il nostro prodotto! Giacchè noi costantemente aggiorniamo e miglioriamo il Tuo e-tab, potrebbero

Dettagli

COMINCIAMO A SENTIRCI UNA FAMIGLIA

COMINCIAMO A SENTIRCI UNA FAMIGLIA COMINCIAMO A SENTIRCI UNA FAMIGLIA IL PRIMO GIORNO CON LA FAMIGLIA OSPITANTE FIRST DAY WITH THE HOST FAMILY Questa serie di domande, a cui gli studenti risponderanno insieme alle loro famiglie, vuole aiutare

Dettagli

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

BARON Manuale di istruzioni Italian

BARON Manuale di istruzioni Italian BARON Manuale di istruzioni Italian Introduzione: (1). Vista d assieme del telefono 1.1. 1.1 Tasti Tasto Funzione SIM1 /SIM2 Fine / Accensione Tasto OK Tasto di navigazione Tasto opzioni sinistro/destro

Dettagli

ipod shuffle Manuale Utente

ipod shuffle Manuale Utente ipod shuffle Manuale Utente 1 Indice Capitolo 1 3 Informazioni su ipod shuffle Capitolo 2 5 Nozioni di base di ipod shuffle 5 Panoramica su ipod shuffle 6 Utilizzare i controlli di ipod shuffle 7 Collegare

Dettagli

MANUALE UTENTE DEL SOFTWARE DI GESTIONE DEGLI ART. SDVR040A/SDVR080A/SDVR160A

MANUALE UTENTE DEL SOFTWARE DI GESTIONE DEGLI ART. SDVR040A/SDVR080A/SDVR160A MANUALE UTENTE DEL SOFTWARE DI GESTIONE DEGLI ART. SDVR040A/SDVR080A/SDVR160A Leggere attentamente questo manuale prima dell utilizzo e conservarlo per consultazioni future Via Don Arrigoni, 5 24020 Rovetta

Dettagli

C O M E I N I Z I A R E A U S A R E U N T A B L E T A N D R O I D

C O M E I N I Z I A R E A U S A R E U N T A B L E T A N D R O I D C O M E I N I Z I A R E A U S A R E U N T A B L E T A N D R O I D Se avete un tablet android, ma non avete la minima idea di come accenderlo, usarlo e avviarlo, seguite queste nostre indicazioni 1. ATTIVAZIONE

Dettagli

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Guida pratica di base

Guida pratica di base Adolfo Catelli Guida pratica di base Windows XP Professional Dicembre 2008 Sommario Accedere a Windows XP 4 Avviare Windows XP 4 Uscire da Windows XP 5 L interfaccia utente di Windows XP 6 Il desktop di

Dettagli

P a s q u a l e t t i V e r o n i c a

P a s q u a l e t t i V e r o n i c a PHP: OOP Pasqualetti Veronica Oggetti Possiamo pensare ad un oggetto come ad un tipo di dato più complesso e personalizzato, non esistente fra i tipi tradizionali di PHP, ma creato da noi. 2 Gli oggetti

Dettagli

PRESENTAZIONE DI UN SMS AL GATEWAY

PRESENTAZIONE DI UN SMS AL GATEWAY Interfaccia Full Ascii Con questa interfaccia è possibile inviare i dati al Server utilizzando solo caratteri Ascii rappresentabili e solo i valori che cambiano tra un sms e l altro, mantenendo la connessione

Dettagli

Interfaccia Web per customizzare l interfaccia dei terminali e

Interfaccia Web per customizzare l interfaccia dei terminali e SIP - Session Initiation Protocol Il protocollo SIP (RFC 2543) è un protocollo di segnalazione e controllo in architettura peer-to-peer che opera al livello delle applicazioni e quindi sviluppato per stabilire

Dettagli