Programmazione Orientata agli Oggetti in Linguaggio Java



Похожие документы
Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java

Sommario. Introduzione Architettura Client-Server. Server Web Browser Web. Architettura a Due Livelli Architettura a Tre Livelli

Programmazione Orientata agli Oggetti in Linguaggio Java

Tecnologie di Sviluppo per il Web

Capitolo 4 Pianificazione e Sviluppo di Web Part

DevC++ vers Manuale d uso

SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l.

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)

Installazione e Configurazione della strumentazione necessaria. Antonio Gallo info@laboratoriolibero.com

Corso di Laurea in Matematica. Seminario C/C++ Lorenzo Dusty Costa. Università degli Studi di Milano Dipartimento di Matematica

Creare un sito Multilingua con Joomla 1.6

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino

Cimini Simonelli - Testa

Eclipse e Subversion

Il web server Apache Lezione n. 3. Introduzione

Installazione del Software. per lo Sviluppo di Applicazioni Java

Ambienti di Sviluppo

Aggiornamento del software

Licenza per sito Manuale dell amministratore

IBM SPSS Statistics per Linux - Istruzioni di installazione (Licenza per sito)

Introduzione a Dev-C++

Manuale di Blogilo. Mehrdad Momeny Traduzione e revisione del documento: Valter Mura

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Ingegneria del software A.

GUIDE VIRTUEMART Guida di Virtuemart INSTALLAZIONE DI VIRTUEMART Guida alla installazione di VIRTUEMART 1.1.

IBM SPSS Statistics per Windows - Istruzioni di installazione (Licenza per sito)

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)

APPUNTI POWER POINT (album foto)

WG-TRANSLATE Manuale Utente WG TRANSLATE. Pagina 1 di 15

Programmazione Orientata agli Oggetti in Linguaggio Java

Guida per esecuzione dell aggiornamento del programma DINAMIC

Tutorial sugli ambienti di sviluppo: Eclipse e NetBeans

Alla scoperta della nuova interfaccia di Office 2010

Configurazione della ricerca desktop di Nepomuk. Sebastian Trüg Anne-Marie Mahfouf Traduzione della documentazione in italiano: Federico Zenith

Architetture Applicative

Ingegneria del Software 1: Eclipse

per immagini guida avanzata Organizzazione e controllo dei dati Geometra Luigi Amato Guida Avanzata per immagini excel

Access. P a r t e p r i m a

SPSS Statistics per Windows - Istruzioni di installazione per (Licenza per utenti singoli)

SQL Server Integration Services. SQL Server 2005: ETL - 1. Integration Services Project

Corso Eclipse. Prerequisiti. 1 Introduzione

Visual basic base Lezione 01. L'ambiente di sviluppo

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da

INTEGRAZIONE DI DOCUSOFT CON UN ALTRO SOFTWARE GESTIONALE CON IL MODULO ACQUIRE&VIEW

Implementazione di MVC. Gabriele Pellegrinetti

Corso sul pacchetto R

L ambiente di sviluppo Android Studio

Introduzione. Installare EMAS Logo Generator

Joomla! 2.5:Utenti e permessi - Il wiki di Joomla.it

Gestione delle Cartelle dei Messaggi di Posta Elettronica

Procedure di utilizzo e di descrizione applicativa

ProgettAzione V anno Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni

MANUALE D USO DELLA PIATTAFORMA ITCMS

Tale attività non è descritta in questa dispensa

Settimana I...1. Giorno 1 - Introduzione all XSLT...3

Introduzione a ROOT. 1. Informazioni generali

Manuale Gestore. STWS Web Energy Control - Servizio di telelettura sul WEB

I Software di riferimento per stilare un E-Portfolio

Progetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore

Manuale d uso [Rev.1 del 07/08/2015] Manutenzione caldaie Lite Ver [05/01/2015]

Application Server per sviluppare applicazioni Java Enterprise

Terza lezione: Directory e File system di Linux

XML e PHP. Gestire XML con PHP. Appendice

Rsync su GNU/Linux e su Windows? (Backup sincronizzato su disco di rete e/o RAID1 su server FreeNAS)

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

Guida Software GestioneSpiaggia.it

STRUMENTI DI PRESENTAZIONE MODULO 6

5.6.1 REPORT, ESPORTAZIONE DI DATI

Consiglio regionale della Toscana. Regole per il corretto funzionamento della posta elettronica

JOOMLA & I PROJECT BUILD AUTOMATION

ISTRUZIONI PER L UTILIZZO DELLA SCHEDA INFORMATIZZATA E MODALITA DI INVIO DEI DATI - L. R. 162/98 PROGRAMMA

SOMMARIO... 3 INTRODUZIONE...

Novità di Access 2010

CdL in Medicina Veterinaria - STPA AA

Installazione MS SQL Express e utilizzo con progetti PHMI

