ASP.NET: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m Annullate le modifiche di 182.75.44.210 (discussione), riportata alla versione precedente di 115.113.191.18
Etichetta: Rollback
m rilasciato -> pubblicato
 
(8 versioni intermedie di 7 utenti non mostrate)
Riga 18:
}}
 
'''ASP.NET''' è un progetto [[open source]]<ref>{{Cita web|url=https://dotnet.microsoft.com/en-us/platform/open-source|titolo=.NET is open source on GitHub {{!}} .NET|sito=Microsoft|lingua=en-US|accesso=4 maggio 2022-05-04}}</ref><ref>{{Cita web|url=https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/cose-aspnet/|titolo=Che cos’è ASP.NET?|sito=IONOS Digitalguide|lingua=it|accesso=4 maggio 2022-05-04}}</ref> che comprende un insieme di tecnologie di sviluppo di [[software]] per il [[web]], commercializzate da [[Microsoft]]. Utilizzando queste tecnologie, gli sviluppatori possono realizzare [[Applicazione web|applicazioni web]] e [[Web service|servizi web]] (''web service'').
 
È stato rilasciatopubblicato per la prima volta nel gennaio 2002<ref>{{Cita web|url=https://umbraco.com/knowledge-base/aspnet/|titolo=What is ASP.NET? {{!}} The Open Source Web Framework|sito=umbraco.com|lingua=en-US|accesso=4 maggio 2022-05-04}}</ref> con la versione 1.0 del [[.NET Framework]] ed è il successore della tecnologia [[Active Server Pages]] (ASP) di Microsoft. ASP.NET è costruito sul [[Common Language Runtime]] (CLR), permettendo ai programmatori di scrivere codice ASP.NET usando qualsiasi linguaggio .NET supportato. Il framework di estensione ASP.NET [[SOAP]] permette ai componenti ASP.NET di elaborare messaggi SOAP.
 
Il successore di ASP.NET è ASP.NET Core. È una reimplementazione di ASP.NET come [[framework per applicazioni web]] modulare, insieme ad altri framework come [[Entity Framework]]. Il nuovo framework usa il nuovo progetto open-source .NET Compiler Platform (nome in codice "Roslyn") ed è [[multipiattaforma]]. [[ASP.NET MVC Framework|ASP.NET MVC]], ASP.NET Web API, e ASP.NET Web Pages (una piattaforma che usa solo pagine Razor) si sono fusi in un MVC 6 unificato<ref>{{Cita web|url=https://docs.microsoft.com/en-us/aspnet/core/|titolo=ASP.NET documentation|autore=wadepickett|sito=docs.microsoft.com|lingua=en-us|accesso=4 maggio 2022-05-04}}</ref>.
 
== Principi su cui si basa ASP.NET ==
Riga 31:
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 (informatica)|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 [[Programmazione ad eventi|eventi]] ad essi associati (ad esempio alla pressione di un pulsante). La differenza sta nel fatto che, mentre i controlli Windows disegnano se stessi sullo schermo, i controlli web producono blocchi di codice [[HTML]] che vanno ad inserirsi automaticamente nella pagina che deve essere inviata al [[browser]] dell'utente finale.
 
== Paradigma di programmazione di ASP.NET ==
Riga 38:
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 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, implementa la struttura del CLR (Common Language Runtime), la cui base è formata da un [[compilatore]] JIT (''[[Just in time (programmazione)|just in time]]''). Ciò significa che il codice intermedio prodotto, chiamato IL (Intermediate Language) ed identico per tutti i linguaggi di alto livello impiegati, viene compilato in [[linguaggio macchina]] al momento della prima esecuzione. Utilizzando diversi compilatori ''just in time'' è possibile riutilizzare lo stesso IL intermedio su [[Microprocessore|processori]] diversi. Questa tecnica viene definita ''Jitting''.
Questo tipo di compilazione è ben diverso da linguaggi come ad esempio [[Java (linguaggio di programmazione)|Java]], nei quali invece tutto il codice gira su una vera e propria [[macchina virtuale]], mentre in .NET al momento dell'esecuzione il programma è effettivamente in linguaggio macchina come tutti gli altri linguaggi.
 
Riga 210:
 
== Confronto con PHP ==
PHP è diretto concorrente di ASP.NET. La scelta dei due linguaggi ha pro e contro a seconda delle proprie esigenze<ref>{{Cita web|url=https://appinventivwww.arkasoftwares.com/blog/php-vs-asp-net/|titolo=PHP vs ASP.NET: Top Differences for Beginners’ Understanding|sito=AppinventivArka Softwares|data=2813 settembreottobre 20182023|lingua=en|accesso=307 gennaiomarzo 20212024}}</ref><ref>{{Cita web|url=https://www.pixelcrayons.com/blog/php-vs-asp-net-how-to-choose-the-right-one/|titolo=ASP.Net vs PHP: Which is Better?|autore=Varun Bhagat|sito=PixelCrayons|data=8 ottobre 2019|lingua=en|accesso=30 gennaio 2021}}</ref><ref>{{Cita web|url=https://theonetechnologies.com/blog/post/net-framework-vs-net-core-a-complete-quick-comparison|titolo=.NET Framework Vs .NET Core: A Complete Quick Comparison|autore=Kiranbeladiya|sito=TheOneTechnologies |data=24 Septembersettembre 2021|lingua=en|accesso=24 Junegiugno 2022}}</ref>:
{| class="wikitable"
| colspan="2" |'''PRO'''
Riga 241:
|}
== Note ==
<references responsive="0" />
 
== Voci correlate ==
Riga 252:
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* [{{cita testo|url=http://aspnet.html.it/ |titolo=aspnet.HTML.it]}} Guide, articoli di approfondimento, script, FAQ e forum dedicati alla tecnologia Microsoft per il Web
* {{cita web|url=http://www.aspitalia.com/|titolo=ASPItalia.com: storica community su ASP e ASP.NET, dal 1998}}
* {{cita web|url=http://www.webmasterpoint.org/funzione/8/controlliserver_ASPNET/index.html|titolo=Controlli Server ASP.NET}}
* {{cita web|url=http://www.ugidotnet.org/|titolo=UGIdotNET: User Group italiano su .NET}}
* {{cita web|1url=https://msdn.microsoft.com/vstudio/express/vwd/|2titolo=Visual Web Developer Express Edition 2005|lingua=en|accesso=25 aprile 2019|urlarchivio=https://web.archive.org/web/20070718060837/http://msdn.microsoft.com/vstudio/express/vwd/|dataarchivio=18 luglio 2007|urlmorto=sì}}
* {{cita web|url=http://www.dotnetspace.com/|titolo=DotNetSpace articoli su ASP.NET 2.0|lingua=en}}
* {{Cita testo|lingua=en}} [|url=http://en.csharp-online.net/ |titolo=C# Online.NET] {{Webarchive|urlurlarchivio=https://web.archive.org/web/20181119030119/http://en.csharp-online.net/ |data=19 novembre 2018 }} - C# e .NET enciclopedia.
* {{cita web|url=http://www.aspdev.org/asp.net/|titolo=articoli su ASP.NET|lingua=en}}
* {{cita web|1url=http://www.developerfusion.co.uk/aspnet/|2titolo=Developer Fusion; tutorial e codice sorgente ASP.NET|lingua=en|accesso=3 giugno 2005|dataarchivio=3 marzo 2006|urlarchivio=https://web.archive.org/web/20060303180938/http://www.developerfusion.co.uk/aspnet/|urlmorto=sì}}
* {{cita web|sito=[[W3Schools|w3schools.com]]|url=https://www.w3schools.com/aspnet/|titolo=W3Schools tutorial|lingua=en}}
* {{cita web|url=https://www.mono-project.com/|titolo=Mono: implementazione open source del Framework .NET compatibile con molte piattaforme|lingua=en}}
* {{cita web|url=http://www.aspalliance.com|titolo=ASPAlliance: Tutorial ASP e ASP.NET|lingua=en}}
* {{cita web|1url=http://www.visualbuilder.com/aspnet/tutorial/|2titolo=VisualBuilder: Tutorial ASP.NET|lingua=en|accesso=12 ottobre 2007|urlarchivio=https://web.archive.org/web/20071012155209/http://visualbuilder.com/aspnet/tutorial/|dataarchivio=12 ottobre 2007|urlmorto=sì}}
 
{{Framework per applicazioni web}}