V úvodním dílu seriálu se podíváme na .NET Framework a jazyk C#,
.NET Framework
.NET Framework je základní běhové prostředí potřebné pro běh aplikací napsané pro tuto platformu Platforma . NET je jazykově nazávislá a obsahuje velké množství knihoven, které jsou těmto jazykům společné. Aplikaci pro platformu .NET můžeme psát v C# (jazyk vyvinutý s platformou .NET), řízeném C++, VB.NET, J#, Python, Perl, Pascal nebo dokonce i v COBOLT.
.NET obsahuje tři základní stavební bloky: CLR, CTS a CLS.
CLR (Comnon Language Runtime)
Na tuto vrstvu se má správně odkazovat jako na společný runtime jazyků. Primární rolí CLR je, aby se vyhledával, načítal a spravoval typy .NET. Úkolem CLR je také správa nízkoúrovňových detailů, jako jsou správa paměti a provádění bezpečnostních kontrol.
CTS (Common Type System)
Společný systém typů CTS plně popisuje všechny datové typy a programovací konstrukce, které runtime podporuje, specifikuje, jak mohou spolu tyto entity komunikovat, i instrukce o tom, jak se mají reprezentovat ve formátu metadat .NET.
CLS (Common Language Specification)
Společná specifikace jazyků CLS definuje společnou podmnožinu společných typů a programovacích konstrukcí, které podporují všechny jazyky .NET. Pokud budujete, typy .NET vystavující pouze tyto vlastnosti, které jsou v souladu s CLS, můžete se spolehnout, že tyto typy a programovací konstrukce mohou použít všechny programovací jazyky vnímající .NET. V případě že vytvoříte datový typ, který nebude v souladu s CLS, nebudete moci zaručit, že vaše knihovny budou kompatibilní v jakémkoli jazyku vnímající .NET.
Verze .NET
- 1.0 – rok 2002, vývojové prostředí Visual Studio .net, uveden jazyk C# 1.0
- 1.1 – rok 2003, vývojové prostředí Visual Studio 2003
- 2.0 – rok 2005, nové verze jazyků C# 2.0 a VB.NET 8.0, vývojové prostředí Visual Studio 2005
- 3.0 – rok 2007, vývojové prostředí Visual Studio 2005 nebo 2008
- 3.5 – rok 2007, nové verze jazyků C# 3.0 a VB.NET 9.0, vývojové prostředí Visual Studio 2008
Verze 3.0 a 3.5 jsou v podstatě rozšíření postavená nad stabilní verzí runtime 2.0.
Historicky byla vždy konkrétní verze Visual Studia spjata s konkrétní verzí .NET Frameworku. Změna nastala s verzí 3.0 (vzhledem k její povaze rozšiřujících knihoven nad 2.0 lze používat Visual Studio 2005) a zejména s verzí Visual Studio 2008, která jako první podporuje multitargeting – možnost psát aplikace pro .NET Framework verzí 2.0, 3.0 i 3.5, vzhledem ke společnému jádru.
Součásti .NET
- ASP.NET – technologie pro vývoj webovýc aplikací
- Windows Communications Foundation (WCF) – technologie pro vývoj webových služeb a komunikační architektury služeb
- Windows Workflow Foundation (WF) – technologie pro definování heterogenních sekvenčních procesů
- Windows Presentation Foundation (WPF) – technologie pro vytváření vizuálně působivého grafického uživatelského rozhraní pro aplikace
- Windows CardSpace – implementace standardu Information Cards
- LINQ – Language Integrated Query, objektový přístup k datům v databázi, XML a objektech, které implementují rozhraní IEnumerable
Jazyk C#
C# [sí šarp] je jazyk specificky vyvinutý společností Microsoft pro tuto platformu. C# používá podobnou syntaxi jako Java (stejný ale není). C# a Java jsou založené na syntaktických konstrukcí C++. Stejně jako Java je vyčištěnou verzí jazyka C++, můžeme C# brát jako vyčištěnou verzi Javy. C# a Java pocházejí ze stejné rodiny jazyků.
Jazyk C# je hybrid několika jazyků, ale výsledkem je produkt, který je syntakticky tak čistý (možná i čistší) jako Java, stejně jednoduchý ja VB6 a poskytuje stejnou sílu a flexibilitu jako C++. Jazyk C# poskytuje následující schopnosti:
- Nepožaduje se manipulace s ukazateli. Máte-li potřebu s ukazateli i přesto v C# manipulovat, nic Vám nebráni tak činit,
- Automatická správa paměti „garbage collection“ (odvoz odpadků).
- Formální konstrukce pro výčty, struktury a vlastnosti tříd.
- Přetěžování operátorů.
- Možnost budovat generické typy a generické členy.
- Podpora programovacích technik založených na rozhraních.
Za poslední zmíňku stojí že jazyk C# je dodáván jako součást platformy .NET . Pomocí jazyku C# lze budovat jen aplikace, které se mohou vykonávat uvnitř platformy .NET. Pomocí C# nelze budovat neřízenou aplikace API Win 32.




Uvítal bych nějaký seriál o převodu aplikací v NET z Windows do MONO.
No přemýšlel jsem o tom, ale MONO zatím moc okoštovaný nemám. Náš produkt pro propojení eshopu a Pohody jsem úspěšně rozjel i pod MONEM, ale zatím si o tom netroufám psát, protože bych se to sám učil. Ale přemýšlím o Bc. práci tak že by tam toto bylo zakomponované, vývojo pod DOT.net + převod na mono
Ja taky teďka poznávám MONO, ale nemám takové štěstí, jako vy. Aplikaci jsem jakžtakž spustil, ale zlobí české znaky a splitcontainer se zobrazuje nějak divně. Jinak doufám, že MONO zapracuje na vykreslování WinForms, tedka to vypadá opravdu hrozně.
Na internetu jsem četl, že MS pry připravuje verzi i pro alternaticní OS, ale spíše se to blíží k fikci.
Pokud se tady objeví postup, jak upravovat aplikace pod MONU, pokud možno zaměřený pro začátečníky, určitě si jej velice rád přečtu.
No u mě to bylo spíš štěstí. V monodevelop jsem jen spustil projekt z VS, zkompiloval a vše chodilo. Pokud MS něco připraví, bude to jen a jen dobře.
A beměk jste problém s diakritikou?
Ne to jsem problém neměl.