CDC e Personal Profile: la piattaforma Java ME per dispositivi hi-end
|
|
- Margherita Vitali
- 7 anni fa
- Visualizzazioni
Transcript
1 CDC e Personal Profile: la piattaforma Java ME per dispositivi hi-end Stefano Sanna JUG Sardegna
2 CDC e Personal Profile: la piattaforma Java ME per dispositivi hi-end Abstract: Java ME non è solo CLDC e MIDP: i dispositivi mobili ad alte prestazioni possono avvalersi di una piattaforma Java completa, modulare ed estremamente potente. CDC e Personal Profile sono i componenti più importanti di questa piattaforma Requisiti: conoscenza base di Java SE e Java ME (CLDC/MIDP) Agenda: CDC e i suoi profili: la nuova frontiera di Java ME CDC Platform: Microsoft Windows Mobile Nokia Series 80 (9300 e 9500) Sony-Ericsson CDC Platform 1 (P990 e M600) Savaje OS (GSPDA Jasper S20) Conclusioni e riferimenti
3 Java ME... ieri...
4 Java ME... oggi!
5 CDC, FP, PBP, PP: ecco la squadra! Parliamo della piattaforma Java ME rivolta a dispositivi con queste caratteristiche hardware minime: ROM: minimo 512K RAM: minimo 256K Supporto connettività Implementazione completa di una Java Virtual Machine standard (così come definita su Java Virtual Machine Specification, 2nd Edition ) Rispetto al mondo MIDP, CDC e i relativi profili costituiscono un ecosistema complesso e modulare: CDC: Connected Device Configuration FP: Foundation Profile PBP: Personal Basis Profile PP: Personal Profile Personal Profile Personal Basis Profile Foundation Profile CDC
6 Chi fa cosa CDC (JSR 36, JSR 218): Fornisce una VM compatibile J2SE, con un subset della libreria standard: java.lang, java.lang.ref, java.lang.reflect, java.math java.io, java.net, javax.microedition.io java.security, java.security.cert, java.text, java.util, java.util.jar, java.util.zip Foundation Profile (JSR 46, JSR 219): Completa i package forniti da CDC, per avere piena copertura della libreria standard Personal Basis Profile (JSR 129, JSR 217): Aggiunge il supporto base AWT per componenti lightweight e introduce il modello di applicazioni basato su Xlet: java.awt, java.awt.event, java.awt.color, java.awt.image java.beans, java.rmi, java.rmi.registry (per Xlet) javax.microedition.xlet, javax.microedition.xlet.ixc Personal Profile (JSR 62, JSR 216): Completa il supporto AWT con i componenti nativi: java.applet, java.awt.datatransfer
7 CDC e PP Libreria standard molto ricca, sottoinsieme della Standard Edition (JSE 1.3 per CDC/FP/PBP/PP 1.0 e JSE 1.4 per CDC/FP/PBP/PP 1.1, con l'esclusione delle estensioni del linguaggio) Sfruttano le prestazioni dei palmari e degli smartphone di fascia alta (memoria, file system, risorse native...) Supporto JNI: ciò che il runtime non offre può essere sviluppato ad hoc se necessario Possibilità di usare componenti nativi e di utilizzare librerie grafiche diverse da quella standard (HAVi, DVB, SWT, LWVCL...) GUI AWT, con qualche eccezione: La specifica precisa che alcune funzionalità sono dipendenti dalla piattaforma. In alcuni casi l'invocazione di una certa funzionalità non produce alcun effetto, in altri casi la VM solleva una eccezione. java.awt.frame potrebbe non essere ridimensionabile né collocabile a piacere sul display gestione eventi e colori possono avere limitazioni non tutte le restrizioni sono esplicite (getbutton() su MouseEvent...)
8 Tre modelli applicativi Il top della gamma Java ME lascia ampia libertà allo sviluppatore, che può scegliere il modello applicativo più opportuno: Stand-alone: il metodo main() costituisce l'entry point dell'applicazione Managed: le applicazioni implementano l'interfaccia Xlet, gestita a sua volta da un XletManager, che riprende alcuni dei concetti delle MIDlet e, soprattutto, delle Xlet inizialmente introdotte con Java TV Embedded: le applicazioni (Applet) sono eseguite all'interno dell'appletviewer o di browser opportunamente esteso Il modello applicativo scelto dipende dal dispositivo in uso!!!
9 Xlet e XletContext La Xlet è una managed application che interagisce con il runtime del dispositivo attraverso un XletContext In particolare l'interazione si basa su: 4 callback per inizializzazione, avvio, sospensione e disattivazione definite dall'interfaccia Xlet 6 metodi della classe XletContext per l'accesso al ClassLoader, al Container per la gestione della GUI, la lettura delle property dell'applicazione e la notifica, da parte della Xlet, del cambio di stato (paused/destroyed) Il modello Xlet è molto simile a quello incontrato in ambito MIDP, con alcune importanti differenze: Xlet è una interfaccia da implementare, non una classe da estendere l'inizializzazione deve avvenire nel corpo del metodo initxlet e non nel costruttore i metodi per interagire con il runtime environment Java ME non fanno parte di Xlet ma sono esposti dall'xletcontext
10 Struttura di una Xlet import javax.microedition.xlet.xlet; import javax.microedition.xlet.xletcontext; import javax.microedition.xlet.ixc.ixcregistry; public class HelloCDC implements Xlet { private XletContext context; public void initxlet(xletcontext context) { this.context = context; } public void startxlet() {... } public void pausexlet() {... } public void destroyxlet(boolean unconditional) {... } } L'interfaccia grafica deve essere creata qui
11 Quattro interpretazioni di CDC e Personal Profile Windows Mobile (Qtek 9090) Symbian OS (UIQ, Sony-Ericsson M600) Symbian OS (Series 80, Nokia 9300) Savaje OS (GSPDA Jasper S20)
12 Ambienti di sviluppo Generic (Windows Mobile) Netbeans 5.0 Nokia Series 80 Platform SDK (PP) Mobility Pack 5.0 for CDC Nokia Series 80 P990 Ext Pkg Sony-Ericsson P990 M600 Ext Pkg Sony-Ericsson M600 Sony Ericsson CDC Platform 1 Ext Pkg Netbeans 5.5 Mobility Pack 5.5 for CDC Java Toolkit for CDC Savaje OS
13 Microsoft Windows Mobile E' il sistema operativo più diffuso su dispositivi PDA: handhelds, PDA-phone, navigatori satellitari, car-pc... Sono disponibili runtime environment compatibili CDC/PP: IBM WebSphere Everyplace Micro Environment mes.html Esmertec JBed NSICom CrE-ME Mysaifu JVM (progetto open source!) Alcuni runtime non sono ben armonizzati con il sistema operativo: procedura di installazione macchinosa interfaccia utente incoerente rispetto al look& feel del dispositivo (due menù bar, tre stili di pulsanti...)
14 IBM WebSphere Everyplace Micro Environment Supporta CDC 1.1 e Personal Profile 1.1, con modello applicativo stand-alone Offre un'ottima integrazione con la GUI del sistema operativo: solo Frame full-screen menù sulla status-bar supporto per il touchscreen Sviluppo: E' possibile utilizzare gli strumenti JSE, facendo attenzione ad utilizzare esclusivamente librerie e funzionalità supportate Deployment: file JAR contenente le classi e le eventuali risorse script NOME_APP.lnk per l'avvio: 255#"\J9\PPRO11\bin\j9.exe" "-jcl:ppro11" "-cp" "\MyApp.jar" org.myself.myapp Buon supporto JNI, che permette di estendere le funzionalità del runtime Java
15 JNI: oltre il runtime Java JNI permette di sfruttare le funzionalità native del dispositivo: accesso alle porte seriali accesso alle estensioni telefoniche integrazione con le applicazioni PIM Un caso comune: GPS Bluetooth è possibile delegare al sistema operativo il discovery dei dispositivi Bluetooth e la creazione del device seriale attraverso JNI si accede a JavaComm e si legge lo stream NMEA contenente le informazioni di localizzazione Implementazioni JavaComm per Windows Mobile:
16 Java Comm e accesso a GPS Bluetooth Utilizzando l'implementazione Telio/CESerial, la procedura di installazione è: comm.jar + CESerial.jar: contengono le classi Java. Devono essere inclusi nel classpath dell'applicazione commapi.dll: è la libreria a caricamento dinamico nativa. Deve essere copiata nella directory \Windows javax.comm.properties: è il file contenente le property. Deve essere copiato nella directory contentente i file JAR L'applicazione può ottenere una enumerazione delle porte disponibili: Enumeration ports = CommPortIdentifier.getPortIdentifiers(); while (ports.hasmoreelements()) { CommPortIdentifier id = (CommPortIdentifier) ports.nextelement(); System.out.println("Port found: " + id.getname()); }
17 Windows Mobile: impostazioni della porta seriale Bluetooth
18 Windows Mobile: binding della porta seriale sul GPS Bluetooth
19 Windows Mobile: lo stream NMEA è nostro! SerialPort port = (SerialPort) CommPortIdentifier.getPortIdentifier("COM6:").open("WM5", 5000); port.setserialportparams(4800, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); // 8N1@4800bps BufferedReader buffer = new BufferedReader(new InputStreamReader(port.getInputStream())); String sentence; while((sentence = buffer.readline())!= null) { System.out.println(sentence); }
20 Nokia Series 80 Lo sviluppo è pressoché analogo a quello per Windows Mobile: il runtime Java è infatti una versione custom di J9 per la serie Communicator Il modello applicativo è di tipo stand-alone ma affinché l'applicazione sia riconosciuta dalla Java Virtual Machine è necessario che il Manifest del JAR file contenga alcune informazioni accessorie: Main-class: org.mycompany.myapplicationmainclass PproApp-Name: MyApplication PproApp-Vendor: MyCompany PproApp-Version: Senza queste informazioni l'applicazione non viene installata! Il processo di sviluppo può essere semplificato utilizzando: Netbeans 5.0 Mobility Pack for CDC 5.0 Nokia Series 80 Platform SDK for Symbian OS, for Java, Personal Profile (
21 Il futuro: Netbeans 5.5, CDC Mobility Pack 5.5, Java Toolkit for CDC La nuova versione di Netbeans offre un miglior supporto allo sviluppo CDC: CDC Mobility Pack, per l'integrazione con custom developer platform (Series 80, UIQ...) Integrazione con il Java Toolkit for CDC Uso di Matisse per lo sviluppo visuale delle interfacce grafiche basate sulla JSR 209 Deployment su device Jasper S20
22 Sun Java Toolkit 1.0 for CDC E' il nuovo strumento base per lo sviluppo di applicazioni, Xlet e Applet per CDC e i profili superiori E' basato sulla Netbeans Platform e, rispetto al Java Wireless Toolkit, offre una migliore gestione dei progetti e un editor di testi base API supportate: Connected Device Configuration (CDC) 1.1 (JSR 218) Foundation Profile (FP) 1.1 (JSR 219) with Security Optional Package 1.0 Personal Basis Profile (PBP) 1.1 (JSR 217) Personal Profile (PP) 1.1 (JSR 216) Advanced Graphic and User Interface Optional Package for the J2ME Platforn (AGUI) 1.0 (JSR 209) (si tratta di una implementazione beta) L'Early Access version è disponibile presso:
23 Sun Java Toolkit 1.0 for CDC
24 Savaje OS Savaje OS porta una piccola grande rivoluzione nel mondo dei dispositivi mobili: finalmente un terminale con sistema operativo interamente in Java e con una ridottissima componente nativa (indispensabile per le funzionalità telefoniche, i codec multimedia...) Lo sviluppo su Savaje si basa sugli strumenti più recenti (attualmente in beta o preview) e supporta il modello applicativo Xlet
25 GSPDA Jasper S20 E' il primo dispositivo equipaggiato con Savaje OS e rilasciato in una Developer Version 2006 all'ultima JavaOne Impressionante dotazione del runtime Java: CLDC 1.1, MIDP 2.0, JTWI, PIM/FileConnection API (JSR 75), Mobile Media API (JSR 135), Mobile 3D Graphics (JSR 183), Wireless Messaging API 1.1 e 2.0 (JSR 120 e JSR 205), Bluetooth API (JSR 82), XML Parsing (JSR 172, senza il subset JAX-RPC) CDC 1.1, Foundation Profile, Personal Basis Profile, Advanced Multimedia Supplements (JSR 234), JAIN Presence e Instant Messaging (JSR ), Security and Trust Services API (JSR 177) e Advanced Graphics and User Interface Optional Package (JSR 209) CLDC e CDC condividono lo stesso runtime e la configurazione hi-end può avvantaggiarsi delle API opzionali normalmente riservate alla configurazione consumer (BT, WMA, WSA...)!
26 Sviluppo per Savaje OS Per sviluppare applicazioni per Jasper S20 occorre: Netbeans Mobility Pack for CDC 5.5 per il supporto ai progetti CDC e la gestione dei toolkit e SDK Java Toolkit for CDC per il supporto JSR 209 indispensabile per lo sviluppo della GUI per l'emulatore CDC/PP Class Library Savaje (SavajeDeveloper.jar) necessaria per compilare le applicazioni che utilizzano funzionalità native del dispositivo o API opzionali del profilo MIDP Netbeans 5.5 supporta il deployment completo sul dispositivo: l'applicazione è distribuita in bundle, contentente il bytecode e il file JNLP per l'avvio della main class il bundle è copiato via USB-storage sul dispositivo Documentazione e risorse:
27 Alcune cose da ricordare... Prima di intraprendere lo sviluppo di una applicazione basata su CDC è importante tenere in considerazioni alcuni aspetti critici: Modello applicativo i tre modelli (stand-alone, Xlet e Applet) non sono contemporaneamente supportati da tutti i dispositivi Deployment dispositivi diversi supportano modalità di deployment diverse e incompatibili tra loro (si pensi alla differenza tra Windows Mobile e Savaje) Interfaccia utente è raccomandato l'uso di layout dinamici (BorderLayout, GridLayout...) perché dimensioni e orientamento dei display possono variare notevolmente (si pensi alla differenza tra Nokia 9300 e Qtek 9090) l'interfaccia potrebbe prevedere l'uso di un touchscreen la presenza della JSR 209 non implica la presenza di AWT!!! Ad esempio, Jasper S20 include il supporto (parziale) a Swing ma non dispone dei componenti nativi AWT inclusi nel Personal Profile: una applicazione scritta per Windows Mobile non può funzionare su Savaje OS senza la riscrittura della GUI
28 Conclusioni Il mercato dei dispositivi hi-end è ricco e in crescita: hardware potente, flessibile, con grandi display, connettività completa sistemi operativi più robusti e completi nelle funzionalità di connettività e gestione dati si diffonde la cultura della connettività in movimento e gli utenti cominciano ad apprezzare la possibilità di poter consultare la posta, chattare con gli amici, accedere al web e ad altre risorse personali in qualunque luogo e in qualunque momento Java ME è una tecnologia matura per sfruttare appieno questo mercato: CDC, profili correlati ed API opzionali formano una piattaforma potente e modulare per la realizzazione di applicazioni complesse e scalabili: le limitazioni di CLDC ed MIDP sono un ricordo! Gli ambienti di sviluppo si integrano perfettamente con gli SDK forniti dai produttori dei dispositivi e permettono di migliorare notevolmente la qualità del lavoro svolto Manca una base di conoscenza ampia e collaudata come quella di CLDC/MIDP: a noi sviluppatori è richiesto di condividere la nostra esperienza, proporre best practice e pattern per trarre massimo vantaggio da questa potente piattaforma e attirare nuovi sviluppatori e nuove idee
29 Riferimenti Specifiche e documentazione: CDC e profili superiori: Netbeans + Mobility Pack: Strumenti: Netbeans: IBM WEME: Nokia: Sony-Ericsson: UIQ: Savaje: La community italiana: Java Mobile Developers Forum Chi vi parla... :-) gerdavax@gerdavax.it - web:
30 GRAZIE CDC e Personal Profile: la piattaforma Java ME per dispositivi hi-end Stefano Sanna JUG Sardegna
Java Mobile Developers Forum L o. Stefano Sanna
Java Mobile Developers Forum http://jmdf.java2me.org L o Java ME per Palmari e PDA Stefano Sanna http://www.gerdavax.it 1 Parliamo di... Java ME: non solo cellulari... CLDC e MIDP su PDA J9 su Windows
Dettaglihttp://www.gerdavax.it/corsojavame
Corso Java ME Sviluppo di applicazioni per telefoni cellulari e computer palmari http://www.gerdavax.it/corsojavame Stefano Sanna Versione 1.0.1 7 Giugno 2006 gerdavax@gerdavax.it Corso Java ME http://www.gerdavax.it/corsojavame
DettagliEuropean Master on Critical Networked Systems Modulo su Mobile Systems
Modulo su Parte III: Lezione 1: Sviluppo di applicazioni J2ME Introduzione alla piattaforma Java 2 Micro Edition Docente: Ing. Salvatore Orlando Dipartimento di Informatica e Sistemistica Via Claudio 21,
DettagliJ2ME Platform. Symbian OS. Nokia property platform: Series 60. Microsoft Windows CE.NET Microsoft Windows Mobile Mobile client-server communication
Dott. Giovanni Perbellini giovanni.perbellini@univr.it J2ME Platform J2ME Wireless Toolkit (WTK 2.2) Symbian OS Symbian SDK Nokia property platform: Series 60 Nokia Developer s Suite SDK Microsoft Windows
DettagliEuropean Master on Critical Networked Systems Modulo su Mobile Systems
Modulo su Parte III: Lezione 3: Sviluppo di applicazioni J2ME IDE ed emulatori Docente: Ing. Salvatore Orlando Dipartimento di Informatica e Sistemistica Via Claudio 21, 80125 Napoli ::. Contenuti della
DettagliJUG Sardegna Java Summer Meeting 16 Luglio 2005 1
JUG Sardegna Java Summer Meeting 16 Luglio 2005 1 J2ME Introduzione allo sviluppo di applicazioni per dispositivi mobili Stefano Sanna gerdavax@tiscali.it gerda@crs4.it JUG Sardegna Java Summer Meeting
DettagliLa piattaforma Java ME
1 La piattaforma Java ME Introduzione Java Micro Edition (di seguito Java ME o JME) è la specializzazione di Java (linguaggio, virtual machine e librerie) per lo sviluppo di applicazioni per telefoni cellulari,
DettagliJava per Sistemi Ubiqui
Griglie e Sistemi di Elaborazione Ubiqui Java per Sistemi Ubiqui Griglie e Sistemi Ubiqui - D. Talia - UNICAL 1 Java per Ubiquitous Computing Java Micro Edition Real-time Java KVM Waba J9 JavaPhone Java
DettagliProf. Pagani corrado JAVA
Prof. Pagani corrado JAVA NASCITA DI JAVA Java è stato creato, a partire da ricerche effettuate alla Stanford University agli inizi degli anni Novanta, da un gruppo di esperti sviluppatori capitanati da
DettagliJava per Sistemi Mobili e Ubiqui
Griglie e Sistemi di Elaborazione Ubiqui Java per Sistemi Mobili e Ubiqui Griglie e Sistemi Ubiqui - D. Talia - UNICAL 1 Java per Ubiquitous Computing Java Micro Edition Real-time Java KVM Waba J9 JavaPhone
DettagliJava per Sistemi Mobili e Ubiqui
Griglie e Sistemi di Elaborazione Ubiqui Java per Sistemi Mobili e Ubiqui Griglie e Sistemi Ubiqui - D. Talia - UNICAL 1 Java per Ubiquitous Computing Java Micro Edition Real-time Java KVM Waba J9 JavaPhone
DettagliJava per Sistemi Mobili e Ubiqui
Griglie e Sistemi di Elaborazione Ubiqui Java per Sistemi Mobili e Ubiqui Griglie e Sistemi Ubiqui - D. Talia - UNICAL 1 Java per Ubiquitous Computing Java Micro Edition Real-timeJava KVM Waba J9 JavaPhone
Dettagliuna Applet in una Xlet per applicazioni in ambito Televisione Digitale Terrestre Lorenzo Tani
Università degli Studi di Firenze Laboratorio di Comunicazioni e Immagini Media Integration and Communication Center Analisi dei metodi di trasformazione di Relatori: una Applet in una Xlet per applicazioni
DettagliStrumenti Java. Fondamenti di informatica L-B A.A Alessandra Toninelli
Strumenti Java Fondamenti di informatica L-B A.A. 2006-2007 Alessandra Toninelli atoninelli@deis.unibo.it Cosa installare? J2SE SDK Software Development Kit (JDK): Contiene: tutte le classi con relativo
DettagliAnalisi e sviluppo di un client per l accesso a dati su server remoto da dispositivi embedded
tesi di laurea Analisi e sviluppo di un client per l accesso a dati su server remoto da dispositivi embedded Anno Accademico 2007-2008 relatore Ch.mo prof. Porfirio Tramontana correlatore Dott. Antonio
DettagliJava per Sistemi Mobili e Ubiqui
Griglie e Sistemi di Elaborazione Ubiqui Java per Sistemi Mobili e Ubiqui Griglie e Sistemi Ubiqui - D. Talia - UNICAL 1 Java per Ubiquitous Computing Java Micro Edition Real-time Java KVM Waba J9 JavaPhone
DettagliTelemetria. Autore: Marco Mazzucchi
Autore: Marco Mazzucchi Telemetria è un'applicazione J2ME basata sul rilevamento satellitare GPS che permette di calcolare la posizione e la velocità istantanea per ogni giro compiuto dall'utente in un
DettagliJava e i Tipi di dati primitivi. Parte 3
Java e i Tipi di dati primitivi Parte 3 La nozione di tipo di dato Il tipo del dato consente di esprimere la natura del dato Indica il modo con cui verrà interpretata la sequenza di bit che rappresenta
DettagliL o. Stefano Sanna http://www.gerdavax.it
L JavaComm: o controllare dispositivi seriali in Java Stefano Sanna http://www.gerdavax.it 1 Parliamo di... Porte seriali: tante applicazioni interessanti! L'API JavaComm La libreria Uso in ambiente Linux
DettagliSensoristica Avanzata per Dispositivi Mobili
Sensoristica Avanzata per Dispositivi Mobili Stefano Sanna http://www.gerdavax.it SPEAKER Stefano Sanna Senior Developer @ beeweeb technologies Autore del libro Java Micro Edition Hoepli Informatica (in
DettagliProgrammazione J2ME. Lezione 1. Le MIDlet. Di Blasi Gianpiero - D.M.I. - Università di Catania
Di Blasi Gianpiero - D.M.I. - Università di Catania Programmazione J2ME Lezione 1 Le MIDlet Cosa impareremo oggi? Cosa è J2ME I profili MIDP ed i livelli di configurazione Il sistema di sicurezza di J2ME
DettagliLe applet Java. Esempio minimo
Le applet Java Un applet è un applicazione Java che gira su web. L'applet presenta qualche differenza con le normali applicazioni, infatti essi non hanno nessun metodo main Anche le Applet sono delle classi
DettagliArchitetture Applicative Altri Esempi
Architetture Applicative Altri Esempi Alessandro Martinelli alessandro.martinelli@unipv.it 15 Aprile 2014 Architetture Applicative Altri Esempi di Architetture Applicative Architetture con più Applicazioni
DettagliSOFTWARE. Programmi e dati che indicano al computer come svolgere un determinato compito
SOFTWARE MODULO 3 SOFTWARE Programmi e dati che indicano al computer come svolgere un determinato compito Programma: sequenza di istruzioni, scritte in un determinato linguaggio, con le quali si fa eseguire
DettagliProgrammazione ad Oggetti. Java Parte I
Programmazione ad Oggetti Java Parte I Overview Caratteristiche generali 1 Caratteristiche generali Un moderno linguaggio orientato agli oggetti Pensato per lo sviluppo di applicazioni che devono essere
DettagliCorso di Laurea Ingegneria Informatica Laboratorio di Informatica
Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Capitolo 4 Traduzione ed esecuzione di programmi Ottobre 2006 Traduzione ed esecuzione di programmi 1 Nota bene Alcune parti del presente
DettagliAnalisi e comparazione dei Framework OpenSwing e Google Web Toolkit per lo sviluppo di interfacce utente con paradigma MVC.
tesi di laurea Analisi e comparazione dei Framework OpenSwing e Google Web Toolkit. Anno Accademico 2009/2010 relatore Ch.mo prof. Porfirio Tramontana correlatore Ing. Luca Anniciello candidato Gianluca
DettagliJava SE 7. Introduzione.
Java SE 7 Introduzione diegozabot@yahoo.it ursula.castaldo@gmail.com Java Java è un linguaggio di programmazione. Inizialmente usato per creare semplici programmi nelle pagine web (chiamati applets), Java
DettagliCorso sul linguaggio Java
Corso sul linguaggio Java Modulo JAVA0 0 Linguaggio Java 1 Prerequisiti Utilizzo elementare di un pc Utilizzo di Internet per il downloading di file 2 1 Introduzione In questa lezione si descrivono gli
DettagliIstallazione di Java - Uso delle librerie
Indice Istallazione di Java - Uso delle librerie G. Grossi Indice Indice 1 Istallazione di Java 2 SDK 2 Indice Indice 1 Istallazione di Java 2 SDK 2 Java 1.4.2 Istallazione di Java Java è disponibile per
DettagliFondamenti di Informatica T2 Modulo 2
Università degli Studi di Bologna Facoltà di Ingegneria Fondamenti di Informatica T2 Modulo 2 Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009 Integrated Development Environment (IDE)
DettagliInstallazione. Eclipse. Workspace. Primo Avvio. Fondamenti di Informatica T2 Modulo 2. Università di Bologna A.A. 2008/2009
Università degli Studi di Bologna Facoltà di Ingegneria Fondamenti di Informatica T2 Modulo 2 Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009 Integrated Development Environment (IDE)
DettagliFondamenti di sviluppo mobile su Android
Fondamenti di sviluppo mobile su Android Dott. Ing. A. Tedeschi antonio.tedeschi@uniroma3.it Corso di Telecomunicazioni Wireless a.a. 2016-2017 1 Chi sono Dott. Ing. Antonio Tedeschi Ph.D. Student Signal
DettagliJava & Linux. Stefano Sanna Gruppo Utenti Linux Cagliari
Java & Linux Perché Java e Linux? Linux è un ottimo sistema operativo, disponibile per piattaforme desktop, server e su sistemi embedded. Java è un ottimo linguaggio di programmazione, con una libreria
DettagliMobile Computing: Sviluppo Applicazione VoIP su Symbian OS
Mobile Computing: Sviluppo Applicazione VoIP su Symbian OS S. Impedovo, IAPR Fellow, IEEE S. M., P. Campanella Dipartimento di Informatica Università degli Studi di Bari Aldo Moro Via Orabona, 4 70126
DettagliGuida introduttiva su Eclipse. Ing. Marco Dell'Unto marco.dellunto@iet.unipi.it
Guida introduttiva su Eclipse Ing. Marco Dell'Unto marco.dellunto@iet.unipi.it Introduzione Eclipse è un ambiente di sviluppo (IDE) multilinguaggio e multipiattaforma scritto in Java. E Open Source. Può
DettagliSVILUPPO DI UN COMPONENTE JAVABEAN CHE IMPLEMENTI FUNZIONALITA DI PARSING PER APPLICAZIONI MHP IN AMBITO TELEVISIONE DIGITALE TERRESTRE
Centro di eccellenza per la comunicazione e l integrazione dei media SVILUPPO DI UN COMPONENTE JAVABEAN CHE IMPLEMENTI FUNZIONALITA DI PARSING PER APPLICAZIONI MHP IN AMBITO TELEVISIONE DIGITALE TERRESTRE
DettagliNetBeans. Dott. Ing. Rossella Rubino A.A. 2007/2008 Laboratorio II CdL: Operatore Informatico Giuridico
NetBeans Dott. Ing. Rossella Rubino rossella.rubino@unibo.it A.A. 2007/2008 Laboratorio II CdL: Operatore Informatico Giuridico Software necessario J2SE(TM) Development Kit (JDK) http://java.sun.com/javase/downloads/index.jsp
DettagliInformatica. Prof. A. Longheu. Introduzione a Java
Informatica Prof. A. Longheu Introduzione a Java 1 Code-Name Green Nome del progetto Sun con l obiettivo di fornire intelligent consumer-electronic devices. Il risultato fu Oak Un linguaggio basato su
DettagliService discovery nella API Java Bluetooth JSR-82
Service discovery nella API Java Bluetooth JSR-82 Per l'accesso alla tecnologia Bluetooth nella piattaforma Java è stata definita la specifica, denominata con il codice JSR-82, di un'architettura e della
Dettaglicon Reti Sociali di Impresa Pragma Management Systems Francesco Breda Le Soluzioni IBM Lotus per l' Impresa
con Reti Sociali di Impresa Pragma Management Systems Francesco Breda Le Soluzioni IBM Lotus per l' Impresa COMUNICAZIONE vs COLLABORAZIONE L' email continua ancora oggi a essere uno degli strumenti di
DettagliLeggimi. Software di configurazione exlhoist V3.0.7
Leggimi Software di configurazione exlhoist V3.0.7 Questo documento contiene informazioni importanti sul software di configurazione exlhoist. Leggere attentamente il documento prima di installare e utilizzare
Dettagliiseries Informazioni preliminari su Client Access Express
iseries Informazioni preliminari su Client Access Express iseries Informazioni preliminari su Client Access Express ii iseries: Informazioni preliminari su Client Access Express Indice Parte 1. Informazioni
DettagliCorso sul linguaggio Java
Corso sul linguaggio Java Modulo JAVA5 A1.1 Awt e contenitori 1 Prerequisiti Programmazione base in Java Utilizzo di classi e oggetti Elementi di un interfaccia grafica 2 1 Introduzione Iniziamo lo studio
DettagliDIREZIONE DIDATTICA DI SAN GIUSEPPE JATO Programma Operativo Nazionale Fondo Sociale Europeo - Competenze per lo sviluppo
DIREZIONE DIDATTICA DI SAN GIUSEPPE JATO Programma Operativo Nazionale Fondo Sociale Europeo - Competenze per lo sviluppo Ogni componente hardware dell elaboratore, per poter svolgere determinati compiti,
DettagliIntroduzione al corso. Obiettivo del corso
Università della Calabria Corso di Laurea in Ingegneria Elettronica Programmazione Orientata agli Oggetti A.A. 2006/2007 Introduzione al corso Paolo Trunfio * * DEIS, Università della Calabria http://si.deis.unical.it/~trunfio
DettagliPanoramica: che cosa è necessario
Scheda 02 L installazione dell SDK G IOVANNI PULITI Panoramica: che cosa è necessario Per poter lavorare con applicazioni Java o crearne di nuove, il programmatore deve disporre di un ambiente di sviluppo
Dettagliinteroperabilità fra dispositivi forniti da diversi produttori; superare i problemi legati alla limitazione del numero di risorse.
Capitolo 7 Le infrastrutture SoftWare Funzioni del sistema operativo Rendere utilizzabili le risorse fisiche presenti nel sistema informatico: correttezza e precision; anywhere, anytime; affidabilità,
DettagliJava: un linguaggio per applicazioni di rete
Java: un linguaggio per applicazioni di rete Moreno Falaschi Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena March 3, 2014 1 Caratteristiche di Java (SUN) Linguaggio
DettagliProgrammazione in rete e laboratorio
Programmazione in rete e laboratorio 2001-02 JAVA Alberto Martelli PROGRAMMAZIONE GRAFICA Molti programmi interagiscono con l utente attraverso una interfaccia grafica GUI - Graphical User Interface Java
DettagliProgrammazione in rete e laboratorio
Programmazione in rete e laboratorio JAVA Alberto Martelli PROGRAMMAZIONE GRAFICA Molti programmi interagiscono con l utente attraverso una interfaccia grafica GUI - Graphical User Interface Java fornisce
DettagliScope e visibilità per classi
Packages Scope e visibilità per classi Classi interne nelle loro diverse forme Interne / statiche / locali Utilizzo congiunto con interfacce Implementazione di iteratori Gestione di eventi Packages Package:
DettagliAggiornamento del 20/04/2009: Tra Windows Mobile 6.1 e Windows Mobile 7 è stata prevista. Windows Phone Italy Cos'è Windows Mobile?
Su questo e su molti altri siti Internet si fa molto parlare di Windows Mobile, dando per scontato che si tratti di un sistema operativo per dispositivi mobili noto ai più. Ma cos'è esattamente Windows
DettagliIntroduzione 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
DettagliApplet. Applet: il termine identifica piccole applicazioni da eseguirsi all interno di un browser.
Applet IngSW0304 p.1 Applet Applet: il termine identifica piccole applicazioni da eseguirsi all interno di un browser. Una pagina web può contenere un riferimento al codice di un applet che verrà scaricato
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Grafica: Introduzione versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliArcGIS for Windows Mobile
Il mondo da tutti i punti di vista. ArcGIS for Windows Mobile 10.1.1 ArcGIS for Windows Mobile, è un applicazione GIS pronta all uso per la raccolta dei dati, l ispezione e la mappatura sul campo. Include
DettagliJava: vantaggi e applicazioni di un linguaggio moderno in contesti aziendali e produttivi. Presentazione a cura di: Andrea Bertolini
Java: vantaggi e applicazioni di un linguaggio moderno in contesti aziendali e produttivi Presentazione a cura di: Andrea Bertolini Obiettivi seminario Overview Java, origini Vantaggi e svantaggi Applicazioni
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Strumenti di Sviluppo: Introduzione versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliParadigmi di programmazione (sperimentazioni)
Paradigmi di programmazione (sperimentazioni) 2000-01 JAVA Alberto Martelli Programmazione grafica PROGRAMMAZIONE GRAFICA Molti programmi interagiscono con l utente attraverso una interfaccia grafica GUI
DettagliIl Sistema Operativo
Corso di Alfabetizzazione Informatica 2003/2004 Il Sistema Operativo Modello di von Neumann Bus di sistema CPU Memoria Centrale Memoria di Massa Interfaccia Periferica 1 Interfaccia Periferica 2 Il computer
DettagliEsecuzioni client-side: le Applet
Esecuzioni client-side: le Applet Introduzione Le Applet sono programmi Java che vengono eseguiti all interno dei browser Utente finale BROWSER HTML doc (visualizzato) Applet HTTP Requests HTTP Responses
DettagliJava: loading dinamico e reflection
Java: loading dinamico e reflection Scopo del corso integrativo: Presentare le caratteristiche avanzate di Java che lo rendono un linguaggio molto flessibile pur senza rinunciare ai vantaggi di un typechecking
DettagliL oggetto creato. Creazione di Oggetti. Rectangle: il concetto 10. Costruzione. Lo spazio di memoria del linguaggio Java. Rectangle: l oggetto
Usare e costruire oggetti Variabili e Oggetti Lo spazio di memoria di Java Le API di Java Gli oggetti sono entità di un programma che si possono manipolare invocando i metodi System.out oggetto della classe
DettagliADaMSoft. Procedure per l installazione del software in ambiente Microsoft Windows 3/6/2008. Powered by:
ADaMSoft Procedure per l installazione del software in ambiente Microsoft Windows 3/6/2008 Powered by: Introduzione L installazione e, più in generale, il funzionamento di ADaMSoft richiede che nel computer
DettagliUsare e costruire oggetti. Concetti Fondamentali. Interfaccia Pubblica di una. Application Program Interface
Concetti Fondamentali Interfaccia pubblica di una classe Le API di Java Lo spazio di memoria della macchina astratta Java Blocchi e sottoblocchi Variabili di frame e loro visibilità Importazioni di classi
DettagliIndice generale Introduzione...vii Parte I Concetti e costrutti fondamentali... 1 Capitolo 1 Introduzione al linguaggio... 3
Introduzione...vii Organizzazione del libro... viii Struttura del libro e convenzioni... ix Codice sorgente e progetti... x Compilare ed eseguire direttamente i listati e gli snippet di codice... x Compilare
DettagliProgetto M.U.S.E. BT MUSic Everywhere over Bluetooth Parte client
Progetto M.U.S.E. BT MUSic Everywhere over Bluetooth Parte client Reti di Calcolatori LS A.A. 2005/2006 Prof. Antonio Corradi Gruppo di lavoro: Albertin Marco Albertin Massimo Campeggi Claudio A cura di:
DettagliStrumenti per la programmazione
Editing del programma Il programma deve essere memorizzato in uno o più files di testo editing codice sorgente 25 Traduzione del programma Compilazione: è la traduzione effettuata da un compilatore Un
DettagliSistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova.
Programmi applicativi Un programma applicativo (o applicativo) è un eseguibile che può essere utilizzato dall utente e che ha funzionalità di alto livello (word processor, spreadsheet, DBMS) Univ. Milano-Bicocca
DettagliSETA Selection Tool del Sistema ARTIST
Selection Tool del Sistema ARTIST L incarico è stato affidato al RTI composta da: Kayser Italia S.r.l. Daxo con capogruppo Kayser Italia s.r.l. SETA () Espandibilità e flessibilità Delocalizzazione istallazione
DettagliSistemi Di Elaborazione Dell informazione
Sistemi Di Elaborazione Dell informazione Dott. Antonio Calanducci Lezione II: Software Corso di Laurea in Scienze della Comunicazione Anno accademico 2009/2010 Tipi di software Software di sistema (o
DettagliL interfaccia grafica in Java
L interfaccia grafica in Java Java possiede due package per la creazione di interfacce grafiche java.awt javax.swing AWT (Abstract Widget Toolkit) presente già in Java 1.0, migliorato in Java 1.1. Invariato
DettagliIngegneria del Software 1: Eclipse
Ingegneria del Software 1: Eclipse Da completare entro Marzo 15, 2016 S. Krstić and M. Scavuzzo and F. Marconi and A. Rizzi and C. Menghi 1 Contents 1 Introduzione 3 1.1 Java (JRE vs JDK)..........................................
DettagliDe Gaetano Andrea JAVA 4 EMBEDDED
De Gaetano Andrea JAVA 4 EMBEDDED Cosa e' J2ME? J2me e' la versione per dispositivi portatili di java. Permette di poter programmare midlet, piccoli programmi nell'ordine delle decine di kb, in grado di
DettagliRiassunto. GUI in Java con l AWT 1. Cos è una GUI. Oggi: GUI in Java, l AWT. GUI in Java. Un esempio. Stefano Mizzaro 1
Riassunto GUI in Java con l AWT 1 Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro mizzaro@dimi.uniud.it Programmazione, lezione 23 15 febbraio
DettagliSistema operativo & file system 1
Il software (sw) Software di sistema e file system Lezione 1b L esecuzione di programmi è lo scopo di un elaboratore I programmi sono algoritmi codificati in un particolare linguaggio di programmazione
DettagliUNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II
UNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Tesi di Laurea ANALISI E VALUTAZIONE DI MACCHINE VIRTUALI JAVA PER DISPOSITIVI MOBILI RELATORE
DettagliCX-One: l'integrazione di tutti i dispositivi indipendentemente dalla rete di comunicazione. Tecnologia FDT/DTM
CX-One: l'integrazione di tutti i dispositivi indipendentemente dalla rete di comunicazione Tecnologia FDT/DTM Perché fieldbus independent? Il costruttore di macchine può realizzare la sua macchina standardizzando
DettagliNON 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/
DettagliLezione 2 Introduzione a Java (2)
Lezione 2 Introduzione a Java (2) Vittorio Corso di Programmazione Distribuita Laurea di I livello in Informatica Università degli Studi di Salerno Organizzazione della lezione Una review sulle caratteristiche
DettagliLinguaggio Java. Robusto. Orientato agli oggetti. Protegge e gestisce dagli errori. Non permette costrutti pericolosi
Linguaggio Java Robusto Non permette costrutti pericolosi Eredità Multipla Gestione della Memoria Orientato agli oggetti Ogni cosa ha un tipo Ogni tipo è un oggetto (quasi) Protegge e gestisce dagli errori
DettagliOpen Database Connectivity (ODBC)
Open Database Connectivity (ODBC) Open Database Connectivity (ODBC), proposto dalla Microsoft nel 1991, fornisce un interfaccia applicativa standard che permette ad una generica applicazione di accedere
DettagliINFORMATICA NOVITÀ IL LINGUAGGIO JAVA. Massimiliano Bigatti. Guida alla programmazione di base IN ALLEGATO AL VOLUME
Massimiliano Bigatti IL LINGUAGGIO JAVA Guida alla programmazione di base 2005, pp. IV-300 ISBN 88-203-3439-9 Elementi di base del linguaggio Algoritmi Le classi Operare con gli archivi Contiene il codice
DettagliAmbienti di Sviluppo. Linguaggi compilati
Insieme omogeneo di strumenti adatti allo sviluppo di progetti software. Compilatori e/o interpreti; Editor; Ambienti di Sviluppo Strumenti di debug e/o test; 1 Linguaggi compilati Codice sorgente convertito
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa 07 Traduzione ed esecuzione di programmi Carla Limongelli Ottobre 2011 Traduzione ed esecuzione di programmi 1 Prerequisiti Architettura
DettagliUn architettura orientata ai servizi per la localizzazione di dispositivi mobili
Tesi di laurea Un architettura orientata ai servizi per la localizzazione di dispositivi mobili Anno Accademico 2004 /2005 Relatore Ch.mo Prof. Domenico Cotroneo Correlatore Ing. Massimo Ficco Candidato
DettagliCondividi in linea 3.1. Edizione 1
Condividi in linea 3.1 Edizione 1 2008 Nokia. Tutti i diritti sono riservati. Nokia, Nokia Connecting People e Nseries sono marchi o marchi registrati di Nokia Corporation. Nokia tune è una tonalità registrata
DettagliLe command line di Java
Le command line di Java Esercitazioni di Programmazione 2 Novella Brugnolli brugnoll@science.unitn.it Ambiente di lavoro Per compilare ed eseguire un programma Java abbiamo bisogno di: The JavaTM 2 Platform,
DettagliGuida di orientamento della documentazione di Business Objects BI Server
Guida di orientamento della documentazione di Business Objects BI Server Panoramica Panoramica è basato su tecnologia BusinessObjects Enterprise, pertanto per ulteriori informazioni sull'utilizzo di Business
DettagliMarco Faella Elementi di programmazione di interfacce Grafiche. Il pattern OBSERVER.
Marco Faella Elementi di programmazione di interfacce Grafiche. Il pattern OBSERVER. 9 Lezione n. Parole chiave: Java Corso di Laurea: Informatica Insegnamento: Linguaggi di Programmazione II Email Docente:
DettagliStruttura dei Sistemi Operativi
STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione
DettagliInformatica. Terzo anno Prof. A. Longheu
Informatica Terzo anno Prof. A. Longheu INTRODUZIONE AL LINGUAGGIO JAVA Originariamente, il progetto che avrebbe portato al linguaggio Java era noto come progetto Green Nome del progetto Sun con l obiettivo
DettagliProf. Pagani corrado JAVA
Prof. Pagani corrado JAVA NASCITA DI JAVA Java è stato creato, a partire da ricerche effettuate alla Stanford University agli inizi degli anni Novanta, da un gruppo di esperti sviluppatori capitanati da
DettagliMicrosoft Windows. Introduzione al Sistema Operativo e Utilizzo del Calcolatore. Il Calcolatore. Il Calcolatore. Sistemi Operativi.
Microsoft Windows Il Calcolatore Introduzione al Sistema Operativo e Utilizzo del Calcolatore Anni 50 2008 1 2 Il Calcolatore Un calcolatore (computer) è un esecutore universale di programmi/algoritmi
Dettagli