17
F Framework

Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

FrameworkFrameworkFramework

Page 2: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

Ne kete teme do te trajtohen:

• Historia e .NET Framework• Versione te .Net Framework, permiresime• Arkitektura e .Net Framework• Performanca, lidhja me arkitekturen Hardware dhe Sistemin Operativ• Framework-e te tjera dhe ndryshimet me .NET Framework

Page 3: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

HyrjeMicrosoft .NET Framework [.NetFx], eshte nje nga platformat teknologjike me terendesishme te teknologjise se Microsoftit. .Net Framework-u eshte duke bere ndryshime teshpejta dhe permiresime ne menyre qe ti japi sa me shume mundesi zhvilluesve teshperndajne zgjidhje software-ike ne mbare boten.

Microsoft ka leshuar .NET Framework 3.0 (e njohur formalisht WinFx) ne Nentor te 2006.WinFx, i jep mundesine zhvilluesve te zhvillojne aplikacione/ zgjidhje per sistemin e operimitte windows-it, duke perdorur .NET Framework, duke shfrytezuartotalisht Sistemin eOperimit te Windows-it.

Historia e .NET FrameworkMicrosoft-i filloi zhvillimin e .NET Framework [.NetFx], nga fundi i viteve 1990, me emrin“Next Generation Windows Services [NGWS].

Versioni i pare beta i .NetFx u leshua ne Nentor te vitit 2000. Me pas Microsofti leshoi disaversione te .netFx per te bere .NetFx me efektiv dhe gjithashtu ‘developer friendly’.

VERSION NAME VERSION NUMBER RELEASE DATE

1.0 Beta 1 1.0.xxxx.0 Nov - 2000

1.0 Beta 2 1.0.2914.0 20-Jun-2001

1.0 RTM 1.0.3705.0 05-Jan-2002

1.0 SP1 1.0.3705.209 19-Mar-2002

1.0 SP2 1.0.3705.288 07-Aug-2002

1.0 SP3 1.0.3705.6018 31-Aug-2004

1.1 SP1 1.1.4322.2032 30-Aug-2004

1.1 SP1 (Windows Server 2003 Version) 1.1.4322.2300 30-Mar-2005

2.0 RTM 2.0.50727.42 07-Nov-2005

3.0 RTM 3.0.4506.30 06-Nov-2006

Ndryshime te medha te .NET Framewrok-ut pati nga Versioni 1.0 deri 3.0

Page 4: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

.NET Framewrok 1.0Eshte versioni fillestar i Microsoft .NET Framework-ut.

.NET Framewrok 1.1Eshte upgrade-i me i rendesishem i .NET Framwork-ut 1.0, qe siguroi:

1) .NET Compact Framework -nje version i .NET Framewrok per pajisje te vogla.2) Suport per Internet Protocol version 6 (IPv6)3) Suport Build-in per ODBC dhe databaset ne Oracle; me pare te vlefshme si add-on

per .NET Framework 1.0, tani pjese e framework-ut.4) Suport Built –in per kontrollet mobile te AS:NET; me pare te vlefshme si add-on per

.NET Framework, tani si pjese e framework.5) Ndryshime ne siguri, aktivizon Windows Forms, qe te ekzekutohen ne menyre

gjysem te besueshme (semi-trusted) nga interneti dhe aktivizimin e Code AccessSecurity ne aplikacionet ASP.NET.

6) Shume ndryshime API dhe ndryshime te tjera.

.NET Framework 2.0Ky version doli bashke me Windows Server 2003 Release Candidate [RC}.Ndryshime ne .NET FRAMEWORK qe nga 1.1:

1) Full 64-bit support, si per platformat x64 dhe IA64.2) Support gjuhesor per ndertim generic, direct ne .NET CLR.3) Shume shtime dhe permiresime te ASP.NET web controls.4) Data kontrolle te reja me data bindinf deklerativ.5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it,

etj.6) Shume ndryshime API dhe ndryshime te tjera.

.NET Framework me Visual Studio .NET

