Università La Sapienza Ingegneria del Software I 1 Ingegneria del software I Seminario 2: Microsoft.NET.

Slides:



Advertisements
Presentazioni simili
/ fax
Advertisements

1 Le s-espressioni. 2 Un nuovo esempio completo: le s-espressioni Sexpr 4 alberi binari (possibilmente vuoti) che hanno sulle foglie atomi (stringhe)
INTRODUZIONE Il framework.NET. Un po di storia Sin dalla prima versione del sistema operativo Windows (1990 circa), nacque la necessità di far comunicare.
Interfacce Java.
Corrado Cavalli Microsoft .NET MVP
ASP .NET & Web Service: Introduzione
Crea il tuo sito con Web Matrix e il Web Hosting su ASP.NET
Consumare Web Service Andrea Saltarello
Midrange Modernization Conference 1 Scenari evolutivi per le soluzioni basate su AS/400 Walter Poloni Direttore Developer & Platform Evangelism Microsoft.
Luca Bianchi Windows Development Day Bologna 28 gennaio 2005 SQL Server Desktop Engine (MSDE) & SQL Server 2005 Express.
La piattaforma Microsoft per lo sviluppo di applicazioni
ASP.NET – Web Forms Davide Vernole.NET MVP. Di cosa parleremo Introduzione ad ASP.NET ASP.NET, dietro le quinte Componenti principali di una applicazione.
Vincenzo Campanale PM Security & Management System Center, DSI e la Roadmap.
WSDL (Web Services Description Language) Laurea Magistrale in Informatica Reti 2 (2006/07) dott. Federico Paoloni
Java Enterprise Edition (JEE)
Massa Laura Mela Enrica
E.Mumolo, DEEI Player Stage E.Mumolo, DEEI
1 la competenza alfabetica della popolazione italiana CEDE distribuzione percentuale per livelli.
Seam.
Microsoft Robotics Studio Marco Petrucco Microsoft Student Partner - Udine.
Distributed Object Computing
EJB Enterprise Java Beans B. Pernici. Approccio Java.
Domenico Presenza Stato implementazione prototipo Engineering Milano – 20 Luglio 2005.
1 Fac.Scienze – Università di Trento Programmazione 2 - Marco Ronchetti Java JAVA: una introduzione.
Model – View - Controller
Unified Modeling Language class C {…} class B extends C {…} Esiste una notazione grafica per mostrare le relazioni di ereditarietà. Object StringC B Tutte.
J0 1 Marco Ronchetti Java Threads & Sincronizzazione.
1 Fac.Scienze – Università di Trento Programmazione 2 - Marco Ronchetti Java JAVA: una introduzione.
Sezione: Costruttori Costruttori. Definizione dei costruttori Se per una classe A non scrivo nessun costruttore, il sistema automaticamente crea il costruttore.
Programmazione II Marco Ronchetti
prompt> java SumAverage
1 struct Pila { private: int size; int defaultGrowthSize; int marker; int * contenuto; void cresci(int increment); public: Pila(int initialSize) ; Pila();
Costruzione di Interfacce Lezione 10 Dal Java al C++ parte 1
1. Conoscere luso delle collezioni in Java Comprendere le principali caratteristiche nelle varie classi di Collection disponibili Saper individuare quali.
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
1 Implementazione di Linguaggi 2 PARTE 6 Implementazione di Linguaggi 2 PARTE 6 Massimo Ancona DISI Università di Genova Testo: A.V. Aho, R. Sethi, J.D.Ullman.
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 6: Classi e astrazione dati 1.Introduzione 2.Definizione delle strutture 3.Accedere ai membri.
1 laboratorio di calcolo II AA 2003/04 ottava settimana a cura di Domizia Orestano Dipartimento di Fisica Stanza tel. ( )
FONDAMENTI DI INFORMATICA III WfMC-1. FONDAMENTI DI INFORMATICA III WfMC-2 WFMC Cose WfMC Workflow Management Coalition (WfMC), Brussels, è unorganizzazione.
Introduzione ad ASP.net
Componenti dell’architettura Oracle
C# LE BASI 2007 Prima lezione - Introduzione.
ETEN – Re-Public – RePublic website 1\5 eTEN Progetto Re-Public – RePublic website Workshop finale Dott. Marco Sentinelli – Galgano International Roma,
Palermo, may 2010 F.Doumaz, S.Vinci (INGV-CNT- Gruppo di telerilevamento)
Attribution-NonCommercial-ShareAlike SQL Server.
Università degli studi di Modena e Reggio Emilia Facoltà di Ingegneria di Modena Corso di Laurea Specialistica in Ingegneria Informatica Analisi e valutazione.
PROGETTO DI STRUMENTI PER LA CONFIGURAZIONE DI APPLICAZIONI JAVA ENTERPRISE Anno Accademico 2006 / 2007 Sessione III FACOLTÀ DI INGEGNERIA CORSO DI LAUREA.
WPF per il client Desktop
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
14° Workshop – DotNetMarche :: Castelfidardo, 16 Aprile 2010 Introduzione ai framework per IoC / DI e AOP.
Fabio Cozzolino Vito Arconzo
Bando Arti Sceniche. Per poter procedere è indispensabile aprire il testo del Bando 2ROL - Richieste On Line.
Scoprirete che su Office non si può solo contare ma anche sviluppare.
1 Questionario di soddisfazione ATA - a. sc. 2008/09 Il questionario è stato somministrato nel mese di aprile Sono stati restituiti 29 questionari.
1101 = x 10 x 10 x x 10 x = CORRISPONDENZE
Soluzioni 1.Struttura base soluzione 2.Lettura dei tasti 3.Identificazione dei tasti 4.Accensione dei LED 5.Rotazione dei LED 6.Rotazione dei tasti fino.
VB.NET Sviluppo Applicazioni Desktop
Visual Studio Tools for Office: Developer Solutions Platform Fulvio Giaccari MCSD.NET / MCT Responsabile Usergroup ShareOffice Blog:
1 Simulated multiple inheritance Sandro Pedrazzini Approfondimento Simulated multiple inheritance in Java.
Bando di Residenza Cap Scheda ENTE 3ROL - Richieste On Line.
Corso di Web Services A A Domenico Rosaci Patterns di E-Business D. RosaciPatterns per l'e-Business.
Analysis and Development of Functions in REST Logic: Application to the «DataView» Web App UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIA DIPARTIMENTO.
Collection & Generics in Java
Bando Pittori e Scultori in Piemonte alla metà del ‘700
JDBC Java DataBase Connectivity SISTEMI ITIS B. CASTELLI Anno Scolastico
Nuove funzionalitA’ e caratteristiche del linguaggio
lun mar mer gio ven SAB DOM FEBBRAIO.
IL GIOCO DEL PORTIERE CASISTICA. Caso n. 1 Il portiere nella seguente azione NON commette infrazioni.
ADO Per gestire i database con tecnologia ASP si utilizzano strumenti ADO (ActiveX Data Objects): un'architettura che fornisce oggetti.
Transcript della presentazione:

Università La Sapienza Ingegneria del Software I 1 Ingegneria del software I Seminario 2: Microsoft.NET

Università La Sapienza Ingegneria del Software I 2 Microsoft.NET piattaforma Visual Studio.NET.NET Enterprise Servers.NET Building Block & Services.NET Devices, User Experience

Università La Sapienza Ingegneria del Software I 3 Microsoft.NET piattaforma Visual Studio.NET.NET Enterprise Servers.NET Building Block & Services.NET Devices, User Experience

Università La Sapienza Ingegneria del Software I 4 Visual Studio.NET Framework per sviluppo ed integrazione dei.NET Enterprise Servers sia con.NET building block services che.NET devices. [6] VB C++ C# Scripts … … CLS (Common Language Specification) ASP.NET Web Service Web Form ADO.NET : Data and XML Base Class Library CLR (Common Language Runtime) Integrates into the system

Università La Sapienza Ingegneria del Software I 5 CLS (Common Language Specification) È un insieme di specifiche per linteroperabilità tra linguaggi. [7] È un insieme di specifiche di compilazione per lindipendenza dai linguaggi. [8] Sono definiti: tipi, metodi, campi, proprietà, enumerazioni, eccezioni, interfacce, eventi, etc.

Università La Sapienza Ingegneria del Software I 6 CLR (Common Language Runtime) Carica ed esegue codice scritto in runtime- aware per i linguaggi di programmazione. [14] Le caratteristiche dellambiente runtime [14] : – cross-language integration –self-describing components –simple deployment and versioning –integrated security services. Un unico framework per il progetto, lo sviluppo, limplementazione, e lesecuzione di componenti ed applicazioni distribuiti. [9]

Università La Sapienza Ingegneria del Software I 7 Microsoft.NET Platform Visual Studio.NET.NET Enterprise Servers.NET Building Block & Services.NET Devices, User Experience

Università La Sapienza Ingegneria del Software I 8 Mainframe / Other Data Sources Supplier / Consumer of XML e-documents.NET Enterprise Server Configuration Internet Security & Acceleration Server 2000 Internet Security & Acceleration Server 2000 SQL Server 2000 Host Integration Server 2000 Host Integration Server 2000 BizTalk Server 2000 BizTalk Server 2000 Application Center 2000 Internet Information Server Exchange Server 2000 Exchange Server 2000 COM+ Mobile Information Server 2000 Mobile Information Server 2000 Clients on the web Mobile Devices

Università La Sapienza Ingegneria del Software I 9 Microsoft.NET Framework System Services Common Language Runtime Services FrameWork BaseDataDebug... ASP+ Web FormsWeb Services Win Forms

Università La Sapienza Ingegneria del Software I 10 Service Framework Fornisce classi di oggetti a supporto degli sviluppatori per.NET. [14] Base Classes Type System Component Model I/O and Network Drawing (GDI+) Threading Cryptography Globalization Serialization Programming Tools Debugging/Trace Configuration/Install Resources EventLog/PerfCounter

Università La Sapienza Ingegneria del Software I 11 Il linguaggio C# Caratteristiche del C# [16] –Semplicità –Type safe –Consistenza –Supporto alle versioni –Object Orientation –Flessibilità

Università La Sapienza Ingegneria del Software I 12 C# - caratteristiche Complessità del C++, 1)-> / :: /. notazioni criptiche 2)Particolari tipo di dato wchar_t, __int64 … 3)Utilizzo degli interi come booleani, 4)problema del == e = In C#, 1)Notazione principale è il.. 2)È stato introdotto il tipo bool per eliminare confusioni

Università La Sapienza Ingegneria del Software I 13 C# - caratteristiche In C# non ci sono puntatori. La gestione della memoria è a carico del garbage collector fornito con lambiente.NET Usando la modalità unsafe si può comunque accedere alla memoria direttamente.

Università La Sapienza Ingegneria del Software I 14 C# - Object Orientation Incapsulamento, ereditarietà, polimorfismo I metodi della classi non sono virtual per default public, private, protected e internal Lereditarietà permessa è singola

Università La Sapienza Ingegneria del Software I 15 C# - Type Safety Le variabili non inizializzate non sono ammesse Il casting dei tipi ad UNSAFE non è permesso Data overflow, array index boundary checking

Università La Sapienza Ingegneria del Software I 16 Un semplice esempio in C# hello world. using System; class Hello { public static void Main(string[] args) { Console.WriteLine(hello, world); // print the command line arguments for (int i = 0; arg < args.Length; i++) Console.WriteLine(arg [0],[1], i, args[i]); }

Università La Sapienza Ingegneria del Software I 17 SDC (Self-Describing Components) I servizi forniti dal runtime sono metadata driven, questi metadati aggiungono informazioni agli eseguibili, come le definizioni di interfacce che prima specificate in IDL, TLB, proxy/stubs.

Università La Sapienza Ingegneria del Software I 18 Web Server Architettura dei Web Services Web Service Developer Web Service : ASMX Web Application : ASMX Author class, ASMX Deploy Application Web Application Developer Request SCL Author Page that calls the Proxy SDL Run Proxy Generator ASPX C#, VB Web Server Proxy Deploy Application Web Form Call Methods Deploy Application Run Method

Università La Sapienza Ingegneria del Software I 19 Web Service, ASMX Web service server salvato come asmx file. Richieste di web services basate su comunicazioni XML / SOAP. Oggetti e risorse accessibili via URL

Università La Sapienza Ingegneria del Software I 20 Web Server Web Service Development Web Service Developer Web Service : ASMX Web Application : ASMX Author class, ASMX Deploy Application Web Application Developer Request SCL Author Page that calls the Proxy SDL Run Proxy Generator ASPX C#, VB Web Server Proxy Deploy Application Web Form Call Methods Deploy Application Run Method

Università La Sapienza Ingegneria del Software I 21 1 Author Class, ASMX using System; using System.Web.Services; public class MyService { [WebMethod] public String MyServiceFunction1(String strParm1, String strParm2) {... } [WebMethod] public void MyServiceFunction2(Integer intParm) {... }

Università La Sapienza Ingegneria del Software I 22 Deploy Application Per implementare lapplicazione web va copiato il file ASMX nel web folder.

Università La Sapienza Ingegneria del Software I 23 Web Application, ASPX Per utilizzare i web services va creato un Proxy. Proxies sono creati in DLL compilando il codice stub genrato dal proxy generator. Il proxy generator genera il codice stub dal SDL che è esportato dai web services.

Università La Sapienza Ingegneria del Software I 24 Web Server Web Application Development Web Service Developer Web Service : ASMX Web Application : ASMX Author class, ASMX Deploy Application Web Application Developer Request SCL Author Page that calls the Proxy SDL Run Proxy Generator ASPX C#, VB Web Server Proxy Deploy Application Web Form Call Methods Deploy Application Run Method

Università La Sapienza Ingegneria del Software I 25 Request SCL + Run Proxy Generator Creazione del codice del Proxy da SDL. Webserviceutil /c:proxy /pa: /l:Csharp /n:MyServices /c:proxy Crea codice del Proxy dal SDL /pa:URL Specifica URL per il SCL(SDL) /l:language Specifica il linguaggio sorgente /n:namespace Specifica il namespace del proxy

Università La Sapienza Ingegneria del Software I 26 Deploy (Proxy) Application Compila il codice generato e copia il file DLL nel web folder per implementare il proxy. csc /out:..\bin\MyService.dll /t:library /r:system.data.dll /r:system.web.services.dll /r:system.xml.serialization.dll MyService.cs

Università La Sapienza Ingegneria del Software I 27 Author ASPX My Service Page MyServices = new MyService();// my service StringstrResult; strResult = s.MyServiceFunction1(Hello, World); s.MyServiceFunction2(12345);...

Università La Sapienza Ingegneria del Software I 28 Deploy (Web) Application Per implementare lapplicazione web va copiato il file ASPX nel web folder.

Università La Sapienza Ingegneria del Software I 29 The innovative feature MyService.ASPX... Calendarc; SelectedDatesCollectiondtSelectedPeriod;... c = CALENDAR;... dtSelectedPeriod = calendar.SelectedDates; <ASP:CALENDAR id="CALENDAR" runat="server" ALIGN=LEFT CellPadding="3" CellSpacing="1" DayNameFormat="FirstLetter" FirstDayOfWeek="Default" NextMonthText=">... />

Università La Sapienza Ingegneria del Software I 30 Servizio web scheduler

Università La Sapienza Ingegneria del Software I 31 References [1] Microsoft.NET, [2] The simplest way to define.NET, [3] An Introduction to Microsoft Hailstorm, [4] Bill Gates Web Site – Speeches, [5] Microsoft Announces Hailstorm, a New Set of XML Web Services Designed …, [6] G. Lee, Paradigm shift in software development environment, MS Visual Studio.NET, Microsoftware, pp. 202 ~ 213, Korea, Jan [7] Introduction to the Common Language Specification (CLS), mmon_language_specification__cls_.htm [8] What is Common Language Specification?, especification.htm [9] Overview of the Common Language Runtime, mon_language_runtime.htm

Università La Sapienza Ingegneria del Software I 32 References [10] Microsoft.NET in Retail and Hospitality, [11] Microsoft.NET for Manufacturing: Extending the Enterprise Through Open Protocols, [12] Microsoft.NET Platform – What it is, p [13] Overview of Microsoft.NET, [14] The Programmable Web, p [15] Build Web Applications Faster and Easier Using Web Services and XML, [16] Sharp New Language : C# Offers the Power of C++ and Simplicity of Visual Basic, [17] G. Kim, The announcement of Hailstorm composed of XML web services, Microsoftware, p. 172, Korea, Apr