Tutorial per l installazione del J2SE 6 e configurazione del sistema operativo

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50

Installazione del software Fiery per Windows e Macintosh

Транскрипт:

Programmazione Orientata agli Oggetti in Linguaggio Java Strumenti di Sviluppo: C# versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università della Basilicata mecca@unibas.it Strumenti di Sviluppo: C# >> Sommario Sommario IDE per.net Nant Preliminari Differenze con Ant MSBuild Altri Strumenti File di Configurazione dell Assembly 2

Strumenti di Sviluppo: C# >> IDE per.net IDE per.net L IDE per eccellenza per.net Visual Studio.NET discende da Visual Studio 6.0 varie versioni (VS.NET 2002, 2003, 2005) prodotto commerciale distribuito in varie versioni si tratta di un ambiente multilinguaggio che consente di sviluppare applicazioni con tutti i linguaggi principali della piattaforma.net 3 Strumenti di Sviluppo: C# >> IDE per.net IDE per.net Il programma Microsoft Express la Microsoft renderà disponibili gratuitamente una versione express dei suoi strumenti le versioni express di Visual Studio sono versioni ridotte e monolinguaggio http://lab.msdn.microsoft.com/express/ Per il linguaggio C# Visual C# 2005 Express Edition 4

Strumenti di Sviluppo: C# >> IDE per.net IDE per.net I progetti di Visual Studio sono definiti soluzioni contengono un progetto principale e possono contenere un certo numero di sottoprogetti (librerie) quando viene costruita la soluzione vengono costruiti tutti i progetti che la compongono 5 Strumenti di Sviluppo: C# >> IDE per.net IDE per.net Definizione del progetto vari modelli predefiniti scelta del nome scelta della cartella del disco corrispondente Definizione dei riferimenti insieme di assembly esistenti che vengono utilizzati oltre agli assembly dei sottoprogetti durante la compilazione e l esecuzione 6

Strumenti di Sviluppo: C# >> IDE per.net IDE per.net >> Visual Studio 2005 Build di debug e build di release una significativa differenza rispetto a Java gli assembly prodotti sono significativamente diversi oltre alle opzioni di debug e di ottimizzaz., tipicamente l assembly di debug contiene anche i test, quello di release no Visual Studio consente di definire le due diverse configurazioni e usa cartelle diverse 7 Strumenti di Sviluppo: C# >> IDE per.net IDE per.net Un IDE open source per.net SharpDevelop distribuito su http://www.icsharpcode.net riproduce le funzionalità essenziali di Visual Studio Installazione di SharpDevelop distribuito sotto forma di installabile (.msi) all installazione è necessario creare una base di dati per il completamento del codice 8

Strumenti di Sviluppo: C# >> IDE per.net IDE per.net >> SharpDevelop Progetti di SharpDevelop sono detti combinazioni analoghi alle soluzioni di Visual Studio Configurazione del progetto tutti i file del progetto vengono registrati nei metadati per cui se i file vengono aggiunti o eliminati al di fuori dell IDE non risultano subito visibili è utile specificare l opzione per cui i nuovi file devono essere aggiunti automaticamente al progetto all apertura 9 Strumenti di Sviluppo: C# >> Nant Nant Nant: Not Ant" strumento open source per.net scaricabile dal sito http://nant.sourceforge.net Storia di Nant deriva da un progetto chiamato XBuild, poi soppresso, che era ispirato ad Ant sviluppato replicando abbastanza fedelmente le caratteristiche di Ant attualmente alla versione 0.85 10

Strumenti di Sviluppo: C# >> Nant Nant Installazione di Nant viene distribuito sotto forma di.zip basta decomprimere lo.zip in una cartella e aggiungere %NANT_HOME%\bin al PATH I task di Nant circa 70 non esiste la distinzione tra task principali e task opzionali 11 Strumenti di Sviluppo: C# >> Nant Nant Librerie necessarie per l esecuzione dei test di regressione è necessario NUnit per la generazione della documentazione è necessario NDoc per la creazione di file zip è necessaria la libreria di SharpZipLib tutte e tre le librerie vengono distribuite con nant per cui non è necessario installare altro 12

Strumenti di Sviluppo: C# >> Nant Nant Il progetto nantcontrib fornisce 88 task aggiuntivi rispetto a quelli fondamentali attualmente alla versione 0.85 i task vengono distribuiti sotto forma di file.zip è necessario decomprimere lo.zip e poi copiare il contenuto della cartella bin in %NANT_HOME%\bin 13 Strumenti di Sviluppo: C# >> Nant Preliminari Struttura della cartella di progetto simile a quella standard per Ant In particolare il codice sorgente è contenuto in una cartella src, con sottocartelle per i namespace i test sono tenuti nella cartella test il codice oggetto è tenuto in build, con due sottocartelle separate (debug e release) il codice distribuibile è tenuto in dist 14