Microsoft Visual Studio .NET eshte nje nga mjediset e integruar te zhvillimit ( IntegratedDevelopment Environment [IDE]), per te zhvilluar aplikacione ne gjuhet e mundshme per.Net (C#, .NET, VB.NET, etc)Leshimi i pare ne treg i Visual Studio .Net kishte dhe .Net Framewrk 1.0 si pjese te tij.Leshimi i pare njihet si Visual Studio 2002.Leshimi i dyte i Microsoft Visual Studio.Net (Visual Studio .NET 2003) kishte .NET Framework1.1, si pjese te tij.

Page 5: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

Leshimi i trete Microsoft Visual Studio.Net (Visual Studio .NET 2005) kishte .NET Framework2.0, si pjese te tij.

.NET Framework 3.0 [WinFx]

Versioni i .NET Framework , formalisht njihet si WinFx (“Win Effects”)Per te qene me te qarte WinFx eshte .Net Framework 2.0 me shtimin e kater teknologjive tereja specifike , si me poshte:

1) Windows Presentation Foundation [WPF]2) Windows Communication Foundation [WCF]3) Windows Workflow Foundation [WF]4) Windows Card Space [WCS]

Figura 1

Figura me larte paraqet strukturen grafike te .Net Framework 3.0 [WinFx].Secila nga teknologjite e mesiperme jane zhvilluar per tu perdorur me gjuhet e programimitte njohura nga .NET (si C#.Net, VB.Net, etj…), qe do te thote se te gjitha keto teknologji janete zhvilluara si kod i menaxhuar /API.Keto kater teknologji, aftesojne zhvilluesit e .Net Framework 3.0, te zhvillojne aplikacioneper Sistemin operativ te Windows-it.

.NET FRAMEWORK 3.0 [WINFX] = .NETFX 2.0 + WPF + WWF + WCF + WCS.

Nje perkufizim per WinFx do te ishte: The Managed Code Programming Model forUpcoming Microsoft Windows Operating Systems.

Page 6: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

Kater komponentet e .NET Framework [WinFx]

Windows Presentation Foundation [WPF]

WPF, i njohur formalisht si Avalon, eshte ana grafike e nensitemit te Microsoft .NETFramework 3.0 [WinFx].

WPF siguron nje model konsistent programimi, per ndertimin e nderfaqeve grafike (UI), sidhe siguron nje ndarje te qarte mes nderfaqes grafike dhe logjikes se biznesit(Code Behind),duke e lidhur veten me Extensible Application Markup Language [XAML], ne menyre qe teruaje te gjithe informacionin ne UI, kurse logjika e biznesit do te vendoset ne skedarinkorrespondues .xaml.cs.

WPF afteson zhvilluesit dhe dizenjatoret te krijojne nderfaqe me nje larmi te nje shkalle telarte.

WPF adreson boshllekun e komunikimit qe ekziston mes Multimedia Designer-it dheZhvilluesit duke aktivizuar Dizenjuesit te krijojne ne formen e XAML-s duke perdorur XAMLdesigners, sic jane per shembull: Microsoft Expressions and Developers.

WPF afteson dizenjuesit te krijojne grafika 2D e 3D nepermjet programimit.

Aplikacionet WPF mund te vendosen ne desktop ose ne nje web browser.

Windows Communication Foundation [WCF]

WCF eshte nje nga kater komponentet te njohura si .NET Framework 3.0 [WinFx]. WCFnjihet formalisht si "Indigo."

Zhvillimi i "Indigo" filloi ne fillimet e 2001-shit, para mbarimit te versionit .NET Framework.Indigo doli per here te pare ne publik ne 2003 Professional Developers Conference, si njenga “pilaret e Longhorn”.

Ne 18 janar te 2009. Microsofti leshoi nje preview te komponenteve WinFX runtime dhe njelicence per Windows Communication Framework. Komponentet qe u paraqiten perfshinindhe WinFX Runtime Components, WinFX SDK, Visual Studio Extensions for Workflow, dheVisual Studio "Orcas" CTP Development tools for WinFX. Aplikacionet server te bazuara nekete teknologji mund te perdoren ne mjediset e zhvillimit vetem duke marre nje licencefalas.

Page 7: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

WCF unifikon Web Servicet, .NET Remoting, COM+Enterprise Services dhe Message Queuesne nje model "Service Oriented Programming" .WCF = ASMX [with WSE] + .NET Remoting +COM+ Enterprise Services + MSMQ .

WCF eshte dizenjuar ne akordance me principet e Service oriented architecture* per tesuportuar sistemet e shperndara ku sherbimet jane konsumohen nga klientet. Klientetmund te konsumojne shume servise dhe serviset mund te konsumohen njekohesisht ngashume kliente.Serviset kane nje nderfaqe WSDL , nepermjet te ciles WCF mund te perdorin serviset.WCF implementon disa standarte te web service-it WS* si: WS-Addressing, WS-ReliableMessaging and WS-Security.

*Service oriented architecture eshte nje bashkesi fleksibel e principeve te dizenjimit teperdorura gjate fazes se sistemeve te zhvillimit dhe integrimin ne kompiuter.Nje sistem i bazuar ne arkitekturen SOA do te paketoje funksionalitete si nje suit esherbimeve interoperuese, qe mund te perdoren brenda shume sistemeve njekohesisht ngadisa domaine biznesi.

Windows Workflow Foundation [WF]

Workflow eshte nje bashkesi aktivitetesh qe koordinon njerezit dhe/ose software-t per teperformuar nje proces biznesi te orientuar. Windows Workflow Foundation ndihmon nepercaktimin, ekzekutimin dhe menaxhimin e workflow-t. Windows Workflow FoundationAPI siguron nje model programimi dhe mjete per ndertimin e aplikacioneve workflow.

Extensible Object Modeling Language [XOML] bazuar ne XAML perdoret per te deklaruarstrukturen e workflow-t, logjikes se biznesit per aktivitetet workflow qe mund te behennepermjet gjuheve qe njeh .NET Framework (si C# .NET, …) Brenda file-t .xoms.cs.

Windows Card Space [WCS]

WCS, formalisht i njohur si InfoCard, eshte nje framework i zhvilluar nga Microsoft i cili ruanidentitetet dixhitale te nje personi dhe siguron nje nderfaqe te unifikuar per te zgjedhuridentitetin e nje trasaksioni te vecante, si per shembull: logimi ne nje website.

WCS eshte nje pjese qendrore e pjeseve te Microsoftit per te krijuar nje IdentityMetasystem ose nje shtrese identiteti te sigurte dhe interoperuese per internetin.

WCS lejon perdoruesit te krijojne identitete per veten e tyre, te cilat mund te permbajne njeapo me shume fusha per informacion mbi cilesine e librit telefonik. Transaksione te tjeramund te kerkojne nje identitet te menaxhueshem nga nje provider identiteti te sigurte, siper shembull nje banke nje agjensi punesimi apo qeveritare.

Page 8: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

WCS eshte ndertuar ne maje te stives se protokolleve te Serviceve Web (Web ServicesProtocol Stack), si nje bashkesi e protokolleve te bazuar ne XML, duke perfshire dhe WS-Security, WS-Trust, WS-Metadata Exchange and WS-SecurityPolicy.Kjo do te thote qe cdo teknologji ose platforme qe suporton protokollet WS* mund teintegrohet me CardSpace.

Sisteme operative te suportuara nga NET Framework 3.0 [WinFx]

1. Longhorn (Windows code name)2. Windows Server 2003 Service Pack13. Windows Vista4. Windows XP - Service Pack2

Microsoft Windows SDK for .NET Framework 3.0 [WinFx]

Windows Software Development Kit [SDK] eshte SDK per zhvillimin e aplikacioneveWindows. Windows SDK permban dokumentacione per te gjithe nderfaqet API te .NetFramework 3.0 [WinFx], tipe, etj, te gjetura ne Sistemin operativ te Windows-it. Gjithashtupermban shembuj, mjete, dhe mjedise build-in. Windows SDK perfshin te gjithe permbajtjene asaj qe ndodhet ne Platformen SDK, API jo te menaxhueshme, shembuj dhe mjete.

Windows SDK mund te perdoret si nje guide baze per te zhvilluar aplikacione per Sistemetoperative te Wndows-it, duke perdorur .NET Framework 3.0 [WinFx]. .NET FrameworkVersions and Dependencies.

Cdo version i .NET Framework permban gjuhen CLR si nje komponente baze, dhe perfshinkomponente shtese si librarite baze te klasave, dhe librari te tjera te menaxhueshme.

Me poshte paraqitet ne menyre grafike dhe te permledhur historia e versioneve dheversioni perkates per cdo Windows.

Page 9: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

Karakteristikat e versioneve te .NET Framework

Cdo version i ri .Net Framework permban karakteristika nga versionet e meparshme si dheshton karakteristika te reja. Megjithese CLR eshte komponentja berthame e .NETFramework, CLR identifikohet nga numri i vet i versionit, te ndare nga numri i versionit i.NET Framework. Disa vesrione te .NET Framework, perfshijne nje version te ri te CLR-s, pordisa te tjere perdorin akoma versione te vjeter.Per shembull, .NET Framework v4 perfshin CLR v4, por .NET Framework 3.5 perfshin CLR 2.0.(nuk ka v3).Version i CLR-s ne te cilin po ekzekutohet aplikacioni mund te percaktohet duke nxjerrevleren e Versionit te Mjedisit (Environment.Version property)Nuk eshte i nevojshme instalimi i versioneve te meparshem te .NET Framework ose te CLR,perpara se te instalohet versioni me i fundit; cdo version ka komponentet e nevojshme.

Tabela me poshte ben nje permbledhje te shkurter te versioneve te .NET Framework teshoqeruar ame versionet perkatese te CLR-s. gjithashtu paraqet dhe versionin e VisualStudios, qe siguron mjedisi i zhvillimit, me futjen e nje versioni te ri te .NET Framework.

Page 10: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

Arkitektura e .NET Framework

Platforma e .NET Framework fut koncepte te reja, teknologji e terma. Qellimi i kesaj pjeseeshte te jape nje pamje te te gjithe .NET Framework, per te treguar se si eshte arkitekturuar,te fuse disa teknologji te reja, dhe te perkufizoje disa nga termat e reja. Gjithashtu do tepershkruhet procesi i ndertimit te nje source code, per nje aplikacion ose per nje bashkesikomponentesh te shperndara.

Kompilimi i kodit burim ne module te menaxhueshme

Hapi i pare eshte percaktimi i tipeve te aplikacionit ose komponenteve qe do te ndertohen.Pasi cdo gje eshte dizenjuar dhe specifikimet jane shkruar behemi gati per zhvillimin.

Hapi i dyte eshte percaktimi i gjuhes se programimit, qe duhet perdorur. Kjo zakonisht eshtenje detyre e veshtire sepse gjuhe te ndryshme kane aftesi te ndryshme. Per shembull, negjuhen C/C++, kemi kontroll te nje niveli te ulet mbi sistemin. Ju mund ta menaxhonimemorien sipas deshires, te krijoni threade ne qofte se eshte e nevojshme, etj. Visual Basic6, nga ana tjeter lejon ndertimin e aplikacioneve UI shume shpejt dhe lejon kontrollin eobjekteve COM dhe databaseve.

Ne qofte se perdoret .NET Framework , cdo gjuhe e njohur nga platforma, eshte e lidhur megjuhen CLR, qe ndikon ne marrjen e vendimit per zgjedhjen e gjuhes se programimit.CLR, Common Language RunTime, eshte ajo cka emri thote vet; Nje kod qe ekzekutohet nekohe, qe perdoret nga gjuhe programimi te ndryshme. Karakteristikat e CLR-s jane tevlefshme tek cdo gjuhe programimi qe njihet nga .NET Framework.Ne qofte se gjuha perdor exceptions per te reportuar gabimet, atehere te gjithe gabimet tekgjuhet e tjera raportohen nepermjet exceptions. Ne qofte se CLR te lejon krijimin e njethreadi, atehere cdo gjuhe mund te krijoje nje thread. Microsoft ka krijuar disa kompilatoregjuhe te lidhura me CLR, si: C++ me ektensione te menaxhueshme, C# , Visual Basic .NET,Jscript, Java, dhe nje gjuhe ndermjetese (IL-intermediate language) Assembler.

Me poshte paraqitet procesi i kompilimit te souce code:

Page 11: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

Sic tregohet nga figura, mund te krijohen file source code duke perdorur cdo gjuheprogramimi qe suporton CLR. Me pas perdoret kompilatori korrespondues per te kontrolluarsintaksen dhe per te analizuar source code-in. Pavaresisht kompilatorit qe perdoret,rezultati eshte nje modul i menaxhueshem. Nje modul i menaxhueshme eshte nje file iekzekutueshem standart i Windows-it (PE) qe kerkon CLR-n per tu ekzekutuar.

Nje Modul i menaxhueshem perbehet nga keto pjese:

Pjesa PershkrimiPE header Ky eshte nje file header standart i Windows PE , i cili eshte i

ngjashem me Common Object File Format (COFF) header. PEheader-i tregon llojin e file-it GUI, CUI ose DLL , dhe gjithashtuka nje stamp kohore qe tregon kur eshte kompiluar file-i . Permodule qe permbajne vete kod IL, totali informacionit ne PEheader injorohet. Per module qe permbajne kod nativ CPU-je, header-i permban informacione per kodin nativ te CPU

CLR header Ky header permban infomacionin qe e ben kete nje modul temenaxhuar . Ajo permban versionin e CLR qe nevojitet , disashenime, MethodDef metadata token –in e modulit temenaxhuar entry point method, dhe vendodhjen , masen emetadates te modulit , burimeve , emrave, disa shenimeve .

Metadata Cdo modul i menaxhuar permban tabela metadata, nga tecilat ka dy tipe kryesore: Ato qe pershkruajne tipet dhepjesmarresit qe jane te percaktuara ne kodin tuaj , dhe ato qepershkruajne tipe dhe antare te referencuara ne kodin tuaj .

Te gjithe kompilatoret e kodeve te prodhuara me pare , ishin te fokusuar tek nje arkitektureCPU-je specifike , si pershembull x86, IA64, Alpha, PowerPC, por te gjithe kompiluesit CLR-

Page 12: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

compliant prodhojne kod gjuhe te ndermjetme (intermediate language IL) . Kodi IL eshtendonjehere i referencuar si Kod i Menaxhuar, per shkak se jetegjatesia dhe ekzekutimi i tijjane te menaxhuar nga CLR .

Metadata eshte nje teresi tabelash me te dhena qe pershkruajne cfare eshte percaktuar nemodul , gjithashtu ka tabela qe percaktojne se cfare referencon moduli i menaxhuar . Gjejae e rendesishme per tu evidentuar eshte qe CLR metadata eshte shume here me ekompletuar se paraardhesit e saj , dhe metadata eshte gjithmone e asociuar me file-in qepermban IL code ndryshe nga librarit e llojit , dhe file-et IDL. Ne fakt metadata eshtegjithmone e e shkrire ne te njejten EXE/DLL ashtu si kodi , duke e bere te pamundur per tindare te dyja . Qe kur metadata dhe kodi jane te prodhuara nga kompilatoret ne te njejtenkohe , dhe jane te lidhur ne te njejten modul te menaxhuar , metadata dhe kodi IL qe ajopershkruan , nuk jane kurre jashte sinkronizimi me njera tjetra .

Ne kete figure, paraqiten disa nga emrat e fileve te disa moduleve dhe burimeve (te dhena)nga nje tool. Ky tool prodhon nje file te vetem PE qe paraqet grupimin logjik te fileve. File-iPE permban nje bllok te dhenash te quajtur manifest , i cili eshte thjesht nje bashkesitabelash te metadates. Keto tabela pershkruajne asemblimin: file-et e krijuara, tipet publikete eksportuara nga filet ne assemby, dhe burimet ose data filet qe shoqerojne ate.

Page 13: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

By default kompilatoret kane si funksion te kthejne modulin e menazhueshem ne njeassembly. Qe do te thote se nqs kompilatori emeton nje modul te menaxhueshem, aipermban nje manifest. Manifesti tregon qe asemblimi perbehet nga nje file i vetem.Keshtu per projektet qe kane vetem nje modul te menaxhueshem dhe jo file burim,asemblimi do jete moduli i menaxhueshem, dhe nuk ka nevoje per performimin e hapave temetejshme gjate ndertimit te procesit. Ne qofte se deshirohet te grupohen bashkesi fileshne nje asemblim, atehere nevojiten me shume toole si assembly linker, AL.exe, etj, si dheopsionet e tyre command-line.

Nje asemblim lejon shperberjen e nocioneve logjike dhe fizike te nje komponenteje tedislokueshme dhe te riperdorshme. Menyra e particiomit te kodit dhe te burimeve ne file tendryshme varet nga ju. Per shembull mund te vendosen te dhena specifike mbi tipet qeperdoren rralle ne nje file te ndryshem nga ai assemblimit. Filet e ndare mund tedownloadohen nga web-i sipas deshires. Ne qofte se filet nuk jane te nevojshem, ato nukdownloadohen duke ruajtur ne kete menyre dhe vend ne HDD si dhe duke shkrutuar kohene instalimit. Nje asemblim lejon ndarjen fizike te fileve dhe njekohesiht ti trajtoje ato si njebashkesi e vetme.Nje modul ne nje asemblim perban informacion, duke perfshire ketu dhe numrat eversioneve, mbi referencat e asemblimeve. Ky informacion e ben asemblimin vete-pershkrues. Me nje fjale , CLR di gjithcka qe nje asemblim ka nevoje qe te ekzekutohet.Asnje informacion shtese nuk nevojitet per Regjistrin apo per Direktorine Aktive, prazhvillimi ne asemblim eshte shume me i lehte se zhvillimi i komponenteve tepamenaxhuara.

Metadata ka shume perdorime, me poshte jane disa prej tyre:Metadata heq nevojen per filet headera dhe librari kur behet kompilimi, sepse i gjithe informacionimbi anetaret/tipet mbahet ne nje file te vetem bashke me IL, qe implementon keto anetare/tipe.

Visual studio perdor Metadata, si ndihme per te shkruar kod. Karakteristika IntelliSense e tij, detyronmetadaten te tregoje se cfare metodash nje tip mund te lejoje, dhe cfare parametrash nje mund temarre nje metode.

Procesi i verifikimit te kodit CLR, perdor metadata, per tu siguruar qe kodi performon vetem veprimete sigurta.

Metadata lejon nje fushe te nje objekti qe serializohet ne nje bllok memorje, ne nje makine tjeter neremote, dhe desiarlizimin, duke rikrijuar objektin dhe gjendjen e tij ne makinen ne remote.

Metadata lejon ‘garbage collector’ te mbaje shenime mbi ciklin e jetes se objekteve. Per cdo object‘garbage collector’ , percakton tipin e objektit, dhe nga metadata mund te kuptojme se kush fusha tenje objekti referojne tek nje objekt tjeter.

Page 14: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

Ngarkimi i Common Language RuntimeCdo asemblim qe ndertohet mund te jete ose nje aplikacion i ekzekutueshem ose nje DLL qepermban nje bashkesi tipesh (komponentesh) qe mund te perdoren nga nje apliakacion iekzekutueshem. Kjo do te thote qe .NET Framework mund te instalohet ne makinen host . Microsoftika krijuar nje pakete shperndarje , qe mund te instaloje falas .NET Framework-un ne makinat klient.

Ne qofte se duhet percaktuar ekzaktesisht version i .NET Framework, duhen pare registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\policy.

Kur ndertohet nje program .exe, kompilatori ruan/ndryshon informacionin specifik ne file headerinPE dhe seksionin .text te file-it. Kur file .exe ekzekutohet ky informacion specifik ben qe CLR tengarkohet ne memorje, ne procesor dhe te inicializohet. Me pas CLR lokalizon metoden e hyrjes dhelejon ekzekutimin e aplikacionit.

Ne menyre te ngjashme ne qofte se ne qofte se nje apliakcion therret Load Library, funksioni i hyrjesper DLL lejon ngarkimin e CLR-s me qellim qe te procesoje kodin brenda apliakcionit. Ne figuren meposhte tregohet se si nje EXE ngarkohet dhe inicializon CLR-n.

Kur kompilatori krijon nje aplikacion te ekzekutueshem, funksioni i meposhtem 6-byte x86 futet neseksionin .text te file-it PE.

Page 15: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

JMP _CorExeMain

Ky funksion kerkohet te Windows 98, Windows 98SE, Windows ME,Windows NT 4,dhe Windows2000, meqenese te gjithe keto sisteme operative dolen para se CLR te behej e vlefshme.

Te vihet re qe ky funksion 6-byte eshte vecanerisht per makinat X86. Ky funksion nuk punon sicduhet ne arkitekturat e tjera te CPU-ve.

Page 16: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

Performanca e .NET FrameworkTre jane teknologjite kryesore qe permiresojne performancen e .NET Framework:

• Just-In-Time compilation

• Garbage collection

• Hyper-Threading technology

Disa Framework te tjera:

Arkitektura JAVA

Ajax Framework

Zend Framework, etj

Krahasimi i .Net Framework me Arkitekturen JAVACLR (Common Language Runtime) e .NET Framework eshte shume e ngjashme me JVM(Java Virtual Machine) ne terma sigurie , dhe kompilimi ne kohen e duhur (JIT). Gjithesesidiferenca fondamentale ngrihet nga variancat e perceptimit te dizenjatoreve te Sun Javadhe atyre te Microsoft C# .

SUN , e shikon internetin si nje network heterogjen te perbere nga sisteme operative tendryshme . Prandaj duhej te dizenjonte nje GUI te suportuar nga te gjithe platformat. Kjoqe dhe arsyeja e deshtimit nga ana e Javes per ClientSide Applications. Java ka qene esukseshme vetem ne Server Side ku nuk ka nevoje per GUI te madhe .

Por ky vizion nuk ishte adapt per Microsoft , i cili mban rreth 90% te ClientSide Desktop market .Microsofti deshte te siguronte nje platforme te fokusuar rreth windowsit . Microsofti duhet te rristelidershipin tek Dekstopet , per te modeluar zhvillimin e aplikacioneve te internetit duke futu r .netFrameworkun.

Krahasimi i Drejteperdrejte :1.Licensimi :

a) Java - Qe nga Maji , i 2007 ne 90 % te saj eshte OpenSource , vend disa pjese te frameworkut qekane qene te licensuara nga pale te treta tek java nuk jane akoma nen GPL , por dhe ato priten tezevendesohen se shpejti me versione OpenSource .

Page 17: Framework - Geo...4) Data kontrolle te reja me data bindinf deklerativ. 5) Karakteristika te personalizuara per ASP.NET, si suport per temat , pjese te web-it, etj. 6) Shume ndryshime

