.NET je platforma pro běh nových distribuovaných aplikací. Jelikož jsou jakákoli řešení postavená na .NET vlastním programováním (tedy ne skriptováním, jak jste byli zvyklí z technologií typu ASP/PHP), budu je souhrnně nazývat aplikacemi. Uvedení .NETu a aplikací na něm postavených přirovnává Microsoft nesměle k přechodu z DOS na Windows.

Aplikace postavené na .NET platformě budou mít stejné rysy a stejný model návrhu, ať už jsou to aplikace pro přenosná zařízení typu Pocket PC, aplikace pro desktopové použití, pro velmi výkonné serverové produkty či – což je pro nás nejdůležitější – tvorbu webových stránek. Pokud si budete chtít např. naprogramovat vlastní verzi Wordu pro PC, tak vám nic nebrání. Zde se budu zaobírat pouze vlastnostmi .NETu pro vývoj webových stránek, ale vězte, že v horizontu jednoho až dvou let bude .NET platforma zasahovat do života všech programátorů vyvíjecích svá softwarová řešení na implementacích firmy Microsoft. Jak jsem již uvedl, srdcem platformy .NET je jádro nazvané .NET framework. Toto jádro se stará o tři základní úkoly:

  • Je run-timemovým prostředím pro běh aplikací, tzn. aplikace pro něj napsané jsou s ním pěvně spjaty a bez něho ani nejdou spustit.
  • Poskytuje možnosti pro tvorbu ASP.NET stránek i webových služeb.
  • Obsahuje velmi širokou řadu knihoven, objektově orientovaných tříd usnadňujících řadu úkolů (bezpečnost, komunikaci, práce s databázemi a datovými zdroji).

Pokud jste někdy programovali pod Windows, dal by se .NET framework s trochou nadsázky přirovnat k WIN32 API. Oproti WIN32 API není závislý pouze na funkcích a jejích volání, ale je plně objektově orientovaný. Přítomnost velkého množství knihoven a tříd (které by se dalo např. pro programátory v jazyce C++ přirovnat k MFC, ATL nebo WTL) je opravdu přínosem, protože v sobě obsahují velkou část kódu, kterou jste byli nuceni při vývoji ASP stránek psát ručně.

Co vám .NET přináší

.NET framework má mnoho nových vlastností, speciálně pro tvorbu webových stránek. Podle tvrzení Microsoftu vám jeho použití zásadně sníží dobu návrhu i tvorby webových stránek. Mohu potvrdit, že vytvoření webové aplikace je při použití .NETu asi 2 až 3krát rychlejší, než při použití jakéhokoli skriptovacího jazyka.

V souvislosti s konáním VSLive! v San Franciscu 13.2.2002 si nedovolím opomenout představení finální verze Visual Studia.NET (VS.NET) – nástupce známého Visual Studia 6.0, jehož součástí byl pro tvorbu webových stránek hojně využívaný Visual InterDev. Z vlastní zkušenosti s VS.NET, který využívám již od beta 2 vím, že usnadňuje vývoj všemi možnými prostředky. Dokonce i integrovaný wysiwyg editor, který jsem původně nechtěl vůbec používat.

Všichni asi víte, co se objevilo na výstupu podobných wysiwyg editorů od Microsoftu typu Word nebo Frontpage za šílenou směsici formátovaného HTML. Tady mě editor příjemně překvapil. Nejenže jeho výstup plně vyhovuje specifikacím XHTML, ale je i velmi čistý, co se do přebytečného formátování HTML kódu týče. Aplikace však budu psát s použitím poznámkového bloku a .NET frameworku SDK.

Nyní se pokusím v následujích bodech shrnout nejdůležitější myšlenky, které vám .NET přináší:

  • Řeší doteď velmi rozšířený pojem DLL Hell – tzn. pokud máte dvě aplikace, využívající jednu společnou knihovnu a jedna využívá např. verzi 4 a druhá 5, pak se po nainstalování nové aplikace na počítač, kde už je první nainstalována, knihovna přepíše. V ideálním případě by to neměl být tak velký problém, protože knihovny by měly být navrhované se zpětnou kompatibilitou. Bohužel tomu tak není a proto může tento problém způsobit nepředvídatelné chování, v horším případě nemusí jít první aplikace ani spustit. .NET tento problém řeší verzováním knihoven a digitálním podpisem knihoven.
  • Zavádí stejný programový model pro programátory ve Visual Basic.NET, jako pro C++.NET, nebo C#.NET. Pokud tedy vy napíšete knihovnu v C++.NET a dostane se do rukou programátoru ve Visual Basicu.NET, půjde mu použít bez jakýchkoli konverzí typů, různorodého krkolomného volání atd.
  • Přináší možnost využití nových programových jazyků do platformy .NET. Pokud jste tedy byli zvyklí programovat např. v perlu, pythonu, fortranu atd., stačí si pouze najít kompilátory (některé firmy či dobrovolná internetová sdružení již na nich pracují) a nic vám nebrání tvořit .NET aplikace ve vašem oblíbeném jazyce. Samozřejmě, že tetno jazyk musí plně vyhovovat normě pro programový model .NETu (viz předcházející bod).
  • Přináší vylepšené mechanismy správy paměti – tzv. Garbage Collector monitorující paměť a zdroje, které jste v aplikaci použili a dle potřeb je vrací zpět systému. Nenastane vám tedy únik paměti, pokud příklad v ASP nenapíšete Set dbConnection = Nothing. Nemůže se tedy stát, že proces vaší aplikace naroste do rozměrů sta megabajtů ve využití paměti, což by mohlo způsobit havárii serveru.
  • Ošetřování chyb je jedním z dalších velmi dobře propracovaných mechanismů, které musí ve specifikaci jazyka obsahovat již ve druhém bodě zmíněný programový model. Chyby se zpracovávají pomocí výjimek a jejich následného zpracování.
  • Neexistuje typ Variant, ani to, že byste kompilátoru o proměnné neřekli, jakého je typu (viz ASP). Jazyky postavené na .NETu jsou velmi typově přísné. Ze začátku se vám to může oproti ASP zdát jako zbytečná krutost, ale z vlastní zkušenosti mohu potvrdit, že vám to ušetří nejednu bezesnou noc při hledání těchto dost těžko nalezitelných chyb.

Tato hlavní zlepšení by se měla v důsledku jevit jako rychlejší vývoj kódu, s velkým důrazem na bezpečnost a stabilitu.

Jak získat .NET framework a jeho minimální nároky

Pro úplnost uvádím odkazy na stažení finální verze .NET frameworku, který je zdarma na serveru firmy Microsoft:

.NET framework (22MB) zde

Je nutný pro běh jakékoli aplikace postavené nad .NET frameworkem. Jeho nároky jsou: jakýkoli operační systém Windows od Microsoftu kromě Windows 95 (u Windows NT je nutný service pack 6a), Microsoft Internet Explorer 5.01 nebo vyšší.

.NET framework SDK (137MB) zde

Je nutný pro vývoj aplikací postavených nad .NET frameworkem – obsahuje kompilátor jazyka c#, vb.NET, linker MSIL, příklady a potřebnou dokumentaci. Jeho nároky na systém jsou: Microsoft Windows NT se service packem 6a, Microsoft Windows 2000 a Microsoft Windows XP Professional.

Starší komentáře ke článku

Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.

Žádný příspěvek v diskuzi

Odpovědět