Programovanie

Recenzia produktu: Visual Studio 2008 napreduje s niekoľkými chybnými krokmi

Microsoft Visual Studio 2008 (VS08) je súčasná inkarnácia dlhej rady IDE spoločnosti. Je to popredné IDE pre vývoj aplikácií s rozhraním Microsoft .Net Framework a prinajmenšom uchádzač o najlepšie IDE C / C ++ hostené vo Windows. Visual Studio 2008 sa samozrejme neobmedzuje iba na vývoj desktopových aplikácií; je vhodný aj na vývoj webových aplikácií, SOA a aplikácií zariadení. Toto vydanie predstavuje podporu pre .Net Framework 3.5 a podporuje aj ďalšie verzie .Net Framework. Ďalej predstavuje jazykovo integrovaný dotaz, všeobecný spôsob dotazovania na všetky druhy údajov v jazykoch C # a Visual Basic a úplnú podporu systémov Windows Vista, Silverlight a Windows Presentation Foundation.

VS08 sa dodáva v rôznych vydaniach, od bezplatných edícií Express Edition až po 10 000 dolárov za všetko, Visual Studio Team System 2008 Team Suite. Vydania Express sú v zásade určené pre vývojárov začiatočníkov, študentov a nadšencov; Štandardná verzia je pre jednotlivých vývojárov; Professional Edition je určená pre pokročilých vývojárov a tých, ktorí pracujú v malých tímoch.

Tímový systém je určený predovšetkým pre väčšie tímy. K dispozícii sú klienti Team System pre vývojárov, architektov, správcov databáz a testerov, ako aj kombinovaný klient pre všetky roly s názvom Team Suite. Serverom pre Team System je Team Foundation Server (TFS), ktorý kombinuje tímový portál, kontrolu verzií, sledovanie pracovných položiek, správu zostavenia, vedenie procesov a business inteligenciu.

V tejto recenzii sa sústredím na funkcie verzie VS08 Professional Edition a dotknem sa niekoľkých najdôležitejších prvkov Team Suite. Nebudem sa snažiť diskutovať o Team Foundation Server ako takom, aj keď od poslednej kontroly získal množstvo vylepšení, napríklad nový systém zostavovania tímov a prístup na web (pozri ukážku Visual Studio 2005 od Toma Yagera z mája 2004).

Inštalácia a testovanie

Už dlhšie som blogoval (tu a tu) o svojich pokusoch a prácach s inštaláciou Team Suite. Nič z toho by vás nemalo ovplyvniť, pokiaľ sa nepokúsite odinštalovať VS08 zo stroja, ktorý má tiež VS05; napriek tomu môže byť zálohovanie obrazu vášho systému pred spustením inštalácie múdre. Očakávajte, že inštalácia VS08 bude trvať niekoľko hodín, pričom na zahájenie kroku inštalácie dokumentácie je potrebný jeden ručný zásah.

Program VS08 Team Suite som bežal na pracovnej ploche systému XP takmer celý deň, päť dní v týždni a niekoľko týždňov, a snažil som sa ho používať pri všetkých svojich vývojových prácach. Prešiel som si tiež niekoľko individuálnych vývojových scenárov s verziou Professional Edition na notebooku Vista a simuloval som niekoľko scenárov skupinového vývoja na virtuálnom počítači Team Suite / TFS. Jedna výstraha: Ak inštalujete do systému Windows Vista so zapnutým ovládaním používateľských účtov (UAC), buďte pripravení spustiť VS08 ako správca niekoľkokrát, kým sa nevytvoria všetky požadované adresáre; potom by mal byť plne kompatibilný s UAC.

Predstavujeme .Net Framework 3.5

Prial by som si, aby spoločnosť Microsoft v tomto smere išla trochu ďalej. Je škoda, že Microsoft neposkytol ani zacielenie na .Net Framework 1.1 a ľahkú obojsmernú konverziu medzi projektmi VS08, VS05 a Visual Studio .Net 2003.

.Net Framework 3.5 má množstvo nových knižničných a jazykových funkcií. Medzi ne patrí Language-Integrated Query (LINQ), vylepšenia súvisiace s Web 2.0 a SOA, integrovaný pracovný tok, protokoly peer-to-peer a podpora Microsoft Office.

Nástroje na všetky tieto činnosti sa nachádzajú vo VS08. Napríklad VS08 Standard a vyššie majú podporu LINQ v jazyku Visual Basic .Net a Visual C #, vrátane návrhára vzťahov s objektmi, nástroja príkazového riadku SQLMetal, editorov kódu známych podľa LINQ a podpory debuggeru.

Jazykovo integrované dotazy s LINQ