Strumenti di Sviluppo: C# >> Nant ${nant.project.basedir} build dist src test varie debug <assembly di debug (con test)> <assemby delle librerie necessarie> release dati <file di dati per i test> report <assembly di release> <rapporto sull esecuzione dei test> varie <copia degli altri file> <file.zip> docs <file di documentazione> <cartelle dei namespace> (eventualmente assenti) <file.cs> dati <file di dati per i test> <cartelle dei namaspace> (eventualmente assenti) <file.cs> default.build <altri file; es: esempi> 15 Strumenti di Sviluppo: C# >> Nant Preliminari >> utilita\default-semplice.build I file di build di Nant sono file XML tipicamente con estensione.build contengono ciascuno un progetto che è fatto di uno o più target che contengono al loro interno uno o più task La sintassi di Nant molto simile a quella di Ant 16

Strumenti di Sviluppo: C# >> Nant Preliminari Alcune particolarità alcuni task falliscono in condizioni in cui i corrispondenti task di Ant non fallirebbero es: delete, mkdir ecc. in questi casi è necessario utilizzare l attributo failonerror per evitare che il processo di build fallisca 17 Strumenti di Sviluppo: C# >> Nant Preliminari >> ant su utilita Esecuzione di Nant comando nant dal prompt Varianti nant esegue il target di default del file default.build oppure cerca il primo file.build nant <target> nant f:<nomefile>.build (o buildfile:, /f:) nant f:<nomefile>.build <target> -help, -verbose, -debug, -quiet, -projecthelp 18

Strumenti di Sviluppo: C# >> Nant Preliminari >> SharpDevelop Nant e VisualStudio VisualStudio 2005 ha il proprio sistema di build (MSBuild) (>>) esiste però un plugin per consentire di utilizzare Nant Nant e SharpDevelop non esiste un plugin specifico è però possibile eseguire Nant come strumento esterno configurando il comando 19 Strumenti di Sviluppo: C# >> Nant Differenze Rispetto ad Ant >> Nant docs: Proprietà predefinite Proprietà le proprietà di Nant non sono necessariamente immutabili per renderle immutabili è necessario specificare l attributo readonly sono sempre immutabili le proprietà passate attraverso la linea di comando argomento D:<nome>=<valore> esistono molte proprietà predefinite 20

Strumenti di Sviluppo: C# >> Nant Differenze Rispetto ad Ant Formato per le proprietà Nant (come.net) è basato su XML e non su file.properties per prelevare valori di proprietà da XML bisogna utilizzare il task xmlpeek, che consente di specificare un xpath per prelevare un valore da un file XML per scrivere valori di proprietà è necessario utilizzare il task xmlpoke 21 Strumenti di Sviluppo: C# >> Nant Differenze Rispetto ad Ant >> Nant docs: Espressioni e Funzioni Infine Nant non rispetta la filosofia rigorosamente dichiarativa di Ant Costruzione procedurale in Nant il linguaggio fornisce un supporto decisamente maggiore rispetto ad Ant possibilità di scrivere condizioni complesse possibilità di scrivere funzioni complesse tag if, ifnot, foreach 22

Strumenti di Sviluppo: C# >> Nant Differenze Rispetto ad Ant Un esempio build di debug e build di release Nel caso di.net bisogna costruire due assembly completamente diversi >> questionari\default-semplice.build è necessario eseguire task diversi la soluzione: utilizzare il task call per biforcare il flusso di esecuzione 23 Strumenti di Sviluppo: C# >> Nant Differenze Rispetto ad Ant Il task csc consente di eseguire il compilatore di C# <target name="compile-release" depends="prepare, prepare-references-release"> <csc target="exe" output="${build.release.dir}\${assembly.name}" debug="false verbose="false"> <sources basedir="${src.dir}"> <include name="**/*.cs" /> </sources> <references basedir="${mylib.dir}"> <include name="unibas.utilita.dll" /> </references> </csc> </target> 24

Strumenti di Sviluppo: C# >> Nant Differenze Rispetto ad Ant Attenzione ai riferimenti il task csc consente di specificare solo i riferimenti per il compilatore è poi necessario predisporre anche i riferimenti per il caricatore <target name="prepare-references-release" depends="prepare"> <copy todir="${build.release.dir}"> <fileset basedir="${mylib.dir}"> <include name="unibas.utilita.dll" /> </fileset> </copy> </target> 25 Strumenti di Sviluppo: C# >> Nant Differenze Rispetto ad Ant Un limite di Nant non esiste il task import Il task include sostituisce parzialmente import, consentendo di importare i target di un buildfile in un altro ma non consente sovrascritture >> console-template.build >> questionari\default.build quindi è inutile nei casi in cui non tutti i target del template sono direttamente riutilizzabili 26

