|
Scaffolding
De term “scaffolding” wil letterlijk zeggen “ondersteunen met een stellage (stelling, bouwsteiger)”. In de IT-wereld wordt de term gebruikt als er een basisstructuur wordt gegenereerd waar dan verder op kan worden “gebouwd”. Een scaffold-package (scaffolder) bestaat uit een PowerShell script met een set T4 templates.
MVC Scaffolding
Met MVC Scaffolding kan dit op een uitgebreide en gepersonaliseerde manier toegepast worden op het Model-View-Controller pattern. MVC Scaffolding bestaat als sinds de eerste versie van MVC, maar het wordt steeds gebruiksvriendelijker en biedt steeds meer mogelijkheden. Nu is het ook makkelijk installeerbaar via NuGet met het commando Install-Package MvcScaffolding. MVC Scaffolding is zowel voor C# als voor VB en zowel voor de Razor als ASPX view engine.
De T4-templates voor de views, controllers, repositories, ... worden door Visual Studio en door de packages geleverd. Het is de bedoeling dat je na de code-generatie je code aanpast en customiseert, maar MVC Scaffolding is zo krachtig dat dit soms zelfs niet nodig is. Er bestaat namelijk de mogelijkheid om bestaande templates te wijzigen en je eigen templates toe te voegen. Zo pas je elke template aan aan de look-and-feel van je project. Het is vooral een snelle manier waarmee je tijd wint.
Iets voor jou?
Het is zowel voor beginners als professionals:
-
Beginners krijgen een voorbeeld van een werkende applicatie in no-time en kunnen daar dan zelf mee experimenteren.
-
Gevorderde programmeurs die voor de eerste keer kennis maken met een technologie (Entity Framework, Testing, ...) waarmee ze nog niet gewerkt hebben, krijgen zo een werkende applicatie (indien de provider van de technologie een scaffold package heeft voorzien). Hierdoor kan je de nieuwe technologie in werking zien en ze aanleren dmv je eigen toepassing.
-
Professionals (en ook gevorderden) winnen tijd, doordat de basisfunctionaliteit van een applicatie automatisch wordt aangemaakt (denk maar aan de admin-functionaliteit binnen een applicatie). Ze kunnen zich dan meer focussen op het oplossen van business problemen. Iedereen in het team kan jou templates gebruiken.
Mogelijkheden
-
Je kan individuele items laten scaffolden. Als je, bv, enkel de views wil laten genereren en niet de controller, repository, ... .
-
Er zijn soms verschillende scaffolding-packages om, bv, een database te gebruiken (LINQ to SQL, EF Code First, Nhibernate,...). Er is de mogelijkheid om een default package te kiezen als je er meerdere hebt geïnstalleerd.
-
Bestaande T4-templates, die gebruikt worden door een scaffolding-package, wijzigen.
-
Geheel nieuwe scaffolders ontwikkelen (bv: Unit Tests).
Meer info
|