PROGETTO E SVILUPPO DI UN SOFTWARE IN JAVA PER LA TELEREFERTAZIONE: SEZIONE DOTTORE

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "PROGETTO E SVILUPPO DI UN SOFTWARE IN JAVA PER LA TELEREFERTAZIONE: SEZIONE DOTTORE"

Transcript

1 UNIVERSITÀ POLITECNICA DELLE MARCHE FACOLTÀ DI INGEGNERIA Corso di Laurea in Ingegneria Informatica e dell Automazione PROGETTO E SVILUPPO DI UN SOFTWARE IN JAVA PER LA TELEREFERTAZIONE: SEZIONE DOTTORE Laureando: Luca Torelli Relatore: Prof. Aldo Franco Dragoni Correlatore: Prof. Paolo Puliti Anno accademico 2007/2008

2 Indice Indice... I Elenco delle figure... III Elenco dei listati... V Elenco delle tabelle... V Capitolo 1: I software utilizzati JAVA Il linguaggio Java La piattaforma Java GWT (Google Web Toolkit) Le estensioni GWT RPC (Remote Procedure Call) ALTRI SOFTWARE Eclipse Tomcat MySQL... Capitolo 2: I portali per la telemedicina IL CONCETTO TELEMEDICINA Obiettivi della telemedicina MIRO ON RAILS : RUBY ON RAILS MIRO ON RAILS : IL PORTALE Aspetti corretti del portale MIRO ON RAILS : ORGANIZZAZIONE DATABASE... Capitolo 3: Il portale MedTel : sezione dottore INTRODUZIONE LOGIN E REGISTRAZIONE Effettuazione del login AREA RISERVATA DEL DOTTORE Pannello HOME Pannello CLINICAL PROBLEMS Toolbar menù ~ I ~

3 3.4 CARTELLA CLINICA DEL PAZIENTE Aspetti generali Profilo paziente Anamnesi Problemi clinici del paziente... Capitolo 4: Conclusioni ASPETTI GENERALI CONSIDERAZIONI SUL GWT CONSIDERAZIONI SUL PORTALE CONSIDERAZIONI SUL TIROCINIO BIBLIOGRAFIA ~ II ~

4 Elenco delle figure Figura 1.1: Logo Java... Figura 1.2: Mappa delle eccezioni... Figura 1.3: Logo GWT... Figura 1.4: Logo GWT-Ext... Figura 1.5: Logo Eclipse... Figura 1.6: Logo Tomcat... Figura 1.7: Logo MySQL... Figura 2.1: Delocalizzazione del servizio telematico... Figura 2.2: Logo Ruby On Rails... Figura 2.3: Portale Miro On Rails... Figura 2.4: Portale Miro On Rails : area amministrazione... Figura 2.5: Portale MedTel : area amministrazione (1 e 2 livello)... Figura 2.6: Portale Miro On Rails : vista cartella clinica (dottore)... Figura 2.7: Portale MedTel : vista cartella clinica... Figura 2.8: Portale Miro On Rails : esito dell utilizzo della libreria API... Figura 2.9: Portale Miro On Rails : esito ricerca paziente positivo... Figura 2.10: Portale Miro On Rails : esito ricerca paziente negativo... Figura 2.11: Portale MedTel : inserimento nuovo utente... Figura 2.12: Portale Miro On Rails : visualizzazione referti e messaggi dei problemi clinici... Figura 2.13: Portale MedTel : visualizzazione problemi clinici... Figura 2.14: Portale Miro On Rails : inserimento referti e messaggi... Figura 2.15: Portale Miro On Rails : cartella clinica... Figura 2.16: Portale MedTel : menù con albero asincrono... Figura 3.1: di Login... Figura 3.2: Segnalazione dati mancanti nella pagina di Login... Figura 3.3: Segnalazione dati errati durante il login... Figura 3.4: Area riservata del dottore... Figura 3.5: Pannello Home... Figura 3.6: Pannello Clinical Problems... Figura 3.7: Proprietà della tabella ~ III ~

5 Figura 3.8: Toolbar menù... Figura 3.9: Cartella clinica del paziente (vista dal dottore)... Figura 3.10: Struttura del menù organizzato ad albero... Figura 3.11: Pannello Patient Profile... Figura 3.12: Pannello Patient Clinical Problems... Figura 3.13: Finestra aperta cliccando sul bottone New Message... Figura 3.14: Finestra aperta cliccando sul bottone Add Report... Figura 3.15: Finestra aperta cliccando sul bottone View Messages... Figura 3.16: Finestra aperta cliccando sul bottone View Reports... Figura 3.17: Finestra aperta cliccando sul bottone View Details Clinical Problem ~ IV ~

6 Elenco dei listati Listato 1.1: Host del progetto MedTel... Listato 1.2: Modulo del MedTel... Listato 3.1: Metodo per il login, lato server (LoginRMImpl.java)... Listato 3.2: Codice per aprire la tabella dei problemi clinici nella cartella clinica, lato client (EventsPatients.java)... Listato 3.3: Codice per aggiornare il pannello Clinical Problems, lato client (ClinicalFolder.java)... Listato 3.4: Metodo per caricare la tabella, lato server (EventsPatientRSImpl.java)... Listato 3.5: Metodo per caricare i dati, lato server (ModRegistrationRSImpl.java)... Listato 3.6: Metodo che salva le modifiche, lato server (ModRegistrationRSImpl.java)... Listato 3.7: Metodo per effettuare il log-out, lato server (UserAreaRSImpl.java)... Listato 3.8: Metodo per caricare dati nel menù a tendina, lato server (UserAreaRSImpl.java)... Listato 3.9: Codici per costruire la cartella clinica, lato client (ClinicalFolder.java)... Listato 3.10: Codice per aprire il pannello con la riga pre-selezionata, lato client (ViewVisitsEvent.java)... Listato 3.11: Metodo per salvare nuovi report o messaggi, lato server (Message_ReportRSImpl.java)... Listato 3.12: Metodo per salvare vedere report o messaggi, lato server (View_msg_reportRSImpl.java)... Listato 3.13: Metodo per caricare dati nel pannello, lato server (DetailsVisitRSImpl.java)... Listato 3.14: Metodo per caricare dati di un esame, lato server (DetailsVisitRSImpl.java)... Listato 3.15: Metodo per caricare la lista dei file, lato server (DetailsVisitRSImpl.java) Elenco delle tabelle Tabella 2.1: Elenco tabelle del database del MiroOnRails ~ V ~

7 Capitolo 1: I software utilizzati CAPITOLO 1: I software utilizzati quali sono cosa sono strutture del software impiegate 1

