TechEd 2010 Berlijn: Derde dag

Gisteravond ben ik nog even naar de Watergate club geweest voor de Microsoft
Learning Community Party. Ik kwam nog wat oude bekenden tegen en dat was een leuke verrassing. We hebben veel over bier gesproken 🙂

Biertje?

Voor vandaag stonden weer meerdere sessies op de kaart. Ook vandaag waren het er teveel. Dus net als gisteren zal ik er enkele uitlichten.

Teched button

Architecture discovery with VS2010 Ultimate

Omdat bij mijn huidige project ontwikkeld wordt met de Ultimate versie van
Visual Studio leek het mij wel aardig om eens naar de Architecture tooling te
kijken. In deze sessie werden een aantal diagrammen gedemonstreerd in een
situatie dat er al bestaande, maar onbekende broncode in een solution zat. Hier
herhaal ik de hoogtepunten van de presentatie…

Dependency diagram

  • De Dependency Graph was toch wel indrukwekkend. Hiermee is het mogelijk om visueel door de code te navigeren compleet met drill-downs. Dit moet ik toch eens vaker gaan gebruiken.
  • De Dependency Graph kan via reflection ook omgaan met 3de partij
    cdll waar we de code niet van hebben.
  • Standaard gerefereerde assemblies en Generics-afgeleiden kunnen eenvoudig ge-hide worden. Dit maakt het veel overzichtelijker.
  • Hetzelfde diagram kan op veel verschillende manieren getoond worden. De representatie waarbij de paden zo kort mogelijk wordt gehouden was indrukwekkend. Omdat heel veel code je model klassen aanroept, zal dit groepje objecten al snel een cirkel vormen in je diagram. Dit maakt de code echt inzichtelijker.

Layer diagram

  • Deze toont de relaties tussen de verschillende lagen van je solution. En het kan ook gevalideerd worden. Het was niet helemaal duidelijk waar de keuzes voor de representatie op gebaseerd zijn maar ook dit zag er bruikbaar uit. Het helpt ook bij refactoring van niet-gewenste relaties (bv. een webservice aanroepen in je Business Logic Layer)
  • De Reverse Enginering (code -> model) stap kan dus ook uitgebreid worden met extra logica om eea. te verklaren
  • Even later werd verteld dat het opdelen van je solution in layers ook met de hand kan, maar daar werd niet verder op ingegaan.

Reverse Enginering met UML tooling in VS2010 Ultimate

  • Er is al enige tijd een extra Modelling Feature Pack (alleen voor MSDN subscribers) met extra diagrammen. Dit zal tzt. ook in de volgende Visual Studio zitten.
  • In de Feature Pack zag ik een echte UML klassediagram met dezelfde klassen notatie zoals in b.v. Rational Rose. Eindelijk. Dit werd gedaan via de Architectue Explorer, dus nog een nog een extra pane in je VS2010.
  • De Sequence Diagram (met opgave van de navigatie-diepte) geeft een nette beschrijving van een willekeurige methode en de onderliggende aanroepen. De leesbaarheid was heel aardig, compleet met de lifetime notatie. Helaas is het diagram niet meer aan de onderliggende code gebonden maar het is wel aan te
    passen voor nog meer informatie. Dit krijgt dan extra kleurjes want wellicht moeten de wijzigingen nog geïmplementeerd worden…

Kortom, er moet echt tijd geïnvesteerd worden om handig te worden met deze
diagrammen maar ik vind het wel een uitdaging. Dit kan ook gebruikt worden om op een eenvoudige manier tot mmer documentatie van je projecten te komen.

Building Business Applications with Visual Studio LightSwitch

<Zware stem>Is dit het einde van software-ontwikkeling door ontwikkelaars?</Zware stem> Via het pad van Start-Refine-Extend kunnen nu ook “gebruikers” in enige mate een applicatie bouwen, anders dan in Excel of
MSAccess. Dit was een presentatie van een Beta1 versie.

Start

  • Beschrijf data
  • Beschrijf schermen

Deze tooling is overigens ook relevant voor ontwikkelaars. Het lijkt mij een
aardige prototype of POC omgeving. Dit is natuurlijk gevaarlijk, het resultaat
is een toch al werkende applicatie (met alle beperkingen)..

Visual Studio LightSwitch is een aparte versie van VS2010 om standaard
gebruikers niet af te schrikken met alle developers opties. Het intergreert met
een bestaande Visual Studio als die al op de PC staat. De keuzes voor gebruikers
zijn beperkt maar ze moeten wel kiezen tussen VB.Net en C# .

De data kan uit een database, een SharePoint lijst of uit een Wcf Ria service
komen. De data moet daarna getypeerd worden (een telefoonnummer is geen string maar een PhoneNumber).

Wat opvalt is dat er wel degelijk ook code geschreven kan/moet worden. De
validatie op een dataveld kan gewoon in code geschreven worden en daar in een
Regular expression uitgechreven zijn.

Ook relaties tussen in een soort van klassendiagram aangegeven worden tussen
de entiteiten.

Vervolgens kunnen via een wizardscherm schermen toegevoegd worden. Dit zijn
voornamelijk CRUD en Search schermen en die sluiten aan op de data.

Hierna is de applicatie al te starten. Er is een menu, daarin zijn de (CRUD)
schermen als taken beschreven. En er zijn validaties, verplichte velden, etc. En
de database wordt netjes gevuld.

Overigens was het niet helemaal duidelijk of het een Winform of een Webform
applicatie was. Het kan ook door de SilverLight komen…

Refine

  • Voeg Business logic toe
  • Voeg Speciale queries toe

Er werden daarna, designtime maar ook (in een iets beperkte mate) runtime,
schermen aangepast Ik zag oa. een andere opmaak en andere controls keuze om het scherm op te leuken. Dit ging met een treeview van alle aanwezige controls op het scherm, compleet met bindingen. Schermen kunnen overigens ook vanuit code geparametriseerd aangeroepen worden.

Queries werden toegevoegd om in Search-schermen te gebruiken. De
Scherm-wizard reageerde ook dynamisch op de data die aangeboden werd.

Extend

  • Maak interactie met ‘ecosystems’
  • Voeg Silverlight toe
  • Intergreer met datasources

Deze laatste stap kwam helaas niet aan bod.

Ik zag ook nog Windowsauthentication en formauthentication voorbijkomen met
admin-tools voor users en rollen. En er kan per scherm of zelfs per tabel code
geschreven worden om de toegang te regelen.

Als je eenmaal klaar bent, kun je zelf publiceren (als 2-tier, 3-tier met
lokale client of 3-tier webserver-oplossing). Er wordt dan een soort van
installer samengesteld. Er is ook een connectionstring voor productie in
opgegeven worden.

Kortom, microsoft heeft in Visual Studio een aardige wizard toegevoegd om een
applicatie op te hoesten. Het is een prima oplossing voor hap/snap applicaties
en het is leuk voor ontwikkelaars om een voorstelling te maken van wat Microsoft op de achtergrond van de designers uitvoert. Het isi interessant genoeg om eens uit te proberen.

Kijk voor meer info http://msdn.com/LightSwitch (download, hands-on labs, blogs, forum)

Advertenties