ASP.NET: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Marius~itwiki (discussione | contributi)
Da en.wiki con aggiunte (da ampliare ulteriormente)
 
de/stub
Riga 1:
{{stub informatica}}
 
'''ASP.NET''' è un insieme di tecnologie di sviluppo di [[software]] per il [[web]], commercializzate dalla [[Microsoft]]. Utilizzando queste tecnologie gli sviluppatori possono realizzare [[Applicazione WEB|applicazioni WEB]] e [[Servizio WEB|servizi WEB]] (''WEB Service'').
== Principi su cui si basa ASP.NET ==
 
Sebbene il nome ASP.NET derivi da [[ASP]] (''Active Server Pages'') (la vecchia tecnologia per lo sviluppo web di [[Microsoft]]), esistono sostanziali differenze fra le due. Infatti ASP.NET si basa, come tutte le applicazioni della famiglia [[Microsoft_.NET|Microsoft .NET]], sul [[Common Language Runtime|CLR]] (''Common Language Runtime''). Gli sviluppatori possono scrivere codice utilizzando uno qualsiasi dei linguaggi di alto livello supportati dal [[.NET Framework]] (libreria di classi) [[Microsoft .NET|.NET]], come, ad esempio, [[Visual Basic .Net]] (proprietario Microsoft), [[C sharp|C#]] (pronunciato ''C sharp'', linguaggio soggetto a una specifica di standardizzazione), ma anche, cosa particolarmente interessante e innovativa per Microsoft, linguaggi [[open source]], come [[Perl]] e [[Python]]. Le applicazioni ASP.NET sono significativamente più veloci e performanti rispetto a quelle realizzate utilizzando altre tecnologie di [[scripting]], in quanto l'intero codice del sito web è pre-compilato in pochi file [[dll]] (spesso in un unico file) gestiti da un [[server Web]].
 
Gli sviluppatori possono scrivere codice utilizzando uno qualsiasi dei linguaggi di alto livello supportati dal [[.NET Framework]] (libreria di classi) [[Microsoft .NET|.NET]], come, ad esempio, [[Visual Basic .Net]] (proprietario Microsoft), [[C sharp|C#]] (pronunciato ''C sharp'', linguaggio soggetto a una specifica di standardizzazione), ma anche, cosa particolarmente interessante e innovativa per Microsoft, linguaggi [[open source]], come [[Perl]] e [[Python]]. Le applicazioni ASP.NET sono significativamente più veloci e performanti rispetto a quelle realizzate utilizzando altre tecnologie di [[scripting]], in quanto l'intero codice del sito web è pre-compilato in pochi file [[dll]] (spesso in un unico file) gestiti da un [[server Web]].
ASP.NET si propone di semplificare la migrazione degli sviluppatori dalle applicazioni [[Windows]] alle applicazioni web mettendoli in grado di generare pagine composte da tanti controlli [[widget]], del tutto simili a quelli usati dall'[[interfaccia utente]] di Windows. Un controllo web, come ad esempio un ''pulsante'' o un ''etichetta'' (label), funzionano in modo molto simile a quello delle loro controparti Windows: il codice ad essi associato può assegnare loro determinate ''proprietà'' ed eseguire azioni in risposta ad ''eventi'' ad essi associati (ad esempio alla pressione di un pulsante). La differenza sta nel fatto che, mentre i controlli Windows disegnano sè stessi sullo schermo, i controlli web producono blocchi di codice [[HTML]] che si vanno ad inserire automaticamente nella pagina che deve essere inviata al [[browser]] dell'utente finale.
 
ASP.NET si propone di semplificare la migrazione degli sviluppatori dalle applicazioni [[Windows]] alle applicazioni web mettendoli in grado di generare pagine composte da tanti controlli [[widget]], del tutto simili a quelli usati dall'[[interfaccia utente]] di Windows.
 
ASP.NET si propone di semplificare la migrazione degli sviluppatori dalle applicazioni [[Windows]] alle applicazioni web mettendoli in grado di generare pagine composte da tanti controlli [[widget]], del tutto simili a quelli usati dall'[[interfaccia utente]] di Windows. Un controllo web, come ad esempio un ''pulsante'' o un ''etichetta'' (label), funzionano in modo molto simile a quello delle loro controparti Windows: il codice ad essi associato può assegnare loro determinate ''proprietà'' ed eseguire azioni in risposta ad ''eventi'' ad essi associati (ad esempio alla pressione di un pulsante). La differenza sta nel fatto che, mentre i controlli Windows disegnano sè stessi sullo schermo, i controlli web producono blocchi di codice [[HTML]] che si vanno ad inserire automaticamente nella pagina che deve essere inviata al [[browser]] dell'utente finale.
 
== Paradigma di programmazione di ASP.NET ==
 
ASP.NET è progettato in modo da incoraggiare lo sviluppatore ad usare in modo sistematico il [[Paradigma di programmazione|paradigma]] dell' [[interfaccia grafica]] (''GUI, per Graphical User Interface'') abbinato alla cosiddetta [[programmazione guidata dagli eventi]] (''event-driven''), cioè allo stile di programmazione in cui i vari blocchi di codice vengono eseguiti in risposta a determinati ''eventi'', od azioni, su controlli dotati rappresentazione grafica sul [[desktop]].

Lo stile convenzionale dei linguaggi per lo sviluppo di applicazioni web si era invece finora basato sulla tecnica dello [[scripting]]. Le classi della libreria .NET Framework si propongono, inoltre, di combinarsi ed interagire con le tecnologie esistenti, come ad esempio [[Javascript]], in modo da attribuire un carattere di ''persistenza'' ad oggetti software, anche nell'ambito di un ambiente come il web, che è intrinsecamente privo di stato (''stateless server'').
 
La libreria di classi .NET Framework, analogamente a quanto avviene per la piattaforma di sviluppo [[Java]], implementa una [[macchina virtuale]] che si avvale di un compilatore [[Just in time (programmazione)|''just in time'']]. Ciò significa che il [[bytecode]] intermedio prodotto (identico per tutti i linguaggi di alto livello impiegati) viene compilato in [[linguaggio macchina]] appena prima dell'esecuzione. Utilizzando diversi compilatori ''just in time'' è possibile riutilizzare lo stesso bytecode intermedio su [[Microprocessore|processori]] diversi. Questa tecnica viene definita ''Jitting''.