Kaj je novega v VS 2008
V prejšnji številki smo si ogledali novosti, ki jih prinaša jezik C# 3.0. Tokrat pa si poglejmo, kaj nam prinaša novega samo razvojno okolje Microsoft Visual Studio 2008, ki je me tem že na voljo naročnikom MSDN. Novosti je veliko, nekatere so vidne, druge očem skrite, prav vse pa dobrodošle.
Microsoft Visual Studio 2008 je nekaj posebnega že zato, ker ne prinaša s seboj tudi novega izvajalnega okolja Microsoft .NET Framework, temveč temelji na znani in preizkušeni različici 2.0. Novosti okolij 3.0 in 3.5 so "samo" dodatki za izvajalno okolje 2.0, kot ste lahko prebrali v okvirčku v prejšnji številki.
Multi-Targeting Support
Ena izmed dobrodošli posledic tega je, da Visual Studio 2008 omogoča t. i. "Multi-Targeting". To pomeni, da lahko za vsak projekt izberemo ciljno različico izvajalnega okolja. Nastavitev bo v razvojnem okolju skrila dobrote višjih različic in tako je omogočeno, da bomo lahko razvijalci imeli nameščen samo en Visual Studio, čeprav bomo razvijali za starejše različice in najnovejšo različico okolja .NET hkrati.
Prehod na novo razvojno orodje lahko torej naredimo takoj, projekte pa nadgrajujemo po potrebi in kontrolirano.
Izbira ciljnega izvajalnega okolja med nastavitvami projekta
AJAX, rahroščevanje JavaScript in JavaScript Intellisense
Knjižnica Microsoft ASP.NET AJAX je od zdaj naprej vgrajena v .NET Framework 3.5 in popolnoma integrirana v razvojno okolje. In prav z razmahom AJAXa smo bili razvijalci prisiljeni osvežiti svoje znanje jezika javascript, ki s tehnologijo AJAX doživlja drugi preporod.
Od nekdaj je bilo eno najtežjih opravil pri razvoju spletnih programov ravno razhroščevanje javascripta. Nekoliko smo si lahko pomagali z dodatki za brskalnike, kot je npr. Firebug (www.getfirebug.com), Visual Studio 2008 pa težko pričakovano novost podpira že v razvojnem okolju. Tako bo razhroščevanje javascripta na las podobno razhroščevanju jezikov okolja .NET in verjetno bomo razvijalci prav kmalu pozabili, da je razhroščevanje javascripta nekoč predstavljalo veliko težavo.
Razvoj v javascript bo olajšala še ena novost, imenovana "JavaScript Intellisense". Ta pomeni, da bo Visual Studio tudi pri pisanju javascriptne kode pomagal z dopolnjevanjem kode in prikazovanjem informacij o kodi na podoben način, kot smo vajeni v polnokrvnih jezikih .NET in vseh sodobnih razvojnih orodjih.
Izboljšano urejanje spletnih strani
Urejanje spletnih strani v prejšnjih različicah ni bilo slabo, vendar smo pogrešali marsikaj. Microsoft je v Visual Studio in novo orodje Expression Web Designer vgradil enak urejevalnik in se približal najzmogljivejšim orodjem na tem področju.
Prva novost, ki jo opazimo, je deljen pogled na spletno stran, ki v zgornjem delu prikazuje izvirno kodo, v spodnjem pa pogled WYSWYG, torej pogled na oblikovanje. Stran lahko urejamo v obeh načinih, spremembe pa se zrcalijo v obeh pogledih.
Izboljšano je tudi urejanje in uporaba slogov CSS. Na voljo sta dve novi orodji. Prvo se imenuje "Manage Styles", okence v katerem so na enem mestu zbrani vsi slogi in vse uporabljene datoteke. Omogoča, da sloge zelo hitro spreminjamo in dodajamo, enostavno pa lahko vidimo, kateri slogi so v odprtem dokumentu v rabi.
Drugo orodje, ki je še bolj uporabno, je okno "CSS Properties". V njem vidimo vse trenutno veljavne lastnosti sloga CSS. Prikazani so vsi slogi, ki so dodeljeni trenutnemu besedilu, tako da lahko na priročen način vidimo dedovanje lastnosti in odkrijemo napako v oblikovanju. Do zdaj smo za kaj takega uporabljali dodatke za brskalnike, zdaj pa je to samo še eno orodje več v urejevalniku spletnih strani.
Novost je tudi tehnologija Intellisense, ki zdaj podpira tudi CSS. To pomeni, da nam bo urejevalnik med urejanjem datoteke ASP.NET/HTML ponudil na izbiro veljavne razrede CSS.
Verjetno najbolj pričakovana novost pri urejanju spletnih strani ASP.NET je možnost gnezdenja strani "Master Page", ki rabijo kot vzorec za spletne strani. Zdaj lahko ima vzorčna stran za podlago drugo vzorčno stran in oblikovanje spletne strani lahko razbijemo na več ravni, to pa bistveno olajša oblikovanje spletnega mesta.
Hitrejše delovanje
Microsoftovi inženirji so precej časa namenili tudi hitrejšemu delovanju razvojnega okolja in prevajalnika. Izboljšav je veliko, težko pa jih je opaziti in oceniti. Če verjamemo podatkom, ki jih sporočajo razvijalci, odgovorni za hitrostne izboljšave, naj bi bilo prevajanje Visual Basic projektov v ozadju tudi do trikrat hitrejše, pregledovanje velikih datotek C# enkrat hitrejše, odziv Intellisensa v C# 10x hitrejši, pohitreno je tudi prevajanje programov C++, pisanih za CLI, in tako naprej.
Program MSBuild, ki je odgovoren za prevajanje, ima nov parameter, ki mu omogoča, da pri prevajanju izkoristi več procesorskih jeder in tako pospeši prevajanje.
Dostop do izvirne kode .NET Framework
Pred kratkim je Microsoft objavil, da bo z novim Visual Studiem na voljo tudi izvirna koda Microsoft .NET Framework. To je presenetilo in navdušilo slehernega razvijalca. Tudi do zdaj smo lahko poškilili v izvirno kodo ogrodja z uporabo Reflectorja (www.aisto.com/roeder/dotnet), Microsoftovo odpiranje izvorne kode pa omogoča še bistveno več, saj nam bo omogočilo, da bomo lahko med razhroščevanjem vstopali tudi v metode ogrodja in tako hitreje našli hrošča v svoji kodi, morda pa tudi kakšnega v Microsoftovi.
Koda je objavljena pod licenco "Microsoft Reference License" (MS-RL), Microsoft pa s tem odpira povsem novo poglavje v svoji razvojni filozofiji. Kako se bo novost obnesla, pa bo pokazal čas. Vsa koda pa ne bo objavljena hkrati, v prihajajočih mesecih so napovedane izdaje kode na različne knjižnice.
Omeniti velja, da je novost lahko tudi "nevarna" za razvijalce. S tem, ko smo pogledali v izvirno kodo Microsofta, smo namreč prisiljeni upoštevati morebitne patente, ki pokrivajo to kodo, in uvedba algoritma, ki bo podoben tistemu iz ogrodja, utegne biti sporna. O problemu se je v spletu silno veliko razpravljalo. Ali pa to dejansko predstavlja resen problem za razvoj tipičnih aplikacij ali ne, je prav tako težko oceniti.
Malenkosti, ki to niso
Novi Visual Studio pa skriva tudi množico malenkostnih sprememb, ki jih bomo verjetno po nesreči odkrivali še nekaj časa. Upajmo, da je večina takih sprememb všečna, verjetno pa se kje skriva kaka taka, ki nas bo ujezila.
Ena pozitivnih je ta, da je mogoče z enostavnim pritiskom na tipko CTRL narediti spustni seznam Intellisense polprosojen, da lahko na hitro poškilimo na kodo pod njim.
Preklopiti ali še ne?
Ni vprašanje, ali bomo razvijalci prešli na novo različico, vprašanje je samo, kdaj. Ker Visual Studio 2008 ne prinaša revolucionarnih sprememb in ohranja popolno združljivost za nazaj, hkrati pa prinaša marsikatero novost in izboljšavo, ne vidimo razloga, da ne bi razvijalci preklopili na novo različico takoj. Svoje projekte lahko takoj pretvorite v Visual Studio 2008, pa vam zaradi možnosti izbire ciljne različice izvajalnega okolja ne bo treba v strežnikih in pri strankah nameščati .NET Framework 3.5.
Visual Studio je in ostaja nadvse kakovostno razvojno orodje, ki omogoča razvoj na nadvse kakovostnem izvajalnem ogrodju. Za prihodnost platforme .NET se prav gotovo ni bati, saj stanje še nikoli ni bilo boljše. Skupnost je v spletu nadvse dejavna in v množici spletnih dnevnikov, člankov, orodij, dodatkov in še marsičesa se skrivajo pravi biseri. Očitno je, da jih Microsoft opazi, saj se je pred kratkim pri Microsoftu preselilo kar nekaj ključnih članov skupnosti. Razvoj pa nikakor ne spi. Še preden bo Visual Studio 2008 dodobra naselil naše računalnike, že prihajajo zanimive novosti, kot je na primer ASP.NET MVC.
Seveda pa je še vedno prostor za izboljšave. Razvojno okolje je možno še dodatno nadgraditi in izboljšati, kot dokazujejo številni dodatki za Visual Studio, omenimo samo Resharper (www.jetbrains.com) in CodeRush (www.devexpress.com). Prav tako je zelo živ tudi trg najrazličnejših knjižnic in komponent za hitrejši razvoj. Vsi pa so že pripravljeni tudi za novi Visual Studio.
Omeniti velja, da je novost lahko tudi "nevarna" za razvijalce. S tem, ko smo pogledali v izvorno kodo Microsofta, smo namreč prisiljeni upoštevati morebitne patente, ki pokrivajo to kodo in vpeljava algoritma, ki bo podoben tistemu iz ogrodja, utegne biti sporna.
Za prihodnost platforme .NET se prav gotovo ni bati, saj stanje še nikoli ni bilo boljše. Skupnost je v spletu nadvse aktivna in v množici spletnih dnevnikov, člankov, orodij, dodatkov in še marsičesa se skrivajo pravi biseri.