Niekoľko komponentov a poskytovateľov LINQ dodávaných vo VS08, vrátane LINQ pre objekty (reťazce, odrazy a adresáre súborov), LINQ pre XML a LINQ pre ADO.Net. LINQ to ADO.Net obsahuje dve zložky: LINQ to DataSet a LINQ to SQL. Ambicióznejší rámec entít ADO.Net a LINQ to Entities are nie zahrnuté vo VS08, ale môže sa dodať neskôr v tomto roku ako doplnok.

Testoval som LINQ to SQL v C # proti databáze SQL Server 2000. Objektovo-relačný diagram na tomto obrázku na obrazovke sa automaticky vygeneroval presunutím tabuliek z databázy. Automaticky sa vygenerovala aj skupina volaných tried vyhovujúcich LINQ.

Object Relational Designer pracoval dobre na vytváranie tried C # zo schémy databázy a IntelliSense fungoval dobre, keď som písal LINQ dotazy. Na druhej strane, rukou písané dotazy LINQ proti trom súvisiacim tabuľkám posúvali hranice mojich rodiacich sa schopností LINQ a ja som túžil po LINQ ekvivalente grafického návrhára dotazov SQL Query VS08. Nikdy som neprišiel na to, ako napísať ekvivalent LINQ dotazu SQL „SELECT DISTINCT“.

IntelliSense, refaktoring, testovanie jednotiek a metriky

Keď som pracoval na tomto malom projekte, zistil som, že funkčnosť C # refaktoringu (zahrnutá v Professional a vyššie) funguje dobre a celkom hladko. Pri úprave jazyka C # môže programátor využiť výhody automatizovaného refaktoringu, ako je zobrazené v rozbaľovacej ponuke tohto obrázka na obrazovke. Pre LINQ existuje plná podpora technológie IntelliSense (pozrite si kód, ktorý začína na obrázku „var qAV“). Metriky kódu (v dolnej časti obrázka) sa počítajú iba pre spravovaný kód.

Tiež som zistil, že metriky kódu pre spravovaný kód (zahrnuté vo VSTS Developer a Team Suite) fungovali celkom dobre. Nie som si istý, či súhlasím s tým, ako sa metriky počítajú pre kód generovaný z návrhových plôch, ale určite vidím celkovú užitočnosť metrík, najmä v kontexte tímových projektov spravovaných pomocou TFS.

Pred rokmi som používal metriky ako cyklomatická zložitosť (miera počtu lineárne nezávislých trás cez programový modul), ktoré mi pomohli zvládnuť veľký C projekt s tuctom programátorov. Som rád, že táto technológia je vo VS08 zavedená pre spravovaný kód.

Som však sklamaný, že metrické kódy a refaktoring kódu nie sú k dispozícii pre nespravované projekty v C ++. Na druhej strane, projekty v C ++ môžu používať veľmi pekný prehľadávač hovorov: Poskytuje kompaktné zobrazenie ďalších funkcií, ktoré volajú danú funkciu, a riadkov kódu, ktoré uskutočňujú hovory.

Som rád, že projekty jazyka Visual Basic majú metriky kódu spolu s neuveriteľne stručnou syntaxou, skvelým IntelliSense a mnohými úryvkami kódu. Som sklamaný, že projekty Visual Basic nemajú refaktoring kódu, aj keď túto funkciu je možné pridať pomocou jedného z niekoľkých doplnkov tretích strán.

S potešením oznamujem, že testovanie jednotiek je teraz súčasťou verzie Professional Edition. (Bola to funkcia VSTS vo VS05.) Môžete vytvárať unit testy a testovacie projekty pre C #, Visual Basic a spravované C ++ riešenia. Bolo to možné urobiť pred použitím bezplatného open source programu NUnit, ale je o niečo krajšie mať integrovanú schopnosť testovania jednotiek s IDE.

Jedným z prisľúbených vylepšení vo VS08 bolo IntelliSense pre JavaScript. Je to tam, ale za cenu: Aj keď bola pridaná podpora pre druh JavaScript používaný na písanie stránok ASP.Net AJAX a Silverlight, podpora úprav VBScript a Classic ASP bola zrušená. Pretože stále udržiavam ročník Vintage ASP z roku 1999, bol som viac ako trochu mrzutý, keď som zistil, že VS08 urobil horšiu prácu so stránkami ASP ako VS05, alebo dokonca ako Visual InterDev 6. Microsoft uvažuje o obnovení tejto funkčnosti pre service pack do VS08. Zatiaľ by ľudia, ktorí stále udržiavajú stránky Classic ASP, nemali opustiť svoje existujúce nástroje.

WPF, Silverlight a Web 2.0

VS08 podporuje Silverlight, bohatú technológiu internetových aplikácií, ktorá obsahuje podmnožinu WPF, akonáhle nainštalujete Silverlight SDK a Silverlight Tools pre VS08. Mal som dobré skúsenosti s vývojom aplikácií Silverlight s beta verziou VS08. (Informácie o mojej recenzii Silverlightu nájdete v článku „Microsoft Silverlight konkuruje Flash, AJAX.“)