b) .Net CLI eshte standartizuar dhe mund te implementohet pa license , dhe nje pjese e .Net 1.0eshte nxjerre si shared source , por ama dhe kjo funksionon vetem deri tek Windows XP SP2 . Nga.Net 2.0 e lart jane closed source .

2.Komunieti

a) Java eshte zhvilluar gati teresisht ne nje ambient te lire , midis komuniteteve te ndryshme teprogamuesve qe mund te shikonin , zhvillonin dhe permiresonin ate .

b).Net ka qene me pak e perhapur ne komunitete per shkak te kodit te mbyllur te saj ,edhe pse sotavash avash po behet shume e me shume e diskutuar.

3.Aplikacionet e Desktopit

a) Java per shkak te mos reklamimit , dhe mos fokusimit te duhur ne Aplikacionet e Desktopit , kahumbur nje pjese shume te madhe te ketij tregu , ose e shprehur me mire , e ka humbur gati tegjithe, edhe mbas tentativave te ndryshme te fundit , pas daljes se Java 6.0 zhillimi i aplikacionevene mase me java ngjan i larget .

b).Net perben gati 90% te tregut te aplikacioneve te Desktopit , fale integrimit te lehet me OS dhePamjen dhe Ndjesine native te windowsit .

4. Apliacionet e serverave .

Ne kete fushe mund ti konsiderojme si rival te barabarte diku dhe ku Java deri tani ka nje kalim telehte perpara .

5. Aplikacionet Mobile

Java ME ,ne krahasim me .NET Compact Framework ,perdoret ne mase per sistemet Mobile ,vecanerisht ne Aparatete me fuqi te vogel operative , qe shfryzojne kete plaforme per pjesen me temadhe te sistemit te tyre . Kurse .NET compact Framework perdoret per sisteme me te renda si pershembull zhvillimin e aplikacioneve per PDA ose dhe per XBOX.