📁
Forum per Webmaster
Glossario

.NET

.NET è un framework per lo sviluppo e l’esecuzione di applicazioni di diverse tipologie (web, client server e non solo), in grado di girare su differenti piattaforme ed in una certa misura, su diversi tipi di dispositivi.

.NET offre strumenti per lo sviluppo di applicazioni come linguaggi, compilatori e librerie di classi.

.NET offre un ambiente gestito per l’esecuzione delle applicazioni.

Un’applicazione .NET è in grado di girare su varie piattaforme a patto che esista una versione del framework per la piattaforma di esecuzione.

Un’applicazione .NET può essere eseguita su dispositivi diversi dai PC grazie all’esistenza di una versione specifica del framework per dispositivi mobili (palmari, cellulari ecc,).

Il framework .NET copre ogni aspetto relativo allo sviluppo del software schermando totalmente il sistema operativo su cui ci troviamo.

Il framework offre allo sviluppatore un ambiente completamente gestito per lo sviluppo di applicazioni occupandosi di ogni aspetto, dalla fase di esecuzione e gestione delle risorse e della memoria, all’accesso ai dati, alla gestione dell’interfaccia.

Tutti i linguaggi supportati da .NET condividono un ambiente di runtime comune denominato Common Language Runtime (CLR).
Il CLR si occupa di gestire l’esecuzione del codice sulla piattaforma .NET indipendentemente dal linguaggio con cui il codice è stato scritto.
Il codice scritto, ad esempio, in VB.NET viene prima precompilato in una sorta di codice intermedio (MSIL: Microsoft Intermediate Language) e poi passato al CLR che effettua la vera e propria compilazione Just in Time (JIT) per il sistema target su cui è installato il framework di .NET.

I programmi destinati a girare sulla piattaforma .NET sono rilasciati sotto forma di .EXE e .DLL che non sono veri e propri eseguibili ma un insieme di codice intermedio e metadati descrittivi che prende il nome di assembly.

L’insieme dei metadati relativi ad un’assembly prende il nome di manifest, mentre il codice intermedio viene definito module.

Caratteristiche

Semplificazione del processo di sviluppo del software

  • Disponibilità di classi e componenti già pronti per la maggior parte dei compiti, estendibili tramite ereditarietà.
  • Integrazione trasparente di tecnologie per lo sviluppo in ambiente Internet
  • Modello di programmazione unificato per tutte le tipologie di sviluppo (Client Server, Applicazioni web, servizi web)

Supporto per sistemi altamente distribuiti ed indipendenza da piattaforme e dispositivi

  • Web services che si basano su protocolli e linguaggi standard come HTTP, XML e SOAP

Possibilità di realizzare interfacce utente sofisticate per le applicazioni web

  • Web forms è un notevole miglioramento in termini di sviluppo di interfacce utente ricche di funzionalità per applicazioni web

Fase di rilascio delle applicazioni semplificata

  • Gli eseguibili .NET (assembly) contengono al loro interno tutte le informazioni (manifest) necessarie per il loro funzionamento e relativamente alle dipendenze da altri componenti.
  • Supporto per il versioning notevolmente migliorato
  • Indipendenza dal registro di Windows
  • Semplificazione estrema della fase di rilascio per molte tipologie di applicazioni

Supporto per una grande varietà di linguaggi di programmazione

  • Ogni linguaggio produce codice intermedio (MSIL) che poi viene eseguito dalla macchina virtuale .NET (CLR) e quindi non si hanno differenze tra i vari linguaggi.
  • Linguaggi attualmente supportati: Visual Basic .NET, C#, Managed C, Jscript .NET (esistono versioni per .NET di Cobol, RPG e Delphi Object Pascal).

Piattaforma di sviluppo flessibile ed estensibile per sviluppi futuri

  • Estensione lato utente grazie all’ereditarietà
  • Struttura molto flessibileper l’aggiunta da parte di Microsoft di nuove librerie di classi all’interno del framework

Futura portabilità delle applicazioni

  • Il codice MSIL potrà girare in futuro per ogni piattaforma su cui verrà realizzata una versione del framework .NET (macchine Linux o MacOS, dispositivi portatili come palmari, cellulari, navigatori satellitari ecc.)
  • Compact framework

Supporto per le applicazioni COM

  • Possibilità di utilizzare oggetti COM all’interno di applicazioni .NET
  • Possibilità di esportare tramite interfacce COM le funzionalità di componenti .NET
Argomenti nella stessa categoria