Moq (Mock-You)

  • nederlands
21 12 2007

One of the most important tools for a modern developer is a good mocking framework.

At the moment there are 2 relatively equal frameworks : RhinoMock en TypeMock. Both have good compile time debugging, reflection, refactoring and have proven themselves in numerous projects.

Moq - Mocking YouBut as could be expected after the release of the new c# 3.0 language features, there is a “newcomer in mocking town” and it’s named Moq, pronounced as “Mock-You”.

Using the new “Linq” language features this is a project to watch. Especially because it is available as full open-source at Google code.

QuickStart : http://code.google.com/p/moq/wiki/QuickStart
Home : http://code.google.com/p/moq/
Download : http://code.google.com/p/moq/downloads/list



Volta, Web Development 2.0

7 12 2007

Inderdaad: Web Development 2.0 en niet Web 2.0.

Ik ben echt ontzettend enthousiast over wat er vandaag uit de Microsoft Labs is geslopen, dus neem alsjeblieft de tijd om deze lange post door te lezen. Ik ga proberen uit te leggen wat Volta nu precies is, om daarmee ook volta_thumbnail aan te geven waarom ik het zo geweldig vind.

Voor de mensen die mijn blog al wat langer lezen, Volta is Script# in het kwadraat. Volta werkt alleen niet met source code maar met MSIL (Intermediate language). Deze MSIL kan hij dan weer converteren (hercompileren) naar javascript dat draait in elke willekeurige browser en elk willekeurig platform (in deze ctp alleen nog IE en FF). Het genereren van cross browser javascript kan je vele uren ontwikkel en debug tijd schelen.

Je kan dus “gewoon” C# (en o.a ook VB, Python en Ruby) code schijven tegen je html pagina aan. Dus als je in html een element met id=”Text1″ hebt, dan kun je in C#  Text1.InnerHtml = “Nieuwe tekst”; intikken, waarbij het bij het hercompileren door Volta, vertaald zal worden naar javascript en uitgevoerd in de browser.

Tot aan hier, nog niets nieuws. Want dit konden we al met Script#. Hoewel deze implementatie je wel behoorlijk veel meer vrijheid geeft. De echte kracht van Volta zit hem wat mij betreft in het feit dat je binnen een project zowel server als client code kan schrijven.

image001

Deze laag splitsende technologie (zie ook plaatje hierboven) werkt door middel van attributen (o.a. [RunAtOrigin]) die bepaalde classes op de server en andere classes op de client laten draaien. Deze classes kunnen dan, zonder dat je daar zelf code voor hoeft te schrijven, elkaar aanroepen alsof ze zich op dezelfde laag bevinden. Volta genereert alle code die nodig is voor de communicatie tussen de browser en de server.

Daarbovenop levert volta een wijde reach van tools en functionaliteit (o.a. controls en javascript interop). Daarme tilt Volta het ontwikkelen van webapplicaties naar een nieuw niveau.

Wel moet op dit moment worden aangetekend dat het wel te maken hebben met een CTP preview release waarvan de functionaliteit nog lang niet vast staat en de code nog lang niet productie klaar is, maar een kijkje in de keuken van de toekomst is natuurlijk nooit verkeerd.

Dus als je net zoals ik gegrepen bent door het Volta Virus, kun je de volgende links volgen om meer informatie te krijgen en er zelf mee aan de slag te gaan en ik hoor net dat Christiaan van Bergen na het weekend met een paar mooie code voorbeelden komt om je verder te helpen.

Robertjan Tuit

p.s. Waar zouden ze toch dat logo vandaan hebben ?



Released : Visual Studio 2008, .NET 3.5 & Ajax Control Tookit

20 11 2007

Ik in ieder geval, en ik denk een aardig aantal mensen met mij, zit al een tijdje op dit nieuws te wachten. En vandaag is het zover , de RTM van Visual Studio 2008, Team Foundation Server 2008 en .NET 3.5.

Te downloaden via :

Let wel op: de Silverlight 1.1 Alpha en Web Deployment Add-Ins werken NOG NIET met deze release, deze hopen ze de komende weken beschikbaar te maken.

Een korte feature list van VS2008 :

VS2008 is ontwikkeld met TFS. Channel 9 heeft een video met Somasager over dit onderwerp : Channel9 VS 2008 Built with TFS Talk 

Daarnaast heeft het Ajax Control Tookit team besloten om hun nieuwe release ook samen te laten hangen met de Visual Studio 2008 Release. Die kun je hier vinden : Nieuwe Ajax Control Tookit Release (11119 release)

Bron : De enige echte Scott Guthry natuurlijk, en Somasegar voor de TFS video.

Robertjan Tuit



Video.Show Silverlight Sample

10 11 2007

Microsoft is druk bezig om met voorbeelden te laten zien wat er allemaal mogelijk is met silverlight. In samenwerking met Vertigo Software hebben ze het WPF voorbeeld omgezet naar Silverlight.

