Het duurde acht maanden voor we de eerste Service Pack (SP1) voor Visual Studio 2008 (VS08) konden verwelkomen. Maar als we de nieuwe mogelijkheden op een rijtje zetten, dan lijkt dat juist redelijk vlot. SP1 lijkt op sommige manieren op een Visual Studio 2008 die het vanaf het begin had moeten zijn. Nee, het is zeker meer dan de verzameling bugfixes waarmee we service packs tegenwoordig associëren.

Afgelopen januari heb ik Visual Studio 2008 al onder de loep genomen. Indertijd omschreef ik het als de belangrijkste IDE om applicaties met .Net mee te ontwikkelen, en ook als tenminste een mededinger naar de titel van beste op Windows gehoste C/C++ IDE. Mijn voornaamste kritiek was toen echter dat de gewilde ADO.Net Entity Framework en LINQ to Entities ontbraken, terwijl bepaalde JavaScript- en VBScriptfuncties uit vorige edities het niet meer deden.

Het gaat om de gegevens

Nou, SP1 herbergt eindelijk het ADO.Net Entity Framework (EF), het Entity Data Model (EDM) en LINQ to Entities. EDM is een complete, taal- en databaseonafhankelijke entity-relatiemodel. Deze wordt ondersteund door een Entity SQL-taal en is vooral goed te gebruiken voor datacentrische line-of-businessapplicaties. LINQ to Entities integreert queries against Entities in C# en Visual Basic, zodat veel programmeurs wellicht de ins en outs van entity SQL niet meer zo goed op het netvlies hoeven hebben.

Bedenk daarbij wel dat Entity SQL heel anders is dan Transact-SQL die wordt gebruikt in Microsoft SQL Server. Trouwens: SP1 voegt ook volledige ondersteuning van het vorige maand gelanceerde SQL Server 2008 toe aan Visual Studio 2008.

Scripting verbeterd

Ik ben ook blij met het feit dat de VS08 html editor niet langer meer onbruikbaar is met Classic ASP. Helaas is de editor nog niet zo slim dat het toevoegingen van de serverzijde aankan.

U zult merken dat IntelliSense en code formatting voor JavaScript in SP1 flink verbeterd zijn, zelfs voor libraries van derden. Althans, als u uw bestanden structureert zoals VS08 dat verwacht; als u een rommeltje maakt van de structuur en de parser raakt in de war, dan is het ergste wat u kan overkomen dat IntelliSense en code formatting niet werken. Syntax coloring blijft meestal wel werken, en de editor doet nu wijselijk een stapje opzij in plaats van dat hij u probeert te 'helpen' met domme veranderingen.

Op het web

De belangrijke nieuwe functies voor het web zijn ASP.Net Dynamic Data en Url Routing. Beide lijken hun ondersteuning voor het Model-View-Controller patroon en het snelle genereren van webpagina's vanuit databaseschema's afgekeken te hebben van Ruby on Rails.

Dynamic Data maakt het mogelijk om snel een eenvoudige webapplicatie gebaseerd op een datamodel te bouwen, bijna zoals het bouwen van een steigerapplicatie in Rails. Het houdt ook een verbetering in van de manier waarop de databesturing werkt, waarvoor het functies voor controle en sjablonen toevoegt.

Url Routing maakt het mogelijk om routingtabellen voor ASP.Net websites aan te maken. Dit was oorspronkelijk ontwikkeld voor de ASP.Net MVC framework, welke nog in de preview zit. MVC Framework is wat je krijgt bij het voorstel om iets te maken dat een 'ASP.Net ontmoet Rails' moet voorstellen.

Wat doet Url Routing nou precies? In plaats van het moeten gebruiken van http POST of een query-syntax om een gegevensafhankelijke pagina te krijgen (of zelfs de url moet herschrijven), kunt u nu ook een op het oog normale url door een routingtabel laten vertalen. Dit is meer in lijn met REST-ontwerp, en de manier waarop zoekmachines werken… En uiteraard meer zoals Rails werkt.

Overigens biedt het nieuwe Windows Communication Foundation (WCF) programmeermodel voor het web ondersteuning voor REST, Ajax en JSON, en zowel rss- als atomfeeds. WCF ondersteunde xml web services, de WS-* Stack en een efficiente (maar bedrijfseigen) binaire protocol al prima. Wie kan nog zeggen dat Microsoft geen voeling heeft voor Web 2.0 en SOA?

Op de desktop

In het verleden heb ik wel eens problemen gehad met clientapplicaties gebaseerd op Windows Forms. Ten eerste weigerden ze te draaien vanaf een netwerk-share, vanwege beveiligingsproblemen. Ten tweede was de voetafdruk die een installatie achterlaat op een systeem waar nog geen .Net framework op stond nogal groot. Ten derde duurde het opstarten lang. Al deze problemen zijn met SP1 goed opgelost. Daarnaast zijn er een paar nieuwe opties voor Windows Forms toegevoegd, van het type die eerder beschikbaar waren met de Visual Basic Power Packs. Ook zijn het ontwerp en de debugging van Windows Presentation Foundation (WPF) opgelapt.

C#-programmeurs zullen blij zijn met de verbeteringen in het flaggen van potentiële problemen. Visual Basic-programmeurs zijn het al gewend, nu krijgen ook C#'ers deze mogelijkheid.

Maar de Visual Basic-programmeurs hebben een stuk speelgoed erbij waar C#-mensen nog geen toegang tot hebben: Xml to Schema, een manier om automatisch een xml-schema aan te wijzen uit een xml-bestand. C#-programmeurs moeten de xsd- en xml-bestanden handmatig invoeren.

Conclusie

Het installeren van VS08 SP1 brengt geen nadelen met zich mee, op de duur na; het kostte mij een paar uur om het te downloaden en te installeren, terwijl ik toch echt een redelijk goede breedbandverbinding heb. Als ik het opnieuw zou moeten doen, dan zette ik de download aan vlak voor ik naar huis zou gaan. De MSDN-documentatie vergt een aparte download en installatie. Eenmaal geïnstalleerd lijken alle veranderingen, in mijn beleving, goed. Tenzij u addons of sdk's hebt die Visual Studio 2005 nodig hebben (of wellicht .Net Micro Framework), dan kan ik geen redenen bedenken om niet volledig over te stappen naar Visual Studio 2008 SP1.

Bron: Infoworld.com

Vertaling: Michiel van Blommestein

Bron: Techworld