Article View: be.comp.programming
Article #4171Re: Spel in VB.Net
From: TRAX
Date: Fri, 12 Sep 2003 14:13
Date: Fri, 12 Sep 2003 14:13
29 lines
3217 bytes
3217 bytes
Wat ik geleerd heb is dat gui en logica altijd gescheiden moeten blijven, daarmee wil ik zeggen, de gui is de front end, klassen en objecten zijn backend, daar is een naam voor die me nu niet direct te binnen schiet maar dat doet er ook niet veel toe. Waar het in dit geval op neer komt is dat de klasse, of het object ervan, eigenlijk een logische kopie is van je gui speelveld. Op de form staat een array van labels, deze wordt bijgehouden in de klasse, maar dan vertaald in een array van ints of bools. Je hebt dus eigenlijk twee verschillende arrays en delen in je programma: eentje voor de gui en eentje voor de klassen/objecten. De gui baseert zich op de onderliggende klassen om "na te denken" en om dingen uit te voeren. Dus: twee arrays: eentje van labels op je form die je dynamisch cre�ert en eentje in je klasse waarop de gui zich moet baseren om afhankelijk van de waarden in deze array een muur of een doorgang te maken (met verschillende kleurtjes dus). Stel dat je in je array in het object van de klasse speelveld een 0 neemt voor een doorgang, en een 1 voor een obstakel, dan moet je als je de labels op je form aan het plaatsen bent bvb groen nemen als het vakje in het object 0 is, en zwart indien daar 1 in staat. In het begin had ik daar ook problemen mee hoor om de twee gescheiden te houden en t'klonk alles behalve logisch maar ��nmaal je mee bent zal je dat altijd zo doen en meteen zelf inzien hoe je de logica erachter moet steken bij allerhande toepassingen. Je beslissingen in een algoritme mogen nooit rechtstreeks afhangen van event handlers of waarden in je gui (op je form dus) die veranderen, deze events moeten een verandering triggeren in je klassen/objecten van waaruit dan de nodige stappen moeten worden ondernomen. Als je er echt niet uitkomt wil ik gerust een simpel voorbeeldje maken hoor, geen enkel probleem, maar probeer toch eerst zelf wat, zo leer je het immers het beste :-)
Technical Details
Message-ID:
<cwk8b.16394$AM.558195@phobos.telenet-ops.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!newsfeed.icl.net!newsfeed.fjserv.net!skynet.be!skynet.be!skynet.be!skynet.be!ossa.telenet-ops.be!phobos.telenet-ops.be.POSTED!not-for-mailReferences:
<IcC7b.12003$nf6.305260@phobos.telenet-ops.be> <eDd8b.15642$Js7.434294@phobos.telenet-ops.be> <MOe8b.15812$qR.574589@phobos.telenet-ops.be> <czj8b.16289$zM.557129@phobos.telenet-ops.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII X-Google-Thread: fcea4,5b3cb0c314dd35ba X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2003-09-12 07:13:30 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!newsfeed.icl.net!newsfeed.fjserv.net!skynet.be!skynet.be!skynet.be!skynet.be!ossa.telenet-ops.be!phobos.telenet-ops.be.POSTED!not-for-mail From: "TRAX" <Stijn.Verspeet@pandora[delete.this].be> Newsgroups: be.comp.programming References: <IcC7b.12003$nf6.305260@phobos.telenet-ops.be> <eDd8b.15642$Js7.434294@phobos.telenet-ops.be> <MOe8b.15812$qR.574589@phobos.telenet-ops.be> <czj8b.16289$zM.557129@phobos.telenet-ops.be> Subject: Re: Spel in VB.Net Lines: 32 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Message-ID: <cwk8b.16394$AM.558195@phobos.telenet-ops.be> Date: Fri, 12 Sep 2003 14:13:28 GMT NNTP-Posting-Host: 213.118.61.59 X-Complaints-To: abuse@telenet.be X-Trace: phobos.telenet-ops.be 1063376008 213.118.61.59 (Fri, 12 Sep 2003 16:13:28 MEST) NNTP-Posting-Date: Fri, 12 Sep 2003 16:13:28 MEST Organization: Telenet Internet