Het voorbeeld bevat naast Silverlight ook Linq, Framework 3.5, ASP.NET Ajax, Expression encoder en Silverlight Streaming.

Binnenkort zal het ook worden toegevoegd aan het Software + Services Blueprints initiatief, aangekondig op de TechEd in Barcelona.

Download hier Video.Show van CodePlex

Robertjan Tuit



.NET Framework source code released

4 10 2007

Microsoft gaat de sourcecode van de meeste van het .Net framework vrijgeven onder de “Microsoft Reference Licence”.

Vrijgegeven gaat worden : namespace, IO, Text, Collections, CodeDom, Regular Expressions, etc), ASP.NET, WinForms, and WPF. Er zal later nog meer worden vrijgegeven.

De source code kan lokaal worden gedownload en remote worden bekeken via een nieuwe remote source code browser feature in visual studio.

Zoals altijd heeft Scott Guthrie een uitgebreider verhaal.



C# Silverlight & Script# Part 2

17 09 2007

Zittende op de SDC, zometeen lekker aan het dinner. Nog even de blogs doorgelopen. Zie ik dat nikhilk het 2e deel van zijn carousel c# silverlight 1.0 voorbeeld heeft geblogged: http://www.nikhilk.net/Entry.aspx?id=172

Zie de vorige blog post voor meer informatie : http://www.robertjantuit.nl/?p=68.

Robertjan Tuit



C# ASCII Art

14 09 2007

Iets wat me altijd geintrigeerd heeft is zijn ASCII tekeningen, zeker in de tijd toen er nog geen internet was en we met zijn allen in zaten te belen in bulletin boards waren het de echte artiesten die deze plaatjes creerden. Eingenlijk geeft dat alleen al aan hoeveel tijd er nodig is om ze te maken.

Maar dat kunnen als programmeurs natuurlijk genereren, en natuurlijk hebben we geen zin om dat zelf te maken.

UsualDosage heeft het zware werk al voor ons gedaan en geplaats op CodeProject :
http://www.codeproject.com/useritems/ASCII_Imager.asp

Veel plezier, en als je wat moois creert wat je denkt dat het delen waard is, laat het dan achter op mijn blog of mail.

Robertjan Tuit

p.s voor de jongeren onder ons : http://nl.wikipedia.org/wiki/Bulletin_board_system



Toch C# en Silverlight 1.0!

13 09 2007

Zelf vind ik het een van de grootste minpunten van silverlight 1.0 : javascript. En laat dat probleem nou in ieder geval gedeeltelijk opgelost zijn door onze grote vriend Nikhil Kotari.

Script#
Script# is een compiler die van c# code Javascript maakt. De compiler word geintegreerd in Visual Studio en met een paar nieuwe templates word het heel erg makkelijk gemaakt om ermee te werken. Script# is sinds versie 0.3 compatible met het Ajax framework dus niet alleen Silverlight in C# maar ook Ajax in C#!

Het principe van Script# is dat er een aantal “stub” assemblies zijn, waar je tegenaan kan programmeren. Na het compileren heb je dan javascript.

Aangezien Javascript de onderliggende motor is in Silverlight 1.0 kun je dus met Script# programmeren in C# voor silverlight 1.0 en hoef je niet nog een jaar te wachten op de 1.1 release!.

Klik hier voor een hele uitgebreide tutorial van “The man himself”.

Als je je afvraagd of de Script# 0.3 release bruikbaar is voor productie, zelf heb ik het al met veel tevredenheid gebruikt in meerdere grote projecten.

Robertjan Tuit



LINQPad

30 08 2007

Zo, het is weer eens veel te druk om echt uitgebreide blog posts te schrijven, maar deze wilde ik jullie niet onthouden, ik kom het net tegen op Scott’s Blog. Dit is toch wel DE tool als je bezig gaat met LINQ, even snel een query uitproberen op XMl, Objects of de database, zoek niet verder. Het is natuurlijk weer een Beta, maar laat dat je absoluut niet tegenhouden om deze tool eens te proberen, zelfs al weet je nog niets van LINQ.

http://www.albahari.com/linqpad.html 

Robertjan Tuit



Extension Methods & Regular Expressions

20 08 2007

Het zijn nou niet de onderwerpen waar ik het hier vaak over heb, maar als 2 van deze mooie onderwerpen goed met elkaar gecombineerd worden kan ik toch niet anders dan erover berichten.

Krzysztof Kozmic (10 keer achter elkaar zeggen met je mond vol) heeft het in deze blog post over het creeren van een menselijke regular expression implementatie. Na wat omzwerving en probeersels komt hij uiteindelijk uit bij een van de meest “overlooked” features in 2008 : extension methods. Binnenkort het hele project op codeplex en hier nogmaals de blogpost.

Robertjan Tuit

p.s. Voor iedereen die zich afvraagd wat het plaatje te maken heeft met de post klik hier voor een must have RegExp Tool.