Téměř dnes a denně narážím na různé nesmyslné mýty a legendy o nejrůznějších technologiích. V poslední době jsem objevil několik článků, kde si jejich autoři pletou ASP s technologií ASP.NET a matlají všechno do sebe. Očekával bych, že když někdo něco někam píše, tak že také bude vědět, o čem píše, a že tomu bude alespoň trochu rozumět. Chtěl bych se zde tedy pokusit vysvětlit, jaký je rozdíl mezi ASP a ASP.NET. Jedná se totiž o úplně odlišné technologie. Obě dvě jsou od Microsoftu a obě dvě se používají pro vývoj webových aplikací, ale tím podobnost víceméně končí.
Co je to ASP?
ASP, neboli Active Server Pages, je dnes již poměrně stará techologie určená k vývoji webových stránek a aplikací. Stránka v ASP je normální HTML soubor s příponou ASP. Uvnitř tohoto souboru jsou bloky ohraničené značkami <% a %>, uvnitř nichž se nachází programový kód v jazyce VBScript (odnož Visual Basicu) nebo JScript (vlastně serverový Javascript). Tento kód se spustí na serveru a vygeneruje nějaký kus HTML, který se dosadí místo daného bloku kódu, a celé se to pošle klientovi do prohlížeče. Princip je úplně stejný jako v PHP, které je ale používanější, protože má daleko širší paletu funkcí.
Zásadní nevýhodou tohoto způsobu vývoje webů je míchání HTML a programového kódu v souborech, což výrazně snižuje přehlednost a rozšiřitelnost. Nedokonalá podpora objektově orientovaného programování ztěžuje vývoj rozsáhlejších systémů a výkon je také nižší, protože se stránky nekompilují, ale jsou pouze prováděny interpreterem. ASP se dnes sice ještě používá, ale jeho rozšíření je malé.
Co je to ASP.NET?
ASP.NET je daleko novější technologie, která k tvorbě webové stránky přistupuje úplně jiným způsobem. Stránka obsahuje tzv. serverové komponenty, které mají své vlastnosti a události. Tyto události pak mohou spouštět nějaký kód na serveru. Pro programování stránek v ASP.NET si můžeme vybrat jeden z mnoha jazyků, které .NET framework podporuje, nejznámějšími jsou Visual Basic .NET a C#.
ASP.NET 1.0 a 1.1 trpěly několika neduhy, současná nejpoužívanější verze ASP.NET 2.0 je ale poměrně hojně rozšířená a podle mého názoru je to nejlepší technologie pro tvorbu webových aplikací. Dokonale navržený objektový model je stavěn tak, abyste si kdykoliv mohli jakoukoliv část přepsat či přizpůsobit tak, jak potřebujete, a přitom nepřišli o kompatibilitu s částmi ostatními. Máte již připraveno vše, co se vám při vývoji webů může hodit - integrována je správa uživatelských identit, rolí a profilů, dále jsou zde moduly pro tvorbu mapy webu, skinů a témat, máte k dispozici spousty komponent, od jednoduchých formulářových ovládacích prvků po složité tabulky podporující třídění, filtrování, přidávání a úpravy záznamů v databázích. Vše si můžete přizpůsobit a předělat podle svého, během několika minut předěláte web tak, aby byl vhodný pro mobilní zařízení.
Pokud vás technologie ASP.NET zaujala, můžete se ji začít učit. Přeji hodně štěstí.