Untitled - Vitajte na stránkach www.einsty.hostujem.sk
Untitled - Vitajte na stránkach www.einsty.hostujem.sk
Untitled - Vitajte na stránkach www.einsty.hostujem.sk
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
VISUAL STUDIO .NET<br />
vývojové štúdio novej generácie<br />
I N F O W A R E<br />
MIROSLAV KUBOVÈÍK<br />
Microsoft pracuje <strong>na</strong> svojej vízii .NET už dos<br />
dlhé obdobie. Zatia¾ uvádzal <strong>na</strong> trh hlavne serverové<br />
produkty. Blíži sa však doba, keï uvedie <strong>na</strong><br />
trh svoj k¾úèový produkt pre vývojárov – Visual<br />
Studio .NET. Keï patríte k používate¾om Microsoft<br />
Visual Studia v.6 alebo iného vývojového<br />
prostredia <strong>na</strong> ¾ubovo¾nej platforme, iste vás zaujme<br />
súbor noviniek, ktoré pripravuje Microsoft<br />
pre programátorov vo Visual Studiu .NET. V <strong>na</strong>sledujúcich<br />
riadkoch sa dozviete základné èrty<br />
tohto oèakávaného vývojového prostredia. Autor<br />
použil verziu Visual Studio .NET Beta 2.<br />
.NET Framework<br />
Oz<strong>na</strong>èenie „.NET“ v názve nového Visual Studia<br />
nie je žiadny zatrieïovací kód. Nové VS je postavené<br />
<strong>na</strong> .NET Framework, novej výpoètovej platforme,<br />
<strong>na</strong>vrhnutej <strong>na</strong> zjednodušenie vývoja aplikácií<br />
v distribuovanom prostredí internetu. .NET<br />
Framework ponúka programátorom štandardizované,<br />
multijazykové prostredie. Pozostáva<br />
z dvoch hlavných komponentov – Common<br />
Language Runtime (CLR) a .NET Framework<br />
class library.<br />
CLR si môžete predstavi ako agenta, ktorý<br />
spravuje kód vo chvíli spustenia, po<strong>sk</strong>ytuje mu<br />
základné služby, ako sú <strong>na</strong>pr. správa pamäte,<br />
správa threadov a iné, prièom dodržiava striktnú<br />
bezpeènos a korektnos kódu. CLR sa dá opísa aj<br />
ako zväzok vlastností rôznych programovacích<br />
jazykov. Pozostáva zo systému typov, systému<br />
metadát a exekuèného systému, ktorý sa stará<br />
o beh programov. Jeho základnými elementmi sú<br />
zdrojový kód, kompilátory, „medzijazyk“ a runtime<br />
(obr. 1).<br />
Zo štruktúry elementov CLR vyplýva, že zdrojový<br />
súbor je <strong>sk</strong>ompilovaný do „medzijazyka“ –<br />
MSIL (Microsoft Intermediate Language) – inštrukènej<br />
sady nezávislej od CPU, do ktorej je<br />
program <strong>sk</strong>ompilovaný. MSIL nie je interpretovaný,<br />
je konvertovaný <strong>na</strong> strojový kód.<br />
CLR spolupracuje s programovacími jazykmi,<br />
ktoré spåòajú špecifikáciu Common Language<br />
Specification (CLS), ktorá obsahuje sadu konštrukcií<br />
a pravidiel slúžiacich ako príruèka pre<br />
autorov knižníc a kompilátorov. Ak kompilátor<br />
a knižnica tried dodržiava CLS, bude ¾ahko použite¾ná<br />
z akéhoko¾vek iného jazyka rov<strong>na</strong>ko<br />
podporujúceho CLS.<br />
Kód bežiaci v prostredí Common Language<br />
Runtime sa delí <strong>na</strong> spravovaný a nespravovaný.<br />
Spravovaný kód je <strong>na</strong>písaný <strong>na</strong> využitie vlastností<br />
CLR. Po<strong>sk</strong>ytuje „exekuènému stroju“ dostatok<br />
informácií (tzv. metadát) <strong>na</strong> bezpeèný chod<br />
programu. Oz<strong>na</strong>èenie bezpeèný v kontexte CLR<br />
z<strong>na</strong>mená, že „spoloèný jazykový runtime“ sa postará<br />
o debugovanie, interoperabilitu medzi<br />
programovacími jazykmi, správu pamäte a bezpeènos<br />
. CLR je dizajnovaný <strong>na</strong> výkon. Just-In-<br />
Time (JIT) kompilácia umožòuje všetkému spravovanému<br />
kódu spúš anie v <strong>na</strong>tívnom strojovom<br />
jazyku systému, <strong>na</strong> ktorom kód beží.<br />
Primárnym blokom aplikácií .NET Framework<br />
sú tzv. assembly – sady funkcio<strong>na</strong>lít, ktoré sú<br />
vybudované, verziované a distribuované ako<br />
jed<strong>na</strong> implementaèná jednotka, teda ako jeden<br />
alebo viac súborov. Všetky spravované typy<br />
a zdroje oz<strong>na</strong>èené ako private sú prístupné len<br />
v rámci vlastnej implementaènej jednotky. Ak sú<br />
prístupné aj mimo kódu assembly, oz<strong>na</strong>èujú sa<br />
identifikátorom shared. Assembly je samoopisná<br />
prostredníctvom integrovaného opisu – manifestu,<br />
ktorý sa <strong>na</strong>chádza v každej assembly. Práve<br />
táto samoopisná vlastnos umožòuje inštalova<br />
assembly štandardným príkazom xcopy. Zdie-<br />
Obr. 1 Elementy CLR<br />
¾ané (shared) assembly musia by doplnené bezpeènostným<br />
prvkom strong <strong>na</strong>me – kryptografickou<br />
ochranou v systéme. (Na generovanie<br />
strong <strong>na</strong>me je možné použi nástroj sn.exe<br />
z .NET Framework SDK alebo príkaz Generate<br />
strong <strong>na</strong>mes v prostredí VS .NET.) Všetky shared<br />
assembly sú explicitne inštalované do global<br />
assembly cache, v ktorej sa <strong>na</strong>chádzajú aj všetky<br />
triedy z .NET Framework Class Library.<br />
Bezpeènostný aspekt CLR je zastúpený èrtou<br />
Code Access Security (CAS). Ak sa pokúsi spravovaný<br />
kód dosta k chránenému zdroju (<strong>na</strong>pr. do<br />
Active Directory), Common Language Runtime<br />
<strong>sk</strong>ontroluje, èi administrátor garantoval danej<br />
assembly právo <strong>na</strong> prístup k chránenému zdroju.<br />
Privilégiá CAS sa dajú <strong>na</strong>stavi <strong>na</strong>pr. cez s<strong>na</strong>p-in<br />
Mscorcfg.msc, ktorý je súèas ou .NET Framework<br />
SDK.<br />
CLR automaticky spravuje objekty a odkazy <strong>na</strong><br />
ne, uvo¾òuje ich, keï sa už nepoužívajú. Tento<br />
automatický ma<strong>na</strong>žment pamäte eliminuje dve<br />
<strong>na</strong>jèastejšie aplikaèné chyby – memory leaks<br />
(úniky pamäte) a neplatné pamä ové referencie.<br />
Common Language Runtime sa neuzaviera ani<br />
pred používaním komponentov vytvorených<br />
v predchádzajúcej verzii Visual Studia. Interoperabilita<br />
medzi spravovaným a nespravovaným<br />
kódom umožòuje vývojárom pokraèova<br />
v používaní COM komponentov a DLL. Každý<br />
komponent COM je prístupný z .NET Framework<br />
použitím technológie Runtime Callable Wrapper<br />
(RCW). A <strong>na</strong>opak, komponenty .NET Framework<br />
sú prístupné z komponentov COM použitím technológie<br />
COM Callable Wrapper (CCW).<br />
Knižnica .NET Framework Class Library je<br />
komplexný, objektovo orientovaný súbor predpripravených<br />
tried, ktoré môžete použi <strong>na</strong> vývoj<br />
aplikácií – od commandlineových cez programy<br />
s grafickým rozhraním až po webové služby.<br />
Jadrom knižnice je <strong>na</strong>mespace systém, ktorý<br />
obsahuje bázové triedy definujúce spoloène<br />
používané hodnotové a referenèné dátové typy,<br />
udalosti a ich spracúvaèe, atribúty a výnimky<br />
spracovania. Navyše po<strong>sk</strong>ytuje služby podporujúce<br />
dátovú typovú konverziu, manipuláciu<br />
s parametrami metód, matematiku, volania<br />
vzdialených a lokálnych programov, správu<br />
aplikaèného prostredia a doh¾ad <strong>na</strong>d spravovanými<br />
a nespravovanými aplikáciami.<br />
Visual Studio .NET<br />
Nové vlastnosti Visual Studia .NET som si<br />
„o ukal“ v dostupnej BETA 2 <strong>na</strong> Windows 2000<br />
Professio<strong>na</strong>l. Komplet VS .NET pozostáva zo štyroch<br />
cédeèiek. Po spustení inštalaènej procedúry<br />
vás inštalátor (logicky) upozorní <strong>na</strong> nevyhnutnos<br />
zväèši grafické rozlíšenie aspoò <strong>na</strong><br />
800 × 600, pretože integrované vývojové prostredie<br />
VS .NET obsahuje súbor informaèných<br />
a vývojových panelov, ktorých použitie v menšom<br />
rozlíšení by bolo prakticky nemožné a neustálym<br />
rolovaním ve¾mi neefektívne.<br />
Pri inicializácii inštalaèný program deteguje<br />
stav systému a <strong>na</strong> štandardnom Windows 2000<br />
zistí, že operaèný systém nie je doplnený o runtime<br />
.NET Framework, a vyzve vás o vloženie štvrtého<br />
CD z inštalaènej sady – Windows Component<br />
Update (obsahujúceho Windows 2000 SP2, MS IE<br />
6, Windows Installer 2.0 a .NET Framework). Po<br />
aktualizácii systému si z ponúkaného obsahu<br />
Visual Studia .NET môžete vybra inštalované<br />
moduly – Language Tools (Visual Basic .NET,<br />
Visual C++ NET so šabló<strong>na</strong>mi knižníc, s nástrojmi<br />
a runtime knižnicami, novinku Visual C#),<br />
Enterprise Development Tools (Crystal Reports for<br />
VS.NET, VStudio Enterprise Templates, VStudio<br />
SDK pozostávajúce z HTML Helpu v.1.3 SDK, VC<br />
Browser Toolkitu, DIA SDK <strong>na</strong> zí<strong>sk</strong>avanie debugovacích<br />
informácií z PDB súborov, VStudio A<strong>na</strong>lyzer<br />
12/2001 PC REVUE 127