ASP.NET: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Marius~itwiki (discussione | contributi)
m Voci correlate: corretto lnk
Marius~itwiki (discussione | contributi)
m lnk
Riga 5:
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 [[Framework .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 [[Dynamic-link library|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.
Riga 15:
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 Framework .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 Framework .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''.
 
== Punti di forza di ASP.NET rispetto ad ASP ==
Riga 30:
* La disponibilità di un set di controlli e librerie di classi molto ricco consente il rapido sviluppo di applicazioni.
* La possibiltà di eseguire una copia [[cache]] di intere pagine, di parte delle pagine o dei dati dell'applicazione migliora notevolemente le performance complessive.
* Se un'applicazione ASP.NET non riesce ad allocare la memoria di cui necessita (''memory leakage''), allora il modulo runtime scarica dalla memoria l'intero ambiente isolato in cui gira l'applicazione critica, e lo ricarica in un un'altra area appositamente creata. Per eseguire queste operazioni di caricamento/ scaricamento, (ed altre che riguardano l'applicazione nel suo complesso), il Framework .NET Framework mette a disposizione la classe ''AppDomain''.
* Lo stato della ''sessione'' ASP.NET può essere salvato in un database server [[SQL]] o in un processo separato residente sulla stessa macchina del Server web, oppure su quello di un'altra macchina. I dati e le proprietà della sessione non sono persi quando l'[[IIS]] (''Internet Information Services'') viene resettato, oppure quando il processo attivo di ASP.NET è riciclato.
 
Riga 86:
*[[C sharp]]
*[[Visual Studio .NET]]
*[[Framework .NET]]
 
==Collegamenti esterni==
Line 94 ⟶ 95:
*[http://www.developerfusion.co.uk/aspnet/ Developer Fusion; tutorial e codice sorgente ASP.NET]
*[http://www.w3schools.com/aspnet/ W3Schools tutorial]
*[http://www.mono-project.com Mono: implementazione open source del Framework .NET Framework compatibile con molte piattaforme]
*[http://asp.net/webmatrix/default.aspx?tabIndex=4&tabId=46/ Official Progettazione su Web con ASP.NET]
*[http://www.aspalliance.com ASPAlliance: Tutorial ASP e ASP.NET]