Strumenti di Sviluppo: C# >> MSBuild MSBuild Il nuovo Visual Studio Visual Studio 2005, nome in codice Whidbey integrerà un sistema di costruzione secondo l impostazione di NetBeans 4.0 MSBuild sistema di costruzione derivato da Nant verrà distribuito con tutte le nuove versioni di Windows (a partire da Longhorn ) 27 Strumenti di Sviluppo: C# >> MSBuild MSBuild codice sorgente configurazione del progetto azioni di costruzione Visual Studio 2005 file di codice sorgente comandi di costruzione modifiche MSBuild <?xml...> <project...> <target...> </target> </project> Buildfile di Ant codice costruito 28

Strumenti di Sviluppo: C# >> MSBuild MSBuild Un esempio di buildfile <Project MSBuildVersion="1.0" DefaultTargets = "Compile"> <Property appname = "HelloWorldCS"/> <Item Type = "CSFile" Include = "consolehwcs1.cs"/> <Target Name = "Compile"> <Task Name = "CSC" Sources = "@(CSFile)"> <OutputItem TaskParameter = "OutputAssembly" Type = "EXEFile" Include = "$(appname).exe"/> </Task> <Message Text="The output file is @(EXEFile)"/> </Target> </Project> 29 Strumenti di Sviluppo: C# >> Altri Strumenti Altri Strumenti Anche per.net esistono molti altri strumenti disponibili Esempi Convenzioni di stile: FxCop http://www.gotdotnet.com/team/fxcop/ Profiler: NProf http://nprof.sourceforge.net Analisi di Copertura: Coverageeye.net www.gotdotnet.com 30

Strumenti di Sviluppo: C# >> File di Configurazione dell Assembly File di Configurazione dell Assembly Il task NUnit nella versione 0.85 utilizza per l esecuzione dei test NUnit v. 2.2 (nunit.framework.dll) Ma... i test potrebbero essere stati compilati utilizzando una versione diversa (es: precedente) in questo caso si crea un problema 31 Strumenti di Sviluppo: C# >> File di Configurazione dell Assembly File di Configurazione dell Assembly Infatti il collegatore non troverebbe corrispondenza tra la versione utilizzata dal compilatore e la versione utilizzata per l esecuzione In questo caso è necessario effettuare una redirezione da una versione all altra di NUnit attraverso il file di configurazione dell assembly su cui eseguire i test 32

Strumenti di Sviluppo: C# >> File di Configurazione dell Assembly File di Configurazione dell Assembly File di configurazione dell assembly file XML attraverso cui è possibile specificare una serie di parametri di configurazione per l assembly deve chiamarsi come l assembly, con in più l estensione.config deve stare nella stessa cartella dell assembly es: questionari.exe.config, Unibas.Utilita.dll.config viene caricato automaticamente dalla m.v. 33 Strumenti di Sviluppo: C# >> File di Configurazione dell Assembly File di Configurazione dell Assembly Tipologie di informazioni dati di configurazione a tempo di esecuzione versioni del framework.net supportate valori acquisibili all interno del codice per la configurazione (es: logging) redirezioni tra versioni diverse dello stesso assembly utilizzato >> nunit.framework.dll.config >> nantconsole.exe.config 34

Strumenti di Sviluppo: C# >> File di Configurazione dell Assembly File di Configurazione dell Assembly Nel caso di NAnt per cambiare versione del framework NUnit è necessario creare un frammento di file di configurazione che produca la redirezione es: test.config poi eseguire il task nunit specificando con l attributo appconfig di utilizzare il file creato come file di configurazione per l assembly 35 Strumenti di Sviluppo: C# >> File di Configurazione dell Assembly File di Configurazione dell Assembly <!-- test.config --> <configuration> <runtime> <assemblybinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentassembly> <assemblyidentity name="nunit.framework" publickeytoken="96d09a1eb7f44a77" culture="neutral" /> <bindingredirect oldversion="2.0.6.0" newversion="2.2.0.0" /> <bindingredirect oldversion="2.1.4.0" newversion="2.2.0.0" /> </dependentassembly> </assemblybinding> </runtime> </configuration> <nunit2> <formatter type="plain" /> <test assemblyname= questionari.dll" appconfig= test.config" /> </nunit2> 36

Strumenti di Sviluppo: C# >> Sommario Riassumendo IDE per.net Nant Preliminari Differenze con Ant MSBuild Altri Strumenti File di Configurazione dell Assembly 37 Termini della Licenza Termini della Licenza This work is licensed under the Creative Commons Attribution- ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/1.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. Questo lavoro viene concesso in uso secondo i termini della licenza Attribution-ShareAlike di Creative Commons. Per ottenere una copia della licenza, è possibile visitare http://creativecommons.org/licenses/by-sa/1.0/ oppure inviare una lettera all indirizzo Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. 38