8 Capitolo 1: I software utilizzati 1.1 JAVA Figura 1.1: Logo Java Java è un linguaggio di programmazione, inizialmente chiamato Oak orientato agli oggetti, derivato dal C++ (e quindi indirettamente dal C) e creato da James Gosling e altri ingegneri di Sun Microsystems. Il gruppo iniziò a lavorare nel 1991 ma il nome fu successivamente cambiato in Java a causa di un problema di copyright (il linguaggio di programmazione Oak esisteva già nel 1991). Java fu annunciato ufficialmente il 23 maggio 1995 a SunWorld. La piattaforma di programmazione Java è fondata sul linguaggio stesso, sulla Java Virtual Machine (JVM) e sulle API. Java è un marchio registrato di Sun Microsystems. Il 13 novembre 2006 la Sun Microsystems ha rilasciato la sua implementazione del compilatore Java e della macchina virtuale sotto licenza GPL. L'8 maggio 2007 SUN ha rilasciato anche le librerie (tranne alcune componenti non di sua proprietà) sotto licenza GPL rendendo Java un linguaggio di programmazione la cui implementazione di riferimento è libera. Java fu creato per soddisfare quattro scopi: 1. essere orientato agli oggetti. 2. essere indipendente dalla piattaforma. 3. contenere strumenti e librerie per il networking. 4. essere progettato per eseguire codice da sorgenti remote in modo sicuro. Per facilitare il passaggio a questo linguaggio per i programmatori old-fashioned, legati in particolare a linguaggi come il C, la sintassi di base (strutture di controllo, operatori e così via) è stata mantenuta pressoché identica. Nel complesso, Java è sia un linguaggio di programmazione sia una piattaforma. Quando ci si riferisce a Java come piattaforma, bisogna pensare a due aspetti interconnessi tra loro: l architettura di ciò che ha cambiato il modo di intendere il software come si è fatto per anni, e come poi tale idea sia stata riutilizzata e abbia aperto la strada al nuovo millennio anche per quanto riguarda la produzione di software. 2

9 Capitolo 1: I software utilizzati La piattaforma Java fu uno dei primi sistemi a fornire un largo supporto per l'esecuzione del codice da sorgenti remote. Un applet Java è un particolare tipo di applicazione che può essere avviata all'interno del browser dell'utente, eseguendo codice scaricato da un server web remoto. Questo codice viene eseguito in un'area (sandbox) altamente ristretta, che protegge l'utente dalla possibilità che il codice sia malevolo o abbia un comportamento non desiderato; chi pubblica il codice può applicare un certificato che usa per firmare digitalmente le applet dichiarandole "sicure", dando loro il permesso di uscire dall'area ristretta e accedere al file system e al network, presumibilmente con l'approvazione e sotto il controllo dell'utente. In realtà gli applet non hanno avuto molta fortuna. Infatti, presuppone che il client in cui essi vengono eseguiti abbia installata la JRE (deve eseguire il codice dell'applet). Hanno avuto fortuna le applicazioni che prevedono il cosiddetto thinclient, cioè un client "leggero" che non ha bisogno di particolari strumenti per eseguire il codice remoto (a volte è necessario solo il browser). Rispetto alla tradizione dei linguaggi a oggetti da cui deriva (e in particolare rispetto al suo diretto progenitore, il C++), Java ha introdotto una serie di notevoli novità rispetto all'estensione della sua semantica. Fra le più significative si possono citare probabilmente la possibilità di costruire GUI (interfacce grafiche) con strumenti standard e non proprietari utilizzando i package java.awt e javax.swing (per il C++ e altri linguaggi analoghi solitamente le GUI non fanno parte del linguaggio, ma sono delegate a librerie esterne), la possibilità di creare applicazioni multi-thread, ovvero che svolgono in modo concorrente molteplici attività, e il supporto per la riflessione, ovvero la capacità di un programma di agire sulla propria struttura e di utilizzare classi caricate dinamicamente dall'esterno. Fra gli argomenti che depongono spesso a favore di Java nella scelta del linguaggio di implementazione di un progetto software moderno, inoltre, si deve certamente contare la vastità delle librerie standard di cui il linguaggio è dotato, e che in particolare contribuiscono a renderlo altamente integrabile con le altre tecnologie. Alcuni esempi di funzionalità di libreria di Java sono: accesso ai database tramite JDBC (Java Database Connectivity) e ai DBMS con driver ODBC (Open Database Connectivity) tramite il bridge JDBC-ODBC. manipolazione documenti XML. dialogo con piattaforme CORBA (Common Object Request Broker Architecture). potenti strumenti per la programmazione lato server nel contesto Web. 3

10 Capitolo 1: I software utilizzati supporto nativo per gran parte dei protocolli della famiglia IP, vedi ad esempio il Socket Java. supporto per le applicazioni multimediali, streaming audio e video IL LINGUAGGIO JAVA Java è un linguaggio di alto livello con innumerevoli qualità: semplice: può essere programmato senza la necessità di lunghi corsi di addestramento, i concetti fondamentali della tecnologia Java vengono appresi rapidamente così che i programmatori possano essere produttivi sin dall inizio. Object Oriented: il linguaggio è progettato per essere orientato agli oggetti da cima a fondo. Non è possibile in Java adottare stili di programmazione che non siano quelli OO (object oriented). Gli oggetti sono caratterizzati da delle proprietà (definite variabili o campi di istanza o di esemplare) e di metodi applicabili sugli oggetti stessi, che possono ad esempio modificarne lo stato o estrarne informazioni. I programmi scritti in Java possono essere unicamente orientati agli oggetti, di conseguenza tutto il codice deve essere necessariamente incluso in una classe. Sebbene Java possa operare sia su oggetti che su tipi di dati primitivi, è considerato un linguaggio ad oggetti puro, ovvero nel quale gli oggetti sono le entità di base del linguaggio, anziché essere costruiti partendo da costrutti ad un inferiore livello di astrazione. familiare: la sintassi Java è molto simile a quella del C++ e questo lo rende un linguaggio familiare, questo significa che i programmatori C++ possono migrare facilmente al linguaggio Java ed essere produttivi rapidamente. robusto e sicuro: il linguaggio è progettato per creare software altamente affidabile: fornisce un esaustivo controllo a tempo di compilazione seguito da un secondo livello di controlli a tempo d esecuzione. Il modello della gestione della memoria è estremamente semplice ed è progettato per operare in ambienti distribuiti in quanto la sicurezza viene messa in risalto come caratteristica di rilievo. indipendente dalla piattaforma e portabile: il linguaggio è progettato per supportare applicazioni che verranno distribuite sulle più eterogenee piattaforme senza la necessità di dover riscrivere il programma per i vari ambienti (l'esecuzione di programmi scritti in Java deve avere un comportamento simile su hardware diverso). Si dovrebbe essere in grado di scrivere il programma una volta e farlo 4

11 Capitolo 1: I software utilizzati eseguire dovunque. Questo è possibile con la compilazione del codice di Java in un linguaggio intermedio bytecode, basato su istruzioni semplificate che ricalcano il linguaggio macchina. Il bytecode verrà quindi eseguito da una macchina virtuale. Inoltre, vengono fornite librerie standardizzate per permettere l'accesso alle caratteristiche della macchina (come grafica e networking) in modo unificato. Il linguaggio Java include anche il supporto per i programmi con multithread, necessario per molte applicazioni che usano la rete. Si illustrano ora le fasi che attraversa un programma Java per essere portabile e indipendente dalla piattaforma: 1. il programma viene prima scritto nel linguaggio di programmazione Java (nome_file.java); 2. la compilazione fornisce come output un file (nome_file.class) che non è ancora il file eseguibile come avviene negli altri linguaggi di programmazione, questo perché il file in uscita dal compilatore è il bytecode del programma. 3. è il bytecode la vera innovazione e ciò che permette l indipendenza dalla piattaforma in quanto è lo stesso per ogni macchina. L esecuzione vera e propria avviene interpretando il bytecode. Questa operazione viene fatta dall interprete: da bytecode a codice macchina e quindi eseguito. Introducendo questo passaggio in più è possibile mandare in esecuzione lo stesso programma su qualsiasi macchina, l unica cosa da cambiare è l interprete per quella specifica macchina. Le prime implementazioni del linguaggio usavano una virtual machine che interpretava il bytecode per ottenere la massima portabilità, definita Architecture Neutral. Questa soluzione si è però rivelata poco efficiente, in quanto i programmi interpretati erano molto lenti. Per questo, tutte le implementazioni recenti di macchine virtuali Java hanno incorporato un JIT compiler, cioè un compilatore interno, che al momento del lancio traduce al volo il programma bytecode Java in un normale programma nel linguaggio macchina del computer ospite. Inoltre, questa ricompilazione è dinamica, cioè la virtual machine analizza costantemente il modello di esecuzione del codice (profiling), e ottimizza ulteriormente le parti più frequentemente eseguite, mentre il programma è in esecuzione. Questi accorgimenti, a prezzo di una piccola attesa in fase di lancio del programma, permettono di avere delle applicazioni Java decisamente più veloci e leggere. Tuttavia, 5

12 Capitolo 1: I software utilizzati anche così Java resta un linguaggio meno efficiente dei linguaggi compilati come il C++, scontando il fatto di possedere degli strati di astrazione in più, e di implementare una serie di automatismi, come il garbage collector, che se da un lato fanno risparmiare tempo ed errori in fase di sviluppo dei programmi, dall'altro consumano memoria e tempo di CPU in fase di esecuzione del programma finito. COMPONENTI Ci sono varie componenti che caratterizzano il linguaggio Java: OGGETTO: è un entità software dotata di uno stato e di un insieme di metodi che permettono all utente di interagire con esso. Lo stato di un oggetto è l insieme dei valori degli attributi. E una variabile di istanza il cui tipo è definito dall utente (la classe). CLASSE: può essere concreta o astratta e ognuna definisce un tipo di dato. E anche chiamata tipo definito dall utente/programmatore. In ogni classe sono presenti dei dati (chiamate variabili di istanza ) e dei metodi, il cui ruolo è quello di manipolare tali dati. La classe viene utilizzata per istanziare gli oggetti che operano insieme per implementare il sistema. INTERFACCIA: contiene un gruppo di metodi public abstract ma anche dati public final static. L'utilizzo di una interfaccia in Java consente di trattare in modo omogeneo tutti gli oggetti che forniscono un dato insieme di servizi, a prescindere dalla loro implementazione (e quindi dalla loro particolare classe di appartenenza). Dal punto di vista sintattico, una interfaccia Java consiste principalmente di una lista di dichiarazioni di metodi che tutte le classi che implementano l'interfaccia devono fornire. Un interfaccia è tipicamente utilizzata al posto di una classe abstract quando non c è alcuna implementazione di default da ereditare (ovvero nessuna variabile d istanza e nessun metodo di default). Per usare un interfaccia una classe deve specificare che la implementa, mediante la parola implements, e deve definire ogni metodo dell interfaccia con il numero di argomenti e il tipo di ritorno specificati nella definizione dell interfaccia. Se la classe lascia un metodo dell interfaccia non definito, diventa una classe abstract e deve essere dichiarata abstract nella prima riga della sua definizione. Lasciando un metodo dell interfaccia non definito in una classe che la implementa, in fase di compilazione un errore comunica che la classe deve essere dichiarata abstract. 6

13 Capitolo 1: I software utilizzati Legato al concetto di classe e interfaccia c è quello dell ereditarietà: questa è definita come la caratteristica per la quale un oggetto di classe B (detta classe derivata) che deriva da A (detta classe madre) possiede tutte le caratteristiche della classe madre. Ciò significa affermare che l oggetto B è anche un (is a) oggetto di tipo A. Una cosa importante da tenere in considerazione è che in Java una classe può ereditare al massimo da una sola classe, mediante il termine extends ; in altri linguaggi, come il C++, questa limitazione non esiste. Per arginare questo problema, in Java è stato introdotto il concetto di interfaccia. Attraverso l utilizzo delle interfacce una classe può assumere diversi comportamenti: ciò che accade, in buona sostanza, con l ereditarietà multipla. Ecco, quindi, che una classe, assumendo i comportamenti di più interfacce, può essere vista come una particolare istanza di quelle interfacce. Tutte le classi Java hanno come classe madre (chiamata anche superclasse) all origine la classe Object. Questo significa che automaticamente quando scriviamo una classe essa deriva (senza doverlo specificare) da Object. Con questo espediente è possibile, quindi, parlare genericamente di un qualsiasi Object per riferirsi ad un oggetto di classe qualunque. Legata all ereditarietà ci sono due importanti caratteristiche del Java, l overloading e l overriding: il primo significa, in generale, dotare una classe di metodi aventi stesso nome ma con parametri differenti mentre il secondo significa semplicemente riscrivere il metodo coinvolto all interno della classe derivata, evitando di manomettere la classe base (interviene in questo caso il concetto di polimorfismo, ovvero l'attitudine di un oggetto a mostrare più implementazioni per una singola funzionalità). ECCEZIONI E possibile definire un eccezione come un situazione imprevista che il flusso di un applicazione può incontrare. È possibile gestire un eccezione in Java, imparando ad utilizzare cinque semplici parole chiave: try, catch, finally, throw e throws. Sarà anche possibile creare eccezioni personalizzate e decidere non solo come, ma anche in quale parte del codice gestirle, grazie ad un meccanismo di propagazione estremamente potente. Questo concetto è implementato nella libreria Java mediante la classe Exception e le sue sottoclassi. Un esempio di eccezione che potrebbe verificarsi all interno di un programma è quella relativo ad un divisione tra due variabili numeriche nella quale la variabile divisore ha valore 0. Come è noto infatti, tale operazione non è fattibile. È invece possibile definire un errore come una situazione imprevista non dipendente da un errore commesso dallo sviluppatore. A differenza delle eccezioni quindi, gli errori non 7

14 Capitolo 1: I software utilizzati sono gestibili. Questo concetto è implementato nella libreria Java mediante la classe Error e le sue sottoclassi. Un esempio di errore che potrebbe causare un programma è quello relativo alla terminazione delle risorse di memoria. Ovviamente, questa condizione non è gestibile. Nella libreria standard di Java, esiste una gerarchia di classi che mette in relazione, la classe Exception e la classe Error. Infatti, entrambe queste classi estendono la superclasse Throwable. Un ulteriore categorizzazione delle eccezioni, è data dalla divisione delle eccezioni in checked ed unchecked exception. Ci si riferisce alle RuntimeException (e le sue sottoclassi) come unchecked exception. Tutte le altre eccezioni (ovvero tutte quelle che non derivano da RuntimeException), vengono dette checked exception. Se si utilizza un metodo che lancia una checked exception senza gestirla da qualche parte, la compilazione non andrà a buon fine. Da qui il termine checked exception (in italiano eccezioni verificate ). Non bisogna fare confusione tra il concetto di errore (problema che un programma non può risolvere) e di eccezione (problema non critico gestibile): il fatto che sia la classe Exception sia la classe Error, estendano una classe che si chiama lanciabile (Throwable), è dovuto al meccanismo con cui la Java Virtual Machine reagisce quando si imbatte in una eccezione-errore. Infatti, se il nostro programma genera un eccezione durante il runtime, la JVM istanzia un oggetto dalla classe eccezione relativa al problema, e lancia l eccezione appena istanziata (tramite la parola chiave throw). Se il nostro codice non cattura (tramite la parola chiave catch) l eccezione, il gestore automatico della JVM interromperà il programma generando in output informazioni dettagliate su ciò che è accaduto. 8

15 Capitolo 1: I software utilizzati Figura 1.2: Mappa delle Eccezioni LA PIATTAFORMA JAVA La piattaforma Java è una piattaforma solo software che gira in cima ad una piattaforma hardware di base che può essere un computer, una tv, un telefono cellulare, una smart card, ecc.. La piattaforma Java è composta da due blocchi: la Java Virtual Machine (JVM) e la Java Application Program Interface (API). La JVM è la base della piattaforma Java, mentre la Java API è una collezione di componenti software pronti all uso per lo svolgimento dei più disparati compiti. JAVA VIRTUAL MACHINE La JVM consiste di: class loader. un class verifier. l interprete Java. Il class loader carica il bytecode, sia dal programma Java (nome_file.class) che dalla Java API (a seconda degli import fatti nel programma), per l esecuzione da parte dell interprete Java. Subito dopo che la classe è caricata il class verifier controlla che il class file è un formato bytecode valido, che non superi i limiti superiori o inferiori dello stack; assicura 9

16 Capitolo 1: I software utilizzati che il bytecode non esegue aritmetica dei puntatori il che potrebbe potenzialmente portare ad una violazione di memoria. Se il class passa tutti questi controlli può essere eseguito dall interprete. L interprete può essere di varie forme: può essere un modulo software che interpreta il bytecode in una solo volta; potrebbe essere un compilatore JIT (Just In Time) che traduce il bytecode in codice nativo della macchina ospitante. L uso di un compilatore JIT aumenta le performance quasi al pari di una compilazione direttamente in codice nativo, è una soluzione molto ottimizzata che trova un ottimo compromesso tra velocità d esecuzione e portabilità del codice. La spettacolarità della JVM è che l interprete potrebbe essere anche implementato a livello hardware così che da eseguire il bytecode come codice nativo. Certamente a livello di prestazioni questa è la scelta migliore, ma come il lettore può facilmente dedurre la portabilità sarebbe di nuovo confinata a quelle macchine che implementino Java a livello hardware, anche se si continuerebbero ad avere tutti i vantaggi del linguaggio Java che abbiamo precedentemente analizzato. La piattaforma raggiunge performance superiori adottando uno schema nel quale l interprete può essere eseguito alla massima velocità senza la necessita di effettuare controlli a runtime, questo grazie, come visto antecedentemente, al class verifier che esegue tutti i controlli. La piattaforma è anche dotata di un Garbage Collector nel quale la memoria non più utilizzata da alcun oggetto viene rilasciata automaticamente al sistema. Il Garbage Collector viene eseguito in un thread a bassa priorità e grazie a questo la memoria con alta probabilità è sempre disponibile quando richiesta. JAVA API Data la vastità immensa di API circolanti si possono scrivere applicazioni di qualsiasi genere. A tal proposito Java è disponibile in tre scatole a seconda dell uso che se ne vuole fare. la J2SE (Java 2 Standard Edition), il nucleo di Java, che permette di scrivere un gran numero di applicazioni: applicazioni client e server di rete; applicazioni per accesso a database, applicazioni per il calcolo scientifico; ecc.. la J2EE (Java 2 Enterprise Edition) che permette di scrivere applicazioni distribuite. 10

17 Capitolo 1: I software utilizzati la J2ME (Java 2 Micro Edition) che permette di scrivere applicazioni per i terminali mobili e Infine per tutti quei dispositivi che stanno invadendo la nostra vita con poche risorse computazionali (come i telefoni cellulari). 11

18 Capitolo 1: I software utilizzati 1.2 GWT (Google Web Toolkit) Il Google Web Toolkit (GWT) è un framework di sviluppo per applicazioni AJAX rilasciato sotto licenza open source Apache 2.0. Il suo obiettivo è permettere allo sviluppatore di lavorare ad un livello di astrazione più alto rispetto a quello nativo di AJAX evitando di sprecare risorse scrivendo linee di codice HTML e Javascript da testare sui diversi browser. Attraverso il GWT è possibile sviluppare e fare il debug di applicazioni AJAX utilizzando semplicemente Java e gli usuali IDE (Eclipse, IntelliJ, NetBeans). Dal momento in cui si vuole passare al sistema di produzione sarà necessario invocare il compilatore GWT che trasformerà l'applicazione stessa in codice HTML e Javascript browser-compabitile. Il ciclo di sviluppo GWT è quindi il seguente: 1. si sviluppa e si fa il debug della propria applicazione Java attraverso i vari tool disponibili sul mercato utilizzando le diverse librerie GWT. 2. si utilizza il compilatore GWT da Java a Javascript per creare un insieme di file HTML e Javascript che possono essere piazzati in qualsiasi web server. 3. si esegue un test della piattaforma sul/sui browsers che la stessa dovrebbe supportare. GWT offre allo sviluppatore un insieme di componenti di interfaccia grafica che, assemblati, danno origine all'applicazione; tali componenti sono denominati Widget. Come in ogni framework per la gestione di interfaccia grafica esistono dei Panel che contengono i widget necessari per lavorare. La tecnologia Java offre diversi vantaggi nello sviluppo rispetto a Javascript poiché: Esiste un insieme molto ricco di tools di sviluppo (Eclipse, IntelliJ, JProfiler, JUnit). Figura 1.3: Logo GWT Java verifica staticamente i tipi di dato riducendo gli errori a run-time. Gli errori Javascript vengono evitati poiché il compilatore Java-to-Javascript di GWT conosce come non commetterli. 12

19 Capitolo 1: I software utilizzati Java è più vicino ai tool di progettazione Object Oriented rispetto a Javascript e l'applicazione sarà più comprensibile e mantenibile. LA MODALITA HOSTED E possibile spendere la maggior parte del tempo nello sviluppo dei siti lavorando in hosted mode: ciò significa interagire con l applicazione GWT senza che questa sia stata tradotta in Javascript. Ogni qualvolta si modifica, si manda in esecuzione e si esegue il debug delle applicazioni da una ambiente di sviluppo integrato Java (IDE), si lavora in hosted mode. Quando si lavora in questo modo la JVM esegue il codice dell applicazione come bytecode Java compilato permettendo, di gran lunga, uno sviluppo più veloce dell applicazione stessa. LA MODALITA WEB Un aspetto particolare che caratterizza il GWT è il suo impiego in modalità Web (ovvero la possibilità di accedere ad un applicazione da un normale browser): quando un applicazione viene lanciata in questa modalità, gira completamente in Javascript e non necessita di nessun plug-in per i vari browser o della JVM. LA PAGINA HOST Ogni pagina HTML può includere un codice creato con il GWT (pagina host). La struttura è stata progettata per rendere più facile l aggiunta di funzionalità del GWT ad applicazioni web già esistenti con solo piccole modifiche. Nel progetto MedTel la pagina host è la seguente: <html> <head> <!-- --> <!-- Any title is fine --> <!-- --> <title>starter Miro</title> <!-- --> <!-- The module reference below is the link --> <!-- between html and your Web Toolkit module --> <!-- --> 13

20 Capitolo 1: I software utilizzati <metaname='gwt:module'content='com.uni.mirongwt.starter'/> <!-- --> <!-- Link CSS file --> <!-- --> <link type="text/css" rel='stylesheet' href='starter.css'/> <link rel="stylesheet" type="text/css" href="js/ext/resources/css/extall.css" /> <link rel="stylesheet" type="text/css" href="js/ext/resources/css/xthemegray.css" /> <script type="text/javascript" src="js/ext/adapter/yui/yui-utilities.js"> </script> <script type="text/javascript" src="js/ext/adapter/yui/ext-yui-adapter.js"> </script> <script type="text/javascript" src="js/ext/ext-all.js"> </script> </head> <!-- --> <!-- The body can have arbitrary html, or --> <!-- we leave the body empty because we want --> <!-- to create a completely dynamic ui --> <!-- --> <body> <!-- --> <!-- This script is required bootstrap stuff. --> <!-- You can put it in the HEAD, but startup --> <!-- is slightly faster if you include it here. --> <!-- --> <script language="javascript" src="com.uni.mirongwt.starter.nocache.js"> </script> 14

FileMaker Server 12. Guida introduttiva

FileMaker Server 12. Guida introduttiva FileMaker Server 12 Guida introduttiva 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker,

Dettagli

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE Oracle Business Intelligence Standard Edition One è una soluzione BI completa, integrata destinata alle piccole e medie imprese.oracle

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

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 Sistemi Web-Based - Terminologia Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 CLIENT: il client è il programma che richiede un servizio a un computer collegato in

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

Guida ai Servizi Internet per il Referente Aziendale

Guida ai Servizi Internet per il Referente Aziendale Guida ai Servizi Internet per il Referente Aziendale Indice Indice Introduzione...3 Guida al primo accesso...3 Accessi successivi...5 Amministrazione dei servizi avanzati (VAS)...6 Attivazione dei VAS...7

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

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

Le Reti Informatiche

Le Reti Informatiche Le Reti Informatiche modulo 10 Prof. Salvatore Rosta www.byteman.it s.rosta@byteman.it 1 Nomenclatura: 1 La rappresentazione di uno schema richiede una serie di abbreviazioni per i vari componenti. Seguiremo

Dettagli

Posta Elettronica. Claudio Cardinali claudio@csolution.it

Posta Elettronica. Claudio Cardinali claudio@csolution.it Posta Elettronica Claudio Cardinali claudio@csolution.it Posta Elettronica: WebMail Una Webmail è un'applicazione web che permette di gestire uno o più account di posta elettronica attraverso un Browser.

Dettagli

FileMaker Server 13. Guida introduttiva

FileMaker Server 13. Guida introduttiva FileMaker Server 13 Guida introduttiva 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker e Bento sono marchi

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello della Web Application 5 3 Struttura della web Application 6 4 Casi di utilizzo della Web

Dettagli

Rational Asset Manager, versione 7.1

Rational Asset Manager, versione 7.1 Rational Asset Manager, versione 7.1 Versione 7.1 Guida all installazione Rational Asset Manager, versione 7.1 Versione 7.1 Guida all installazione Note Prima di utilizzare queste informazioni e il prodotto

Dettagli

HORIZON SQL CONFIGURAZIONE DI RETE

HORIZON SQL CONFIGURAZIONE DI RETE 1-1/9 HORIZON SQL CONFIGURAZIONE DI RETE 1 CARATTERISTICHE DI UN DATABASE SQL...1-2 Considerazioni generali... 1-2 Concetto di Server... 1-2 Concetto di Client... 1-2 Concetto di database SQL... 1-2 Vantaggi...

Dettagli

Informatica per la comunicazione" - lezione 9 -

Informatica per la comunicazione - lezione 9 - Informatica per la comunicazione" - lezione 9 - Protocolli di livello intermedio:" TCP/IP" IP: Internet Protocol" E il protocollo che viene seguito per trasmettere un pacchetto da un host a un altro, in

Dettagli

FORM Il sistema informativo di gestione della modulistica elettronica.

FORM Il sistema informativo di gestione della modulistica elettronica. Studio FORM FORM Il sistema informativo di gestione della modulistica elettronica. We believe in what we create This is FORM power La soluzione FORM permette di realizzare qualsiasi documento in formato

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

FileMaker Server 13. Pubblicazione Web personalizzata con PHP

FileMaker Server 13. Pubblicazione Web personalizzata con PHP FileMaker Server 13 Pubblicazione Web personalizzata con PHP 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker

Dettagli

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore)

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Autore: Matteo Veroni Email: matver87@gmail.com Sito web: matteoveroni@altervista.org Fonti consultate: http://openmeetings.apache.org/

Dettagli

Applicazione: Share - Sistema per la gestione strutturata di documenti

Applicazione: Share - Sistema per la gestione strutturata di documenti Riusabilità del software - Catalogo delle applicazioni: Gestione Documentale Applicazione: Share - Sistema per la gestione strutturata di documenti Amministrazione: Regione Piemonte - Direzione Innovazione,

Dettagli

BPEL: Business Process Execution Language

BPEL: Business Process Execution Language Ingegneria dei processi aziendali BPEL: Business Process Execution Language Ghilardi Dario 753708 Manenti Andrea 755454 Docente: Prof. Ernesto Damiani BPEL - definizione Business Process Execution Language

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica A.A. 2007-08 CORSO DI INGEGNERIA DEL SOFTWARE Prof. Giulio Destri http://www.areasp.com (C) 2007 AreaSP for

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

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli

InitZero s.r.l. Via P. Calamandrei, 24-52100 Arezzo email: info@initzero.it

InitZero s.r.l. Via P. Calamandrei, 24-52100 Arezzo email: info@initzero.it izticket Il programma izticket permette la gestione delle chiamate di intervento tecnico. E un applicazione web, basata su un potente application server java, testata con i più diffusi browser (quali Firefox,

Dettagli

PROPOSTE SISTEMA DI CITIZEN RELATIONSHIP MANAGEMENT (CRM) REGIONALE

PROPOSTE SISTEMA DI CITIZEN RELATIONSHIP MANAGEMENT (CRM) REGIONALE PROPOSTE SISTEMA DI CITIZEN RELATIONSHIP MANAGEMENT (CRM) REGIONALE Versione 1.0 Via della Fisica 18/C Tel. 0971 476311 Fax 0971 476333 85100 POTENZA Via Castiglione,4 Tel. 051 7459619 Fax 051 7459619

Dettagli

Lezione n 1! Introduzione"

Lezione n 1! Introduzione Lezione n 1! Introduzione" Corso sui linguaggi del web" Fondamentali del web" Fondamentali di una gestione FTP" Nomenclatura di base del linguaggio del web" Come funziona la rete internet?" Connessione"

Dettagli

GESTIRE LA BIBLIOGRAFIA

GESTIRE LA BIBLIOGRAFIA GESTIRE LA BIBLIOGRAFIA STRUMENTI DI GESTIONE BIBLIOGRAFICA I software di gestione bibliografica permettono di raccogliere, catalogare e organizzare diverse tipologie di materiali, prendere appunti, formattare

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

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi.

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet: la rete delle reti Alberto Ferrari Connessioni

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

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

F O R M A T O E U R O P E O

F O R M A T O E U R O P E O F O R M A T O E U R O P E O P E R I L C U R R I C U L U M V I T A E INFORMAZIONI PERSONALI Nome Indirizzo Laura Bacci, PMP Via Tezze, 36 46100 MANTOVA Telefono (+39) 348 6947997 Fax (+39) 0376 1810801

Dettagli

Il Concetto di Processo

Il Concetto di Processo Processi e Thread Il Concetto di Processo Il processo è un programma in esecuzione. È l unità di esecuzione all interno del S.O. Solitamente, l esecuzione di un processo è sequenziale (le istruzioni vengono

Dettagli

GESTIONE DELLA E-MAIL

GESTIONE DELLA E-MAIL GESTIONE DELLA E-MAIL Esistono due metodologie, completamente diverse tra loro, in grado di consentire la gestione di più caselle di Posta Elettronica: 1. tramite un'interfaccia Web Mail; 2. tramite alcuni

Dettagli

Le funzionalità di un DBMS

Le funzionalità di un DBMS Le funzionalità di un DBMS Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DBMS.pdf Sistemi Informativi L-A DBMS: principali funzionalità Le

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

Installazione di GFI Network Server Monitor

Installazione di GFI Network Server Monitor Installazione di GFI Network Server Monitor Requisiti di sistema I computer che eseguono GFI Network Server Monitor richiedono: i sistemi operativi Windows 2000 (SP4 o superiore), 2003 o XP Pro Windows

Dettagli

Codici sorgenti di esempio per l'invio di email da pagine WEB per gli spazi hosting ospitati presso ITESYS SRL.

Codici sorgenti di esempio per l'invio di email da pagine WEB per gli spazi hosting ospitati presso ITESYS SRL. Data: 8 Ottobre 2013 Release: 1.0-15 Feb 2013 - Release: 2.0 - Aggiunta procedura per inviare email da Windows con php Release: 2.1-20 Mar 2013 Release: 2.2-8 Ottobre 2013 - Aggiunta procedura per inviare

Dettagli

TeamViewer 7 Manuale Controllo remoto

TeamViewer 7 Manuale Controllo remoto TeamViewer 7 Manuale Controllo remoto TeamViewer GmbH Kuhnbergstraße 16 D-73037 Göppingen teamviewer.com Indice 1 Informazioni su TeamViewer... 5 1.1 Informazioni sul software... 5 1.2 Informazioni sul

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

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

CONFIGURAZIONE DEI SERVIZI (seconda parte)

CONFIGURAZIONE DEI SERVIZI (seconda parte) Corso ForTIC C2 LEZIONE n. 10 CONFIGURAZIONE DEI SERVIZI (seconda parte) WEB SERVER PROXY FIREWALL Strumenti di controllo della rete I contenuti di questo documento, salvo diversa indicazione, sono rilasciati

Dettagli

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone Paragrafo 1 Prerequisiti Definizione di applicazione server Essa è un servizio che è in esecuzione su un server 1 al fine di essere disponibile per tutti gli host che lo richiedono. Esempi sono: il servizio

Dettagli

Software 2. Classificazione del software. Software di sistema

Software 2. Classificazione del software. Software di sistema Software 2 Insieme di istruzioni e programmi che consentono il funzionamento del computer Il software indica all hardware quali sono le operazioni da eseguire per svolgere determinati compiti Valore spesso

Dettagli

Plesk Automation. Parallels. Domande tecniche più frequenti

Plesk Automation. Parallels. Domande tecniche più frequenti Parallels Plesk Automation Primo trimestre, 2013 Domande tecniche più frequenti Questo documento ha come scopo quello di rispondere alle domande tecniche che possono sorgere quando si installa e si utilizza

Dettagli

DynDevice ECM. La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali

DynDevice ECM. La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali DynDevice ECM La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali Presentazione DynDevice ECM Cos è DynDevice ICMS Le soluzioni di DynDevice

Dettagli

UML Component and Deployment diagram

UML Component and Deployment diagram UML Component and Deployment diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania I diagrammi UML Classificazione

Dettagli

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software.

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software. Generalità Definizione Un firewall è un sistema che protegge i computer connessi in rete da attacchi intenzionali mirati a compromettere il funzionamento del sistema, alterare i dati ivi memorizzati, accedere

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

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it il server? virtualizzalo!! Se ti stai domandando: ma cosa stanno dicendo? ancora non sai che la virtualizzazione è una tecnologia software, oggi ormai consolidata, che sta progressivamente modificando

Dettagli

BRM. Tutte le soluzioni. per la gestione delle informazioni aziendali. BusinessRelationshipManagement

BRM. Tutte le soluzioni. per la gestione delle informazioni aziendali. BusinessRelationshipManagement BRM BusinessRelationshipManagement Tutte le soluzioni per la gestione delle informazioni aziendali - Business Intelligence - Office Automation - Sistemi C.R.M. I benefici di BRM Garantisce la sicurezza

Dettagli

Guida all'installazione di SLPct. Manuale utente. Evoluzioni Software www.evoluzionisoftware.it info@evoluzionisoftware.it

Guida all'installazione di SLPct. Manuale utente. Evoluzioni Software www.evoluzionisoftware.it info@evoluzionisoftware.it Guida all'installazione di SLPct Manuale utente Evoluzioni Software www.evoluzionisoftware.it info@evoluzionisoftware.it Premessa Il redattore di atti giuridici esterno SLpct è stato implementato da Regione

Dettagli

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata Giampiero Carboni Davide Travaglia David Board Rev 5058-CO900C Interfaccia operatore a livello di sito FactoryTalk

Dettagli

Parallels Plesk Panel

Parallels Plesk Panel Parallels Plesk Panel Notifica sul Copyright ISBN: N/A Parallels 660 SW 39 th Street Suite 205 Renton, Washington 98057 USA Telefono: +1 (425) 282 6400 Fax: +1 (425) 282 6444 Copyright 1999-2009, Parallels,

Dettagli

FileMaker Server 13. Guida di FileMaker Server

FileMaker Server 13. Guida di FileMaker Server FileMaker Server 13 Guida di FileMaker Server 2010-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker e Bento sono

Dettagli

TeamViewer 8 Manuale Controllo remoto

TeamViewer 8 Manuale Controllo remoto TeamViewer 8 Manuale Controllo remoto Rev 8.0-12/2012 TeamViewer GmbH Kuhnbergstraße 16 D-73037 Göppingen www.teamviewer.com Indice 1 Informazioni su TeamViewer... 6 1.1 Informazioni sul software... 6

Dettagli

L evoluzione del software per l azienda moderna. Gestirsi / Capirsi / Migliorarsi

L evoluzione del software per l azienda moderna. Gestirsi / Capirsi / Migliorarsi IL GESTIONALE DEL FUTURO L evoluzione del software per l azienda moderna Gestirsi / Capirsi / Migliorarsi IL MERCATO ITALIANO L Italia è rappresentata da un numero elevato di piccole e medie aziende che

Dettagli

Client di Posta Elettronica PECMailer

Client di Posta Elettronica PECMailer Client di Posta Elettronica PECMailer PECMailer è un semplice ma completo client di posta elettronica, ovvero un programma che consente di gestire la composizione, la trasmissione, la ricezione e l'organizzazione

Dettagli

Guida all utilizzo del dispositivo USB

Guida all utilizzo del dispositivo USB Guida all utilizzo del dispositivo USB 30/04/2013 Sommario - Limitazioni di responsabilità e uso del manuale... 3 1. Glossario... 3 2. Guida all utilizzo del dispositivo USB... 4 2.1 Funzionamento del

Dettagli

CA Process Automation

CA Process Automation CA Process Automation Glossario Release 04.2.00 La presente documentazione, che include il sistema di guida in linea integrato e materiale distribuibile elettronicamente (d'ora in avanti indicata come

Dettagli

Inizializzazione degli Host. BOOTP e DHCP

Inizializzazione degli Host. BOOTP e DHCP BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un

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

Ing. Andrea Saccà. Stato civile: Celibe Nazionalità: Italiana Data di nascita: 9 Ottobre 1978 Luogo di nascita: Roma Residenza: Roma

Ing. Andrea Saccà. Stato civile: Celibe Nazionalità: Italiana Data di nascita: 9 Ottobre 1978 Luogo di nascita: Roma Residenza: Roma Indirizzo: Via dell'automobilismo, 109 00142 Roma (RM) Sito Web : http://www.andreasacca.com Telefono: 3776855061 Email : sacca.andrea@gmail.com PEC : andrea.sacca@pec.ording.roma.it Ing. Andrea Saccà

Dettagli

La suite Dental Trey che semplifica il tuo mondo.

La suite Dental Trey che semplifica il tuo mondo. La suite Dental Trey che semplifica il tuo mondo. impostazioni di sistema postazione clinica studio privato sterilizzazione magazzino segreteria amministrazione sala di attesa caratteristiche UNO tiene

Dettagli

MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale

MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale InterWrite SchoolBoard è un software per lavagna elettronica di facile utilizzo. Può essere adoperata anche da studenti diversamente

Dettagli

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it FIRESHOP.NET Gestione Utility & Configurazioni Rev. 2014.3.1 www.firesoft.it Sommario SOMMARIO Introduzione... 4 Impostare i dati della propria azienda... 5 Aggiornare il programma... 6 Controllare l integrità

Dettagli

How to Develop Accessible Linux Applications

How to Develop Accessible Linux Applications How to Develop Accessible Linux Applications Sharon Snider Copyright 2002 IBM Corporation v1.1, 2002-05-03 Diario delle Revisioni Revisione v1.1 2002-05-03 Revisionato da: sds Convertito in DocBook XML

Dettagli

Acronis Backup & Recovery 10 Advanced Server Virtual Edition. Guida introduttiva

Acronis Backup & Recovery 10 Advanced Server Virtual Edition. Guida introduttiva Acronis Backup & Recovery 10 Advanced Server Virtual Edition Guida introduttiva Questo documento descrive come installare e iniziare a utilizzare Acronis Backup & Recovery 10 Advanced Server Virtual Edition.

Dettagli

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it SMS API Documentazione Tecnica YouSMS SOAP API YouSMS Evet Limited 2015 http://www.yousms.it INDICE DEI CONTENUTI Introduzione... 2 Autenticazione & Sicurezza... 2 Username e Password... 2 Connessione

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

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

Gestore Comunicazioni Obbligatorie. Progetto SINTESI. Comunicazioni Obbligatorie. Modulo Applicativo COB. - Versione Giugno 2013 -

Gestore Comunicazioni Obbligatorie. Progetto SINTESI. Comunicazioni Obbligatorie. Modulo Applicativo COB. - Versione Giugno 2013 - Progetto SINTESI Comunicazioni Obbligatorie Modulo Applicativo COB - Versione Giugno 2013-1 Versione Giugno 2013 INDICE 1 Introduzione 3 1.1 Generalità 3 1.2 Descrizione e struttura del manuale 3 1.3 Requisiti

Dettagli

Windows Compatibilità

Windows Compatibilità Che novità? Windows Compatibilità CODESOFT 2014 é compatibile con Windows 8.1 e Windows Server 2012 R2 CODESOFT 2014 Compatibilità sistemi operativi: Windows 8 / Windows 8.1 Windows Server 2012 / Windows

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

Installazione ed attivazione della "SUITE OFFIS" versione SERVER

Installazione ed attivazione della SUITE OFFIS versione SERVER Installazione ed attivazione della "SUITE OFFIS" versione SERVER Premessa La versione server di OFFIS può essere installata e utilizzata indifferentemente da PC/Win o Mac/Osx e consente l'accesso contemporaneo

Dettagli

RedDot Content Management Server Content Management Server Non sottovalutate il potenziale della comunicazione online: usatela! RedDot CMS vi permette di... Implementare, gestire ed estendere progetti

Dettagli

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci Manuale di Remote Desktop Connection Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci 2 Indice 1 Introduzione 5 2 Il protocollo Remote Frame Buffer 6 3 Uso di Remote Desktop

Dettagli

Procedura per il ripristino dei certificati del dispositivo USB

Procedura per il ripristino dei certificati del dispositivo USB Procedura per il ripristino dei certificati del dispositivo USB 30/04/2013 Sommario - Limitazioni di responsabilità e uso del manuale... 3 1 Glossario... 3 2 Presentazione... 4 3 Quando procedere al ripristino

Dettagli

Guida alla scansione su FTP

Guida alla scansione su FTP Guida alla scansione su FTP Per ottenere informazioni di base sulla rete e sulle funzionalità di rete avanzate della macchina Brother, consultare la uu Guida dell'utente in rete. Per ottenere informazioni

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

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

MANUALE GESTIONE DELLE UTENZE - PORTALE ARGO (VERS. 2.1.0)

MANUALE GESTIONE DELLE UTENZE - PORTALE ARGO (VERS. 2.1.0) Indice generale PREMESSA... 2 ACCESSO... 2 GESTIONE DELLE UTENZE... 3 DATI DELLA SCUOLA... 6 UTENTI...7 LISTA UTENTI... 8 CREA NUOVO UTENTE...8 ABILITAZIONI UTENTE...9 ORARI D'ACCESSO... 11 DETTAGLIO UTENTE...

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

Il World Wide Web: nozioni introduttive

Il World Wide Web: nozioni introduttive Il World Wide Web: nozioni introduttive Dott. Nicole NOVIELLI novielli@di.uniba.it http://www.di.uniba.it/intint/people/nicole.html Cos è Internet! Acronimo di "interconnected networks" ("reti interconnesse")!

Dettagli

Dal punto di vista organizzativo sono possibili due soluzioni per il sistema di rete.

Dal punto di vista organizzativo sono possibili due soluzioni per il sistema di rete. Premessa. La traccia di questo anno integra richieste che possono essere ricondotte a due tipi di prove, informatica sistemi, senza lasciare spazio ad opzioni facoltative. Alcuni quesiti vanno oltre le

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

SISSI IN RETE. Quick Reference guide guida di riferimento rapido

SISSI IN RETE. Quick Reference guide guida di riferimento rapido SISSI IN RETE Quick Reference guide guida di riferimento rapido Indice generale Sissi in rete...3 Introduzione...3 Architettura Software...3 Installazione di SISSI in rete...3 Utilizzo di SISSI in Rete...4

Dettagli

CHIAVETTA INTERNET ONDA MT503HSA

CHIAVETTA INTERNET ONDA MT503HSA CHIAVETTA INTERNET ONDA MT503HSA Manuale Utente Linux Debian, Fedora, Ubuntu www.ondacommunication.com Chiavet ta Internet MT503HSA Guida rapida sistema operativo LINUX V 1.1 33080, Roveredo in Piano (PN)

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

explora consulting s.r.l. Via Case Rosse, 35-84131 SALERNO - tel 089 848073 fax 089 384582 www.exploraconsulting.it info@exploraconsulting.

explora consulting s.r.l. Via Case Rosse, 35-84131 SALERNO - tel 089 848073 fax 089 384582 www.exploraconsulting.it info@exploraconsulting. explora consulting s.r.l. Via Case Rosse, 35-84131 SALERNO - tel 089 848073 fax 089 384582 www.exploraconsulting.it info@exploraconsulting.it Procedura di gestione per Laboratori di Analisi Cliniche Pag.

Dettagli

Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci a settimana

Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci a settimana Storie di successo Microsoft per le Imprese Scenario: Software e Development Settore: Servizi In collaborazione con Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci

Dettagli

Come installare e configurare il software FileZilla

Come installare e configurare il software FileZilla Come utilizzare FileZilla per accedere ad un server FTP Con questo tutorial verrà mostrato come installare, configurare il software e accedere ad un server FTP, come ad esempio quello dedicato ai siti

Dettagli

TeamViewer 8 Manuale Meeting

TeamViewer 8 Manuale Meeting TeamViewer 8 Manuale Meeting Rev 8.0-12/2012 TeamViewer GmbH Kuhnbergstraße 16 D-73037 Göppingen www.teamviewer.com Indice 1 Informazioni su TeamViewer... 5 1.1 Informazioni sul software... 5 1.2 Informazioni

Dettagli

Dipartimento di Sistemi e Informatica Università degli Studi di Firenze. Dev-C++ Ing. Michele Banci 27/03/2007 1

Dipartimento di Sistemi e Informatica Università degli Studi di Firenze. Dev-C++ Ing. Michele Banci 27/03/2007 1 Dipartimento di Sistemi e Informatica Università degli Studi di Firenze Dev-C++ Ing. Michele Banci 27/03/2007 1 Utilizzare Dev-C++ Tutti i programmi che seranno realizzati richiedono progetti separati

Dettagli

Mobile Messaging SMS. Copyright 2015 VOLA S.p.A.

Mobile Messaging SMS. Copyright 2015 VOLA S.p.A. Mobile Messaging SMS Copyright 2015 VOLA S.p.A. INDICE Mobile Messaging SMS. 2 SMS e sistemi aziendali.. 2 Creare campagne di mobile marketing con i servizi Vola SMS.. 3 VOLASMS per inviare SMS da web..

Dettagli

MASTER UNIVERSITARI CORSI di PERFEZIONAMENTO CORSI di FORMAZIONE AVANZATA

MASTER UNIVERSITARI CORSI di PERFEZIONAMENTO CORSI di FORMAZIONE AVANZATA Allegato 1 al bando di gara SCUOLA TELECOMUNICAZIONI FF.AA. CHIAVARI REQUISITO TECNICO OPERATIVO MASTER UNIVERSITARI CORSI di PERFEZIONAMENTO CORSI di FORMAZIONE AVANZATA MASTER DI 2 LIVELLO 1. DIFESA

Dettagli

Attiva la APP di GoToMeeting. Clicca su ATTIVA APP

Attiva la APP di GoToMeeting. Clicca su ATTIVA APP Questo breve manuale ha lo scopo di mostrare la procedura con la quale interfacciare la piattaforma di web conferencing GoToMeeting e la tua piattaforma E-Learning Docebo. Questo interfacciamento consente

Dettagli