Nee het is geen typefout: er staat echt Pasen in de titel en geen Kerst! Het is een beetje een dooddoener; een antwoord dat je bijvoorbeeld kunt geven als je kinderen vragen wanneer we naar Disneyland gaan… “Als Pasen en Pinksteren op dezelfde dag vallen”, zeg je dan, of “Als Pasen op een vrijdag valt”. Dit jaar valt eerste Kerstdag echter wel op een vrijdag. Er zijn vast veel mensen die het jammer vinden dat ze dit jaar op tweede Kerstdag geen extra vrije dag hebben. Het is nu eenmaal een vaststaand feit dat we ieder jaar op 25 en 26 december Kerst vieren. De datum waarop het Paasfeest gevierd wordt, is minder makkelijk te achterhalen.
Lees verder…
Nu we de Data Layer af hebben, kunnen we ons richten op de laag erboven: de Business Layer. We hebben al een gedeelte van de Business Layer geïmplementeerd, namelijk de BusinessObjects.
Naast de BusinessObjects bevat de Business Layer ook nog een soort façade. Deze façade wordt geïmplementeerd in OrderSystem.BusinessLayer.
Lees verder…
Momenteel werk ik aan een ASP.NET MVC 1.0 applicatie. In een ASP.NET MVC applicatie werkt je niet meer met postbacks. Daardoor werken de standaard servercontrols ook niet meer (runat=”server” is verdwenen). Eigenlijk is het een soort back to the basics, want het komt er in het kort op neer dat je met plain html aan de slag moet. Voor buttons gebruik je gewoon weer de <input type=”submit|button”/> etc. Je hebt dus weer de volledige controle over de html die gerenderd wordt in de browser. Dat biedt weer mogelijkheden om met javascript aan de slag te gaan. Een library die hierbij erg handig kan zijn is jquery. Jquery is een javascript library dat de webprogrammeur de volledige beheersing over de html geeft.
Lees verder…
De vorige keer hebben we de generieke Data Layer interface gebouwd. We gaan dit keer verder met het bouwen van een concrete implementatie van de Data Layer, namelijk voor SqlServer.
Om te beginnen voeg eerst een paar references toe aan de class library OrderSystem.DataLayer.SqlServer. Klik met de rechtermuisknop op de hiervoorgenoemde class library. Kies Add Reference-> Tabblad Projects -> Kies het project OrderSystem.DataLayer. Doe hetzelfde nog een keer voor OrderSystem.BusinessLayer.BusinessObjects en ook nog een keer voor System.Configuration in het tabblad .NET.
Bij DTS zullen de meeste lezers aan het volgende bedrijf denken: DTS Meppel. Dat is natuurlijk prima, niets mis mee. Ik vermoed echter dat er ook lezers zijn die de afkorting DTS kennen vanuit SQL Server. DTS staat dan voor Data Transformation Services. Over die DTS gaat het hier. In de Enterprice Manager van SQL Server 2000 heb je de mogelijkheid om een DTS package te maken. Vanaf SQL Server 2005 is DTS in mijn ogen volwassener geworden. De DTS functionaliteit zit echter wel een beetje verstopt en is verweven met Visual Studio. Deze integratie kom je ook tegen in de naamgeving SSIS (SQL Server Integration Service). Onder deze afkorting kun je op Internet meer voorbeelden vinden.
Een probleem waar jullie natuurlijk zelf nooit tegenaan lopen maar andere ontwikkelaars wel, is dat het soms lastig is om een oude applicatie die je ooit hebt geschreven na een paar maanden / jaren nog te begrijpen. Om nog maar te zwijgen over de ellende die je tegenkomt wanneer je hele lappen code van een collega moet bestuderen. Met DTS heb je de mogelijkheid om op een gestructureerde manier een proces samen te stellen. In plaats van een hele brij code is het meer een kwestie van componenten bij elkaar slepen en hierbij de juiste properties in te stellen.
Ok, tijd voor een voorbeeld:
De vorige keer hebben we de structuur van de solution aangemaakt. We gaan dit keer verder met het bouwen van de BusinessObjects. Waarom eerst de Business Objects? De Business Objects komen overal in elke laag weer terug. Als ik nu eerst de DataLayer zou bouwen, zou ik de helft niet kunnen maken, omdat ik dan references nodig heb naar Business Objects. We kunnen niet zonder deze objecten.
Lees verder…
De laatste tijd ben ik weer regelmatig bezig met het maken van kleine aanpassingen in bestaande Visual Basic 6 applicaties. Ik heb daarbij vaak heel veel vensters met code geopend. CTRL + F4 dan maar om alles af te sluiten. Het is daarbij vervelend dat je in VB6 niet bij de instellingen kunt opgeven dat je het venster met code maximaal wilt vergroten. Het schijnt dat VB5 deze optie nog wel had.
Niet voor één gat te vangen, vond ik de registry instelling waarmee je deze vergeten optie zelf kunt instellen. Ik dacht dit even snel te doen met uitvoeren –> regedit.
We gaan nu stap voor stap het framework bouwen. Ik gebruik hiervoor Visual Studio 2005.
Maak in Visual Studio een nieuwe Solution aan. File->New->Project. In de treeview ProjectTypes selecteer je Other Project Types -> Visual Studio Solutions. Vervolgens selecteer je in Templates de Blank Solution. Noem de Solution OrderSystem.
Het eerste wat we nu gaan doen is de Logische indeling in Layers maken. Klik in de Solution Explorer met de rechtermuisknop op de solution node. Selecteer Add->New Solution Folder. Geef de folder de naam DataLayer. Doe hetzelfde nog een keer voor Business Layer en Framework.
Vlak na de preview van Delphi 2010 (zie mijn vorige post), verscheen al de RTM versie en is het officieel released. Ondertussen zijn er verschillende interessante blogs verschenen, waarbij verschillende verbeteringen verder uitgelegd worden. Ik zal niet alle verbeteringen bespreken, maar een paar uitlichten. (P.S: zie ook de complete “reviewers” guide!)
Lees verder…
Nu de architectuur uitgelegd (zien mijn vorige blogitem) is komen we bij de uitvoering. Allereerst wordt er een functioneel ontwerp gemaakt. Hierin wordt de functionaliteit beschreven die nodig is voor het orderverwerkend systeem. Voor het functioneel ontwerp kan het erg handig zijn om use cases (UML) te gebruiken. De use cases beschrijven precies wat de verwachtingen en omstandigheden zijn voor bepaalde functionaliteit. Het gaat te ver om dat nu te doen. Ik wil het voor de duidelijkheid heel simpel houden, het gaat om het principe.
Lees verder…