P i a t t a f o r m e

12
P P i i a a t t t t a a f f o o r r m m e e Antonio Cisternino Antonio Cisternino 11 Marzo 2005 11 Marzo 2005 O O p p e e n n S S o o u u r r c c e e e P P r r o o p p r r i i e e t t a a r r i i e e Un mondo di Un mondo di componenti componenti

description

O p e n S o u r c e. Un mondo di componenti. e. P r o p r i e t a r i e. P i a t t a f o r m e. Antonio Cisternino 11 Marzo 2005. What’s next?. La piattaforma Microsoft sta rapidamente cambiando COM, seppure una grande tecnologia, è lentamente divenuta obsoleta: si può fare meglio - PowerPoint PPT Presentation

Transcript of P i a t t a f o r m e

Page 1: P i a t t a f o r m e

PPiiaattttaaffoorrmmee

Antonio CisterninoAntonio Cisternino

11 Marzo 200511 Marzo 2005

OOppeenn

SSoouurrccee

e PPrroopprriieettaarriiee

Un mondo di Un mondo di componenticomponenti

Page 2: P i a t t a f o r m e

What’s next?

• La piattaforma Microsoft sta rapidamente cambiando

• COM, seppure una grande tecnologia, è lentamente divenuta obsoleta: si può fare meglio

• Microsoft ha puntato molto su .NET, una VM su cui basare il futuro dei componenti

• Ci sono resistenze interne a fare il grande salto.

Page 3: P i a t t a f o r m e

.NET Hype

• .NET rappresenta la visione di Microsoft per lo sviluppo software

• Il Common Language Runtime (CLR) è una Virtual Machine che esegue programmi scritti in linguaggi differenti

• Offre numerosi servizi ai programmi, come sicurezza, gestione della memoria, interoperabilità

Page 4: P i a t t a f o r m e

.NET vs. Java

• .NET affonda le sue radici in Java, ma come spesso accade a chi viene dopo, è più avanti

• È uno standard ISO e ECMA come il linguaggio C# (altra implementazione Mono)

• Tecnicamente ha i seguenti vantaggi:– Generici nel runtime (dalla 2.0)– Interoperabilità con codice nativo– Un sistema di tipi più flessibile– Supporto per la generazione dinamica di codice

Page 5: P i a t t a f o r m e

Web Services

• Una nuova parola chiave nel panorama dei sistemi è quella dei Web services

• Web services è una tecnologia standard basata su XML per invocare servizi remoti

• È rilevante poiché scala bene: può essere supportata con poco sforzo, ma è capace di gestire anche situazioni molto complesse

• È supportato dalle principali piattaforme

Page 6: P i a t t a f o r m e

Web services e .NET

• Hello world:[WebService]public class HW { [WebMethod] public string HelloWorld() { return “Ciao Mondo!”; }}

Page 7: P i a t t a f o r m e

Usare WS in InfoPath

• Poiché alla fine un WS è formato da un insieme di messaggi XML InfoPath è un’applicazione naturale per consumarli

• È piuttosto semplice quindi separare la gestione dei dati (definita come un insieme di Web Services) dalla loro presentazione

• InfoPath consente di usare WS come sorgente di dati, ma anche come output

Page 8: P i a t t a f o r m e

A managed OS

• Microsoft ha dichiarato che intendeva mettere CLR dentro Longhorn nel 2003

• Questa posizione si è ammorbidita nel tempo, ciononostante sembra un trend che continua

• Questo avrà un impatto significativo sul design del sistema operativo:– La tradizionale visione della API di sistema

potrebbe essere rimpiazzata da un’interfaccia ad oggetti

– Il sistema operativo potrebbe entrare nel merito dell’esecuzione dei programmi per migliorare la sicurezza

Page 9: P i a t t a f o r m e

Avalon

• Avalon è l’interfaccia grafica di Longhorn• È anche un tentativo significativo di

andare oltre win32• Interessante è la convergenza di:

– Grafica 3D– Grafica vettoriale (finalmente!)– Definizione in XML dell’interfaccia (in stile Web

ma nel sistema)– Convergenza su .NET

• Sembra che sia superiore a Quartz (MacOS)

Page 10: P i a t t a f o r m e

Indigo

• Indigo è un’altra buzzword del momento• Si tratta di un’infrastruttura software per

applicazioni distribuite• L’idea estende quella dei Web services: il

programmatore annota il proprio programma e il sistema genera le interfacce verso la rete.

• Nuovamente l’intera infrastruttura si basa su SOAP e XML, quindi semplificherà lo sviluppo di applicazioni cross platform

Page 11: P i a t t a f o r m e

Monad, a .NET shell

• Monad è la prossima shell di Windows• Ciò che cerca di fare è di andare oltre il

concetto di shell Unix affidandosi al fatto che .NET sarà il prossimo sistema a componenti di Windows

• Il modello prevede la manipolazione di oggetti piuttosto che di processi, ottenendo un modello a granularità più fine

• La reflection offerta da .NET consente di ispezionare gli oggetti interattivamente ottenendo un sistema che si autodocumenta (in parte).

Page 12: P i a t t a f o r m e

Conclusioni

• La piattaforma Microsoft si è evoluta negli anni da una piattaforma mediocre in una che indubbiamente introduce innovazione

• La chiave di Windows è (e presumibilmente sarà) l’archiettura a componenti, che da COM sta lentamente migrando verso .NET

• Office è un esempio notevole di suite che sfrutta queste capacità del sistema.