S výnimkou zrušenej podpory pre VBScript a Classic ASP je povrch návrhu webových stránok vo VS08 lepší ako vo VS05; je veľmi podobný Expression Web a pekne podporuje CSS. Dizajnové povrchy a projekty pre ASP.Net AJAX, Windows Communications Foundation a Windows Workflow Foundation, ktoré boli bezplatnými doplnkami k VS05, sa presunuli na základný produkt VS08.

Ciele v kancelárii a inteligentných zariadeniach

VS08 dokáže vytvoriť spravovaný projekt Smart Device pre štyri cieľové platformy a dve verzie .Net Compact Framework v C # a Visual Basic. V C ++ môže VS08 vytvárať neriadené projekty inteligentných zariadení pomocou knižníc Win32, ATL (Active Template Library) a MFC (Microsoft Foundation Class); táto funkcia bývala v samostatnej súprave nástrojov Windows CE.

Kurzy a konce

Microsoft SQL Server Compact 3.5 je nová lokálna databáza, ktorá je dosť malá na nasadenie na inteligentných zariadeniach. Vývojári ho môžu používať v samostatných aj príležitostne prepojených scenároch. Keď sa server SQL Server Compact používa na ukladanie do medzipamäte lokálnej databázy, služba Microsoft Synchronization Services for ADO.Net sa stará o pravidelnú synchronizáciu medzi lokálnou databázou Compact a vzdialenou databázou.

Ak sa zistí inštalácia servera Team Foundation Server, Visual Studio sa s ním môže integrovať. To umožňuje programátorovi prijímať pracovné položky a robiť registrácie a správcovi vytvárať správy, ako je tu uvedené.

Tímový systém má množstvo vylepšení. Jednou z veľkých položiek v TFS je nový systém Team Build; ďalším je prístup na web. Architekti majú nového projektanta systému zhora nadol a systém architektonických rolí. Vývojári majú nový systém metrík kódu, o ktorom som už hovoril, ako aj lepšie nástroje na analýzu a výkon kódu. DBA majú analýzu kódu T-SQL, generátor údajov a nástroje refaktoringu. Testéri majú lepšie nástroje a pravidlá overovania vrátane agenta Test Load Agent.

Visual Studio má aktívny ekosystém nezávislých dodávateľov softvéru. Väčšina z týchto dodávateľov vyrába doplnky a ovládacie prvky, ktoré vylepšujú Visual Studio. Nové prostredie Visual Studio Shell umožňuje týmto dodávateľom dodávať samostatné verzie svojich produktov, ktoré nevyžadujú, aby si zákazník kúpil vlastné Visual Studio. Tlieskam tomuto kroku spoločnosti Microsoft: Myslím si, že to robí ekosystém zdravším, pretože to umožňuje nezávislým dodávateľom softvéru, aby boli konkurencieschopnejší pri relatívne nízkych nákladoch pre Microsoft.

Celkovo je Visual Studio 2008 aktualizáciou, ktorú bude chcieť väčšina vývojárskych obchodov zameraných na Microsoft vykonať, aby mohla vyvíjať nové technológie, ako sú WPF, WCF a WF, a pre nové platformy, ako je Windows Vista. Nejde však o upgrade, ktorý sa dá ľahko urobiť po kúsku; Po úspešnej aktualizácii samotného projektu by som odporučil väčšine obchodov upgradovať všetkých vývojových pracovníkov projektu. Podľa mojich skúseností bola aktualizácia projektov z VS05 na VS08 relatívne bezbolestná a zahŕňala len veľmi málo spôsobov prepisovania kódu.

Pre obchody, ktoré stále udržiavajú stránky Classic ASP, odporúčam inštalovať VS08 vedľa seba s VS05, aspoň dovtedy, kým nebude obnovená funkčnosť úprav Classic ASP a VBScript. A pre obchody, ktoré stále používajú Visual Studio .Net 2003 alebo staršie verzie z dôvodu vnímaných problémov s VS05, navrhujem vážne vyhodnotenie VS08.

Až na niekoľko výnimiek bude pre používateľov každej úrovne balíka Visual Studio vylepšené vydanie z roku 2008. Je to silná aktualizácia a pevný základ pre budúci vývoj.

Výsledková listina Hodnota (10.0%) Schopnosť (30.0%) Výkon (15.0%) Ľahkosť vývoja (30.0%) Dokumentácia (15.0%) Celkové skóre (100%)
Microsoft Visual Studio 2008 Professional a Microsoft Visual Studio Team System 2008 Team Suite9.010.09.09.09.0 9.3

Copyright sk.verticalshadows.com 2024

$config[zx-auto] not found$config[zx-overlay] not found