Plus dat je ook problemen krijgt met de scope van je variabelen, enz. Jammer genoeg zit ik door de studie aan Java vast voorlopig.Haan schreef op donderdag 18 maart 2010 @ 13:06:
Wat ik me nog kan herinneren van Java, is dat het verplicht afvangen van een exception alleen maar het gebruik van try {.. } catch (IOException e) { // do nothing } in de hand werkt.
Verwijderd
Zolang je maar weet dat je het verkeerde gereedschap hebt gekozen is het niet zo'n probleem inderdaad.zwippie schreef op woensdag 17 maart 2010 @ 22:40:
Onzin. Het maakt niets uit in welke taal je een probleem gaat oplossen. Snelheid doet er in dit geval waarschijnlijk weinig toe. Zo'n oefening is leerzaam in elke taal.
@DEiE
Ik vind je opmerkingen een beetje vreemd. Op wat voor manier geeft het hebben van checked exceptions een voordeel mbt de plek waar je die exception afhandeld? Exceptions kun je ten alle tijden gewoon negeren en door je aanroeper af laten handelen. Daar heeft het 'throws' eigenlijk niet veel mee te maken. Sterker nog. Je moet een exception alleen maar afhandelen als je op dat punt ook daadwerkelijk weet wat je er mee kunt doen.
En hoezo geven try catch constructies problemen met scope? Of bedoel je daarmee dat je variabelen die binnen een try block worden gedefinieerd niet na dat blok gebruikt kunnen worden? Op zich is dat helemaal niet vreemd natuurlijk. Er is namelijk helemaal geen garantie dat die variabelen uberhaupt geinitialiseerd zijn.
@roy-t: Een FileNotFoundException extends een IOException. In java kun je dus ook toe met enkel het afvangen van de IOException.
--
Aangezien het een exception discussie is zal ik ook nog maar even mijn eigen menig spuwen
Ik heb geen problemen met checked exceptions. Sterker nog, ik vind de afweging van Spring om alles maar een RuntimeException te maken (als in non Checked) eigenlijk een beetje een irritante. Het grote voordeel van checked exceptions is dat je als het ware door de compiler gewezen wordt op mogelijke executie paden. Het enige dat je als programmeur af moet leren is de pavlov reactie om er dan gelijk maar een try catch block omheen te gooien. Als ik code schrijf die IO handelingen doet dan is het helemaal niet vreemd dat deze code een IOException gooit. Doe gooi ik dan gewoon door. Uiteraard gebeurt dit bij unchecked exceptions ook al wel. Maar nu wordt ik nog wel gewezen op de mogelijkheid en moet ik expliciet aangeven dat ik inderdaad accoord ga dat dit optreed en geef ik het door. Bijkomend voordeel is dat ik dan nog wel even herinnerd wordt aan het feit dat ik er misschien toch nog wel even een try finaly blok omheen moet zetten om te zorgen dat geopende resources ten alle tijden ook gesloten worden.
Ik vind je opmerkingen een beetje vreemd. Op wat voor manier geeft het hebben van checked exceptions een voordeel mbt de plek waar je die exception afhandeld? Exceptions kun je ten alle tijden gewoon negeren en door je aanroeper af laten handelen. Daar heeft het 'throws' eigenlijk niet veel mee te maken. Sterker nog. Je moet een exception alleen maar afhandelen als je op dat punt ook daadwerkelijk weet wat je er mee kunt doen.
En hoezo geven try catch constructies problemen met scope? Of bedoel je daarmee dat je variabelen die binnen een try block worden gedefinieerd niet na dat blok gebruikt kunnen worden? Op zich is dat helemaal niet vreemd natuurlijk. Er is namelijk helemaal geen garantie dat die variabelen uberhaupt geinitialiseerd zijn.
@roy-t: Een FileNotFoundException extends een IOException. In java kun je dus ook toe met enkel het afvangen van de IOException.
--
Aangezien het een exception discussie is zal ik ook nog maar even mijn eigen menig spuwen
Ik heb geen problemen met checked exceptions. Sterker nog, ik vind de afweging van Spring om alles maar een RuntimeException te maken (als in non Checked) eigenlijk een beetje een irritante. Het grote voordeel van checked exceptions is dat je als het ware door de compiler gewezen wordt op mogelijke executie paden. Het enige dat je als programmeur af moet leren is de pavlov reactie om er dan gelijk maar een try catch block omheen te gooien. Als ik code schrijf die IO handelingen doet dan is het helemaal niet vreemd dat deze code een IOException gooit. Doe gooi ik dan gewoon door. Uiteraard gebeurt dit bij unchecked exceptions ook al wel. Maar nu wordt ik nog wel gewezen op de mogelijkheid en moet ik expliciet aangeven dat ik inderdaad accoord ga dat dit optreed en geef ik het door. Bijkomend voordeel is dat ik dan nog wel even herinnerd wordt aan het feit dat ik er misschien toch nog wel even een try finaly blok omheen moet zetten om te zorgen dat geopende resources ten alle tijden ook gesloten worden.
[ Voor 45% gewijzigd door Janoz op 18-03-2010 13:43 ]
Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'
sudo just function normally!
sorrie, I know I'm a n00b
sorrie, I know I'm a n00b
It's super mega death christ 4000 B.C. Version 2.0 Beta B*tch!
C#:
1
2
| result.prefix_bovenliggendobject.IsNull = true; result.prefix_bovenliggendobject.IsNullSpecified = true; |
Dit is echt té vaag

We are shaping the future
Even snel gezocht, maar om te zeggen dat een object null is, moet je dus allebei de waarden zetten?
Wat kan daar in godsnaam de reden voor zijn
Xbox
Even the dark has a silver lining | I'm all you can imagine times infinity, times three
Het is mij ook nooit duidelijk geworden waarom dat zo is. Als ik nu even snel zoek, vind ik het volgende
Overigens, als je de SDK libraries gebruikt kan je het volgende doen:IsNullSpecified, strictly speaking, has nothing to do with this
functionality and is more of a fudge to bypass XML serialisation limitations
but it's a separate topic
C#:
1
2
| // als het bijv. om een boolean gaat CrmBooleanProperty boolProp = CrmTypes.CreateCrmBooleanProperty(prefix_bovenliggendobject, CrmBoolean.Null); |
[ Voor 30% gewijzigd door Haan op 18-03-2010 13:55 ]
Kater? Eerst water, de rest komt later
Dat heeft met XML serialisatie te maken. Als de ...Specified op true staat word hij ook in de geserialiseerde xml meegenomen.
Het komt omdat het een value type is, maar in de xml wil je toch de mogelijkheid hebben om het null te laten zijn. Daar zou je vanaf .net 2.0 gewoon een nullable type voor kunnen gebruiken, maar in 1.0 en 1.1 was dat natuurlijk nog niet mogelijk.
Het komt omdat het een value type is, maar in de xml wil je toch de mogelijkheid hebben om het null te laten zijn. Daar zou je vanaf .net 2.0 gewoon een nullable type voor kunnen gebruiken, maar in 1.0 en 1.1 was dat natuurlijk nog niet mogelijk.
[ Voor 52% gewijzigd door Woy op 18-03-2010 13:53 ]
“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”
De grootste ''tegenslagen' die ik tegenkom als ik in Java programmeer zijn:Snake schreef op donderdag 18 maart 2010 @ 10:11:
[...]
Kan je aanzetten he, op welke dat ie moet breaken
Dat is misschien een van de interesantste verschillen tussen Java en C# (de meeste zijn gewoon nadelig voor Java).
• Het niet hebben van properties maar het handmatig moeten schrijven van getters en setters.
• Coding style, ik vind het onlogisch dat publieke methodes niet pascal cased zijn.
• Er is zo ver ik weet geen IDE die in de buurt komt van Visual Studio. Ik heb Eclipse en Netbeans op me computer staan, waarbij Netbeans > Eclipse, maar zelfs Netbeans werkt niet zo lekker. Simpele dingen zoals op het juiste moment activeren van de code completion, of het automatisch importeren van packages. De form designer in Netbeans is ook veruit inferieur aan VS' form designer.
[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]
Eclipse Ctrl-Alt-s generete getters and setters. Dus echt handmatig valt wel meeSebazzz schreef op donderdag 18 maart 2010 @ 13:57:
[...]
De grootste ''tegenslagen' die ik tegenkom als ik in Java programmeer zijn:
• Het niet hebben van properties maar het handmatig moeten schrijven van getters en setters.
Smaak. Persoonlijk vind ik het juist vreemd dat je methoden met een hoofdletter schrijft.• Coding style, ik vind het onlogisch dat publieke methodes niet pascal cased zijn.
Qua form designer heb je gelijk, maar voor de rest? In eclipse werkt importeren van packages werkt gewoon en code completion activeer je met ctrl-spatie. Eigenlijk is VS vaak de achterlopende IDE. Ik verbaas me altijd over de 'nieuwe features' die altijd in VS beschikbaar komen. Meestal heb ik dan zoiets van 'huh? zat dat er nog niet in dan??'. Ik kan me bij de vorige VS release nog herinneren dat ik even de releasenotes van IntelliJ 3.0 opgezocht had. Deze had al meer refactor opties dan de vorige VS. IntelliJ 3.0 is gereleased in 2002.• Er is zo ver ik weet geen IDE die in de buurt komt van Visual Studio. Ik heb Eclipse en Netbeans op me computer staan, waarbij Netbeans > Eclipse, maar zelfs Netbeans werkt niet zo lekker. Simpele dingen zoals op het juiste moment activeren van de code completion, of het automatisch importeren van packages. De form designer in Netbeans is ook veruit inferieur aan VS' form designer.
IntelliJ is trouwens de iets minder bekende IDE voor java. Dat komt vooral omdat hij niet gratis is. Bij .NET-ers zijn de makers beter bekend met hun reSharper product.
Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'
Het afhandelen van een hoop exceptions tegelijk is bad practice, dat snap ik zelf ook, maar als je overal door je code zinloze try-catchen hebt staan, met een lege catch, omdat je van java geforceerd op exceptions moet controleren, vind ik dit zelf lelijker. Op het moment dat er iets zinvols met de catch wordt gedaan, handel ik deze ook niet af via bovenstaande methode.Janoz schreef op donderdag 18 maart 2010 @ 13:33:
Op wat voor manier geeft het hebben van checked exceptions een voordeel mbt de plek waar je die exception afhandeld? Exceptions kun je ten alle tijden gewoon negeren en door je aanroeper af laten handelen. Daar heeft het 'throws' eigenlijk niet veel mee te maken. Sterker nog. Je moet een exception alleen maar afhandelen als je op dat punt ook daadwerkelijk weet wat je er mee kunt doen.
Hoe bedoel je dat?Het afhandelen van een hoop exceptions tegelijk is bad practice
Wat noem jij een zinloze try catch? Als je een zinloze try catch hebt dan had je die exception daar helemaal niet hoeven vangen imho. Daarnaast, programmeurs die bij ons een leeg catch block inchecken worden bij ons publiekelijk aan de schandpaal genageld. Dat ergens een exception gegooit wordt betekend niet dat je verplicht op die plek die exception ook af moet catchen.maar als je overal door je code zinloze try-catchen hebt staan, met een lege catch, omdat je van java geforceerd op exceptions moet controleren, vind ik dit zelf lelijker.
Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'
In Java moet dit veelal wel, en gezien ik mezelf ook de try-catch-constructies die Haan aangaf zie gebruiken, reageerde ik op de stelling. Ook gaf ik aan dat ik daarom het niet verplicht afvangen uit c# veel prettiger vind werken.
Maar in Java heb je dus wel het 'throws' keyword die je aan een methode kan hangen om aan te geven dat je een exception niet in die methode gaat afvangen. Maar uiteindelijk zal je in ieder geval wel ergens in je code iets met die exception moeten doen.
Kater? Eerst water, de rest komt later
Erik Meijer noemt Java's throws keyword "honest about what's happening".
Ipsa Scientia Potestas Est
NNID: ShinNoNoir
Oef, had ik net toch bijna een topic geopend voor niets 
Ik zat al een tijdje te worstelen met het aanroepen van javascript vanuit de codebehind van een ASP.Net form. Dat kan normaal gesproken redelijk eenvoudig met ClientScript.RegisterClientScriptBlock, maar dat werkt niet als je in een UpdatePanel zit. Maar dan moet je blijkbaar een static methode van de ScriptManager gebruiken, dan werkt het wel. Die oplossing vond ik nadat ik de tekst voor het topic al had getikt, maar toch nog even een laatste keer ging zoeken met iets andere zoektermen
Ik zat al een tijdje te worstelen met het aanroepen van javascript vanuit de codebehind van een ASP.Net form. Dat kan normaal gesproken redelijk eenvoudig met ClientScript.RegisterClientScriptBlock, maar dat werkt niet als je in een UpdatePanel zit. Maar dan moet je blijkbaar een static methode van de ScriptManager gebruiken, dan werkt het wel. Die oplossing vond ik nadat ik de tekst voor het topic al had getikt, maar toch nog even een laatste keer ging zoeken met iets andere zoektermen
Kater? Eerst water, de rest komt later
Het enige verschil tussen java en c# is dat bij de laatste de throws impliciet is. Als ik jou was zou ik zo snel mogelijk die lege catch blokken af gaan leren voordat je straks door je project genoten/collegas gestenigd gaat wordenDEiE schreef op donderdag 18 maart 2010 @ 14:37:
In Java moet dit veelal wel, en gezien ik mezelf ook de try-catch-constructies die Haan aangaf zie gebruiken, reageerde ik op de stelling. Ook gaf ik aan dat ik daarom het niet verplicht afvangen uit c# veel prettiger vind werken.
Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'
Waarom werkt dit niet in IE
(lemmas is geproccesste json)
'object ondersteund actie niet' grrrrrr!
Wie-o-wie? En anders maar IE blacklisten

JavaScript:
1
2
| woord = 'nero'; lemma = lemmas[woord]; |
'object ondersteund actie niet' grrrrrr!
[ Voor 12% gewijzigd door RetroTycoon op 18-03-2010 17:51 ]
wat is "geproccesede"?
.edit: ah, bedoel je "geprocesste"?
.edit: ah, bedoel je "geprocesste"?
[ Voor 47% gewijzigd door .oisyn op 18-03-2010 17:27 ]
Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.
Ik bedenk me nu ineens waarom ik net iets geks zag. Stom! 
In het systeem waarin ik meebouw, worden records opgeslagen. Onder die records kunnen ook weer andere records hangen, zoals locaties. Nu heb ik daar een nieuw onderdeel bijgehangen, en dat werkt wel netjes. Het gekke was alleen dat ik in de raadpleegmodus 3 onderliggende objecten zag, en wanneer ik ging muteren maar 2. Ieder record heeft een ingangs- en een einddatum. Dit moet je opgeven wanneer je het record invoert. Wanneer je gaat muteren moet je ook een ingangsdatum opgeven voor die mutatie.
Ik bedenk me nu ineens dat een bepaald record een ingangsdatum heeft van 2/3/2010, en ik de mutatie-ingangsdatum op 1/3/2010 heb gezet. Dat record was op dat moment niet geldig, en dus zie je het ook niet terugkomen in de lijst.
Stom!

In het systeem waarin ik meebouw, worden records opgeslagen. Onder die records kunnen ook weer andere records hangen, zoals locaties. Nu heb ik daar een nieuw onderdeel bijgehangen, en dat werkt wel netjes. Het gekke was alleen dat ik in de raadpleegmodus 3 onderliggende objecten zag, en wanneer ik ging muteren maar 2. Ieder record heeft een ingangs- en een einddatum. Dit moet je opgeven wanneer je het record invoert. Wanneer je gaat muteren moet je ook een ingangsdatum opgeven voor die mutatie.
Ik bedenk me nu ineens dat een bepaald record een ingangsdatum heeft van 2/3/2010, en ik de mutatie-ingangsdatum op 1/3/2010 heb gezet. Dat record was op dat moment niet geldig, en dus zie je het ook niet terugkomen in de lijst.
Stom!

We are shaping the future
Let maar niet op het Nederlands.oisyn schreef op donderdag 18 maart 2010 @ 17:26:
wat is "geproccesede"?
.edit: ah, bedoel je "geprocesste"?
Als ik local wat wil gaan spelen met Postgresql, hoe krijg ik het dan voor elkaar dat die berg services (7 zie ik in m'n service list) niet met windows wordt opgestart? In start menu staan wel fijn 2 "applicaties" genaamd start en stop, maar bedoeling is dat hij gewoon alleen manual gestart wordt....
IMDB vote history | Next-gen OS, audio en video player, search engine en Movie DB
Ik zie er maar 1 (postgresql-8.4)? Kan je niet gewoon de services startup type op manual zetten?afraca schreef op donderdag 18 maart 2010 @ 18:01:
Als ik local wat wil gaan spelen met Postgresql, hoe krijg ik het dan voor elkaar dat die berg services (7 zie ik in m'n service list) niet met windows wordt opgestart? In start menu staan wel fijn 2 "applicaties" genaamd start en stop, maar bedoeling is dat hij gewoon alleen manual gestart wordt....
Ah, dat was niet bijzonder slim van me, was de lijst met processes
(alsnog, waarom 7...) Nu op manual gezet, prima
Kijken of ik nu nog wat leuks in elkaar kan knutselen zodat ik heel eenvoudig kies welk van de drie ik start (Apache, MySQL en/of Postgresql)
IMDB vote history | Next-gen OS, audio en video player, search engine en Movie DB
Nou ja! Lemma lijkt een restricted word! Daarnaast, voor IE maar even een lelijke eval() gebruikt.
Omdat het werkt
JavaScript:
1
| simpelLemma = eval('lemmas.'+woord); |
Omdat het werkt
RetroTycoon schreef op donderdag 18 maart 2010 @ 18:34:
Nou ja! Lemma lijkt een restricted word! Daarnaast, voor IE maar even een lelijke eval() gebruikt.
JavaScript:
1 simpelLemma = eval('lemmas.'+woord);
Omdat het werkt
JavaScript:
werkt niet 1
| var simpelLemma = lemmas[woord]; |
... en etcetera en zo
Als je eenmaal met postgresql hebt gewerkt denk ik dat je mysql al snel wistafraca schreef op donderdag 18 maart 2010 @ 18:18:
Ah, dat was niet bijzonder slim van me, was de lijst met processes(alsnog, waarom 7...) Nu op manual gezet, prima
Kijken of ik nu nog wat leuks in elkaar kan knutselen zodat ik heel eenvoudig kies welk van de drie ik start (Apache, MySQL en/of Postgresql)
Ik zit eens te kijken naar de APIs die Google aanbiedt voor Apps en GMail... maar hoe kan ik nou mijn GMail-account inzien? Moet ik nou echt POP3 of IMAP gaan gebruiken daarvoor?
We are shaping the future
Nee, in IE schijnbaar niet... je krijgt een 'methode niet ondersteund' of iets dergelijks. In overige browsers geen probleem overigenspieturp schreef op donderdag 18 maart 2010 @ 21:31:
[...]
JavaScript:werkt niet
1 var simpelLemma = lemmas[woord];
Je zou natuurlijk een script/applicatie kunnen maken dat zich voordoet als POP3-server maar middels een API Gmail uitleestAlex) schreef op donderdag 18 maart 2010 @ 21:38:
Ik zit eens te kijken naar de APIs die Google aanbiedt voor Apps en GMail... maar hoe kan ik nou mijn GMail-account inzien? Moet ik nou echt POP3 of IMAP gaan gebruiken daarvoor?
If money talks then I'm a mime
If time is money then I'm out of time
Wat denk je dat mijn plan B is? 
Jammergenoeg zal ik dan eerst voor iedere user het password moeten resetten, en daarna ook nog eens POP3-access moeten enablen. En dat laatste is volgens de documentatie dan weer niet mogelijk via de API omdat users eerst eens ToS moeten accepteren.
Jammergenoeg zal ik dan eerst voor iedere user het password moeten resetten, en daarna ook nog eens POP3-access moeten enablen. En dat laatste is volgens de documentatie dan weer niet mogelijk via de API omdat users eerst eens ToS moeten accepteren.

We are shaping the future
Daar zit ik nu ook naar te kijken... zo te zien kan ik dus wel vanuit een API die dingen aansturen. Echter, dan moet ik wel het password weten. En dat weet ik dus niet. Dan moet ik, denk ik, van iedere account het password gaan resetten, vervolgens requests gaan uitvoeren, en daarna proberen om met de nieuwe credentials de mailboxen leeg te halen.
* Alex) zit deEmail settings API-guide door te lezen.
* Alex) zit deEmail settings API-guide door te lezen.
We are shaping the future
Nou, nee. Maar in Exchange heb je bijvoorbeeld Impersonation... en daarmee kan je als service account wel bij mailboxen.
We are shaping the future
Verwijderd
Ja omdat je account dan waarschijnlijk gekoppeld is aan je mailbox, laat dat nou bij GMail net het geval niet zijn.Alex) schreef op donderdag 18 maart 2010 @ 22:17:
Nou, nee. Maar in Exchange heb je bijvoorbeeld Impersonation... en daarmee kan je als service account wel bij mailboxen.
Zelf heb ik Exchange 2010 draaien

We are shaping the future
Ok, niet het RadSplitter component gebruiken icm met IE7 of IE8 in compatibiliteit mode. Wat een buggy frutzooi zeg. Links een panel, rechts een panel, met in beide een updatepanel en wat andere telerik controls. (zoals dat RadDock geval).
Zodra je het scherm resized, of de splitterbar probeert te verslepen verdwijnt het linkerpanel... rara. Uiteindelijk kom ik erachter dat het iets te maken heeft met overlay divs en z-indexes.
Ik ga t zelf wel doen met jquery.
Zodra je het scherm resized, of de splitterbar probeert te verslepen verdwijnt het linkerpanel... rara. Uiteindelijk kom ik erachter dat het iets te maken heeft met overlay divs en z-indexes.
Ik ga t zelf wel doen met jquery.
Een plugin voor Visual Studio 2010... nuttig? http://visualstudiogaller...5a-439a-91df-4ce7c721df12
We are shaping the future
Afbeeldingen in je code...Alex) schreef op vrijdag 19 maart 2010 @ 11:05:
Een plugin voor Visual Studio 2010... nuttig? http://visualstudiogaller...5a-439a-91df-4ce7c721df12

[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]
Ik zou een prentje maken van een perfect uitziend stukje code
En dan de echte code commenten.
Going for adventure, lots of sun and a convertible! | GMT-8
Uit de TS

Verschrikkelijk verslaafd ben ik (geworden). Als ik nu binnen een uur na wakker worden geen koffie drink. Dan krijg ik een doffe, bonkende hoofdpijn.
* Matis coffee junky

Verschrikkelijk verslaafd ben ik (geworden). Als ik nu binnen een uur na wakker worden geen koffie drink. Dan krijg ik een doffe, bonkende hoofdpijn.
* Matis coffee junky
If money talks then I'm a mime
If time is money then I'm out of time
Hmm dat kan idd een zeer nuttige feature zijn. Ik heb het altijd al een nadeel gevonden dat code altijd zo kaal is, afgezien van de comments waar je ook maar vrij weinig mee kan. Het zou mij best handig lijken als je even een diagrammetje oid in je code kan plaatsen.Alex) schreef op vrijdag 19 maart 2010 @ 11:05:
Een plugin voor Visual Studio 2010... nuttig? http://visualstudiogaller...5a-439a-91df-4ce7c721df12
[ Voor 31% gewijzigd door .oisyn op 19-03-2010 11:19 ]
Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.
Idd, gewoon de documentatie direct bij de code toevoegen.
https://fgheysels.github.io/
Inderdaad. Ik heb hier een heel kladblok vol met tekeningen en wiskundige uitschrijvingen van intersectie-algoritmen. Het is onmogelijk om dat met comments in de code te plaatsen.
Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.
Kan in sommige gevallen voor documentatie wel handig zijn (hoef je niet te klooien met dingen op een externe host zetten).
Lijkt me alleen niet echt praktisch zodra je buiten VS werkt, plus de andere problemen die je kunt krijgen zoals genereren van documentatie en dergelijke.
Lijkt me alleen niet echt praktisch zodra je buiten VS werkt, plus de andere problemen die je kunt krijgen zoals genereren van documentatie en dergelijke.
* RayNbow moet opeens denken aan Literate Programming...
[ Voor 3% gewijzigd door RayNbow op 19-03-2010 12:28 ]
Ipsa Scientia Potestas Est
NNID: ShinNoNoir
LOL, afslankkoffie als google add hier onderin het topic. Matis!, leef je uit!!
Ads, daar doe ik niet aanD-Raven schreef op vrijdag 19 maart 2010 @ 13:51:
LOL, afslankkoffie als google add hier onderin het topic. Matis!, leef je uit!!
If money talks then I'm a mime
If time is money then I'm out of time
Precies, echte tweakers drinken koffie én krijgen geen ads te zien
Kater? Eerst water, de rest komt later
Ads door Google
Afslankkoffie € 6,60 2=1
Koffie met afslankende werking bij Yves Rocher. Koop nu voordelig!
www.yves-rocher.nl
Afslankkoffie € 6,60 2=1
Koffie met afslankende werking bij Yves Rocher. Koop nu voordelig!
www.yves-rocher.nl
Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten
Posts weren die smiley-only zijn.
Gewoon de juiste smiley in deze context.
Of in jouw geval: neem een bakje koffie en een abonnement, of zet die blocker uit..
Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten
Ow... is dat hetHaan schreef op vrijdag 19 maart 2010 @ 15:14:
Precies, echte tweakers drinken koffie én krijgen geen ads te zien
Pfff, abo's, blockers... een custom css doet wonderen
Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.
Het is na 4 uur op vrijdag, bij dezen is dit topic nu de Devschuur Bierkeet. Proost!
Zo dat zijn flinke, eeehhmm, pullen
“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”
Verwijderd
YopY schreef op vrijdag 19 maart 2010 @ 16:41:
Het is na 4 uur op vrijdag, bij dezen is dit topic nu de Devschuur Bierkeet. Proost!
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
| <?php class Alcohol { public function __init() { $this -> mag = true; } } final class Bierrr extends Alcohol { public $__hoeveelheid; /** * @about Over nutteloze code gesproken **/ public function __init() { parent::__init(); $this -> __hoeveelheid = 1; } public function geef() { $this -> __hoeveelheid++; return 'Proost'; } } $bier = new Bierrr; echo $bier -> geef; |
Proost!
Even offtopic gaan (aangezien het topic nu is veranderd
):
http://blogs.msdn.com/ie/...8/svg-in-ie9-roadmap.aspx
IE9 gaat SVG ondersteunen, en dat ook nog eens met de mogelijkheid ze te embedden in een IMG tag. Ik kwam het toevallig tegen omdat ik Bug 276431 - external SVG not loaded from img tag aan het volgen ben.
[q]SVG in Internet Explorer 9
The following is currently supported in the IE9 Platform Preview (at least partially):
• Methods of embedding: inline HTML, inline XHTML, <object>, full .svg documents
• Structure: <svg>, <defs>, <use>, <g>, <image>
• Shapes: <circle>, <ellipse>, <rect>, <line>, <polyline>, <polygon>, <path>
• Text
• Filling, Stroking, (CSS3) Color
• DOML2 Core and SVGDOM
• Events
• Presentation Attributes and CSS Styling
• Transforms: translate, skewX, skewY, scale, rotate
Most of SVG that is currently supported in the Platform Preview is fully implemented. If an element exists in the Platform Preview, it most likely has the corresponding SVGDOM support and can be styled with CSS/presentation attributes.
In future updates, the IE9 Platform Preview will support:
• Methods of embedding: <embed>, <iframe>, <img>, css image, .svgz
• Gradients and Patterns
• Clipping, Masking, and Compositing
• Cursor, Marker
• Remainder of Text, Transforms, Events MS is op de goede weg lijkt het.
http://blogs.msdn.com/ie/...8/svg-in-ie9-roadmap.aspx
IE9 gaat SVG ondersteunen, en dat ook nog eens met de mogelijkheid ze te embedden in een IMG tag. Ik kwam het toevallig tegen omdat ik Bug 276431 - external SVG not loaded from img tag aan het volgen ben.
[q]SVG in Internet Explorer 9
The following is currently supported in the IE9 Platform Preview (at least partially):
• Methods of embedding: inline HTML, inline XHTML, <object>, full .svg documents
• Structure: <svg>, <defs>, <use>, <g>, <image>
• Shapes: <circle>, <ellipse>, <rect>, <line>, <polyline>, <polygon>, <path>
• Text
• Filling, Stroking, (CSS3) Color
• DOML2 Core and SVGDOM
• Events
• Presentation Attributes and CSS Styling
• Transforms: translate, skewX, skewY, scale, rotate
Most of SVG that is currently supported in the Platform Preview is fully implemented. If an element exists in the Platform Preview, it most likely has the corresponding SVGDOM support and can be styled with CSS/presentation attributes.
In future updates, the IE9 Platform Preview will support:
• Methods of embedding: <embed>, <iframe>, <img>, css image, .svgz
• Gradients and Patterns
• Clipping, Masking, and Compositing
• Cursor, Marker
• Remainder of Text, Transforms, Events MS is op de goede weg lijkt het.
[ Voor 58% gewijzigd door Sebazzz op 19-03-2010 17:03 ]
[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]
He bah een PHP biertje, doe mij maar C# bierVerwijderd schreef op vrijdag 19 maart 2010 @ 16:58:
[...]
PHP:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 <?php class Alcohol { public function __init() { $this -> mag = true; } } final class Bierrr extends Alcohol { public $__hoeveelheid; /** * @about Over nutteloze code gesproken **/ public function __init() { parent::__init(); $this -> __hoeveelheid = 1; } public function geef() { $this -> __hoeveelheid++; return 'Proost'; } } $bier = new Bierrr; echo $bier -> geef;
Proost!
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| public class Beer { /// <summary> /// Drink a can of beer until it's empty. /// </summary> /// <param name="canSize">The size of the can in ml</param> /// <param name="draughtSize">The size in ml of one draught</param> public void Drink(int canSize, int draughtSize) { int amountLeft = canSize; while (amountLeft > 0) { amountLeft -= draughtSize; // wait 5 secs before drinking again System.Threading.Thread.Sleep(5000); } } } List<Beer> sixpack = new List<Beer>(6); foreach (Beer can in sixpack) { can.Drink(333, 10); } |
Kater? Eerst water, de rest komt later
Tsss, blocking bier drinken. Daar heb je ook niks aan. Eet dan tenminste nog wat bittergarnituur tussendoor.
“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”
PHP bier, zal wel naar Grolsch smaken

Java bier, is dat met koffiesmaak of is dat heel dik en traag?
[ Voor 23% gewijzigd door Sebazzz op 19-03-2010 18:06 ]
[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]
Het lijkt wat dik en traag misschien in het begin, maar als je eenmaal begint te drinken is het zo naar binnen. En het veroorzaakt ook geen rommelSebazzz schreef op vrijdag 19 maart 2010 @ 17:59:
[...]
Java bier, is dat met koffiesmaak of is dat heel dik en traag?
De wereld ligt aan je voeten. Je moet alleen diep genoeg willen bukken...
"Wie geen fouten maakt maakt meestal niets!"
Zoals eerder in een opmerking had ik Postgresql hier lokaal even geïnstalleerd om wat mee te stoeien, voor hobby gebruik gewoon. Die creëert tevens nieuw account hier in windows. Aangezien het hier niet om een productieomgeving gaat kan ik toch gewoon veilig dat account weggooien?
IMDB vote history | Next-gen OS, audio en video player, search engine en Movie DB
SVG volledig implementeren is vergelijkbaar met een complete flashplayer. SVG biedt scripting, animaties etc. Adobe was daar een eind mee op weg, maar door de overname van Flash hebben ze de SVG player in de prullenbak gegooid (helaas). IE zal wel net als Firefox alleen het weergeven van de basisobjecten implementeren. Wat overigens geen zak voorstelt als je al een Xml + css parser hebt. Ik mag het zeggen omdat ik ooit eens een simpele SVG tool geschreven heb.Sebazzz schreef op vrijdag 19 maart 2010 @ 16:59:
Even offtopic gaan (aangezien het topic nu is veranderd):
http://blogs.msdn.com/ie/...8/svg-in-ie9-roadmap.aspx
IE9 gaat SVG ondersteunen, en dat ook nog eens met de mogelijkheid ze te embedden in een IMG tag. Ik kwam het toevallig tegen omdat ik Bug 276431 - external SVG not loaded from img tag aan het volgen ben.
[...]
MS is op de goede weg lijkt het.
http://hawvie.deviantart.com/
Ik vind er ook wel wat voor te zeggen dat er een Parent in moet voorkomen. Sommige dingen doe je nu eenmaal liever zonder Parent in de buurt. Desondanks heb ik als Achterhoeker geen probleem met Grolsch.Sebazzz schreef op vrijdag 19 maart 2010 @ 17:59:
[...]
PHP bier, zal wel naar Grolsch smakenWeak typed, dus zit ook allemaal verontreinigingen in.
Java bier, is dat met koffiesmaak of is dat heel dik en traag?
[ Voor 6% gewijzigd door Arethusa op 20-03-2010 02:45 ]
I've been mad for fucking years, absolutely years, been over the edge for yonks.
Vinyl: Discogs
Verwijderd
Objective-C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
| @interface beer : NSObject { int content; } +(beer *)pak; -(beer *)open; -(BOOL)drink; -(void)laatVallen; @end; @implementation beer +(beer *)pak { NSLog(@"Proost!"); return [super alloc]; } -(beer *)open { content = 300; return [self init]; } -(BOOL)drink { if (content > 0) { content -= 20; if (content <= 0) { NSLog(@"Waar blijft de nieuwe!?"); return NO; } return YES; } NSLog(@"Al leeg lambal!"); return NO; } -(void)laatVallen { NSLog(@"Raap je hem ook zelf even op!?"); if (content > 0) NSLog(@"En maak gelijk de vloer droog.."); [self release]; } @end int main (int argc, const char * argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; beer * bier; int sixpack; for (sixpack = 6; sixpack > 0; sixpack--) { bier = [[beer pak] open]; while ([bier drink]) { NSLog(@"*BURP*"); } [bier laatVallen]; } [pool drain]; return 0; } |
Beetje laat, maar hier nog een smaakje.
Wat voor 'n smaakje zal het zijn, appel?
Appelsap zo op de zaterdagmorgen is geen probleem ,maar bier.. en dan ook nog eens met appelsmaak? Van welke planeet kom jij?
"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney
Voor mensen zonder HKXS:


If money talks then I'm a mime
If time is money then I'm out of time
En jij drinkt zeker Heineken



Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.
Nee, dat is niet loose-typed
If money talks then I'm a mime
If time is money then I'm out of time
De verschillende processen van postgresql hebben te maken met de architectuur van postgresql, en daar zijn best goede redenen voor... Bijvoorbeeld als een enkel backend crasht dat niet je hele server doodgaat.afraca schreef op donderdag 18 maart 2010 @ 18:18:
Ah, dat was niet bijzonder slim van me, was de lijst met processes(alsnog, waarom 7...) Nu op manual gezet, prima
Kijken of ik nu nog wat leuks in elkaar kan knutselen zodat ik heel eenvoudig kies welk van de drie ik start (Apache, MySQL en/of Postgresql)
Nee, dat is het account waaronder de server draait. Die ga je toch niet als Administrator draaien... Ook niet in Windows.afraca schreef op zaterdag 20 maart 2010 @ 00:32:
Zoals eerder in een opmerking had ik Postgresql hier lokaal even geïnstalleerd om wat mee te stoeien, voor hobby gebruik gewoon. Die creëert tevens nieuw account hier in windows. Aangezien het hier niet om een productieomgeving gaat kan ik toch gewoon veilig dat account weggooien?
Waarom wil je alles perse uitzetten en weggooien? Postgresql neemt heel weinig resources als je geen verbinding maakt en een user account kost al helemaal niks. Het is geen Oracle
Nee, Jupiler. Dat is dan wel Belgisch, maar het is wel lekker. Af en toe, met een paar vrienden, dus niet voor een party of zoiets kan er ook een westmalle in. Hoewel je dat niet te vaak moet drinken.
[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]
Verwijderd
Jupiler, Hertog 
Heineken
Amstel
Grolsch
Tevens het grote minpunt van Lowlands.
Heineken
Amstel
Grolsch
[ Voor 73% gewijzigd door Verwijderd op 20-03-2010 13:08 ]
Geen smaakVerwijderd schreef op zaterdag 20 maart 2010 @ 13:07:
Jupiler, Hertog
Heineken![]()
Amstel![]()
GrolschTevens het grote minpunt van Lowlands.
FixedVerwijderd schreef op zaterdag 20 maart 2010 @ 13:07:
Jupiler, Hertog
Dommelsch![]()
Amstel, Heineken![]()
GrolschTevens het grote minpunt van Lowlands.
If money talks then I'm a mime
If time is money then I'm out of time
En de Devschuur Coffee Corner is alsnog de Devschuur Kroeg geworden
[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]
Die gasten zuipen maar door op die VrijMiBo...
Pils. Waar ik Bavaria zei, bedoelde ik Hertog, en waar ik Hertog zei, bedoelde ik Euroshopper... En nee, wij zijn niet gevoelig voor reclame.
Pils. Waar ik Bavaria zei, bedoelde ik Hertog, en waar ik Hertog zei, bedoelde ik Euroshopper... En nee, wij zijn niet gevoelig voor reclame.
Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten
And what about Palm? Ook altijd lekker
"The people who are crazy enough to think they could change the world, are the ones who do." -- Steve Jobs (1955-2011) , Aaron Swartz (1986-2013)
Verwijderd
Bier
Cola! 
Zo ff snel uit m'n hoofd gedaan.

C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
| #include <iostream> class Cola { public: void Cola(int amount) { this->amount = amount; } virtual ~Cola {} void drink(int amount) { if ( amount <= this->amount) { this->amount -= amount; burp(); } else { drink(this->amount); } } void burp() { std::cout << "BBBBBBBBBBBBBBBBBUUUUUUUUUUURRRRRRRRRRRRRRRRRPPPPPPPPPPPPP" << std::endl; } void give() { std::cout << "Get your own!" << std::endl; } private: int amount; } int main(int argc, char *argv[]) { Cola cola = cola(5); cola.drink(5); } |
Zo ff snel uit m'n hoofd gedaan.
Is te zien
Dit lijkt meer op C++:
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
| #include <iostream> class Cola { public: Cola(int amount) { this->amount = amount; } void burp() { std::cout << "BBBBBBBBBBBBBBBBBUUUUUUUUUUURRRRRRRRRRRRRRRRRPPPPPPPPPPPPP" << std::endl; } void drink(int amount) { if ( amount <= this->amount) { this->amount -= amount; burp(); } else { drink(this->amount); } } void give() { std::cout << "Get your own!" << std::endl; } private: int amount; }; int main(int argc, char *argv[]) { Cola cola(5); cola.drink(5); } |
Toch aan het bier gezeten?
¸.·´¯`·.¸.·´¯`·.¸><(((º>¸.·´¯`·.¸><(((º>¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸<º)))><¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸
Wat is het verschil behalve dat je de destructor hebt weggelaten?
Kater? Eerst water, de rest komt later
Er stond geen destructor.
Kijk maar goed.
En de regel:
De derde "cola" met een hoofdletter schrijven had ook gekund, maar dit vind ik netter.
En de regel:
C++:
1
| Cola cola = cola(5); |
De derde "cola" met een hoofdletter schrijven had ook gekund, maar dit vind ik netter.
[ Voor 62% gewijzigd door CoolGamer op 20-03-2010 16:50 ]
¸.·´¯`·.¸.·´¯`·.¸><(((º>¸.·´¯`·.¸><(((º>¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸<º)))><¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸
Ik kan alleen een beetje C++ lezen omdat Java en C# er zo op lijken, dus de fijne details zie ik gegarandeerd over het hoofd 
Al zal het kunnen liggen aan de {} ipv ()
Al zal het kunnen liggen aan de {} ipv ()
[ Voor 14% gewijzigd door Haan op 20-03-2010 16:50 ]
Kater? Eerst water, de rest komt later
Dit staat er:
Een destructor is een member-function/methode. Een functie heeft een lijst met te accepteren parameters tussen () staan, die mist hier. Daardoor ziet de compiler het als een virual data-member, iets wat niet kan in C++.
C++:
1
| virtual ~Cola {} |
Een destructor is een member-function/methode. Een functie heeft een lijst met te accepteren parameters tussen () staan, die mist hier. Daardoor ziet de compiler het als een virual data-member, iets wat niet kan in C++.
¸.·´¯`·.¸.·´¯`·.¸><(((º>¸.·´¯`·.¸><(((º>¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸<º)))><¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸
Verwijderd
Het was voor mij nog vrijdag avond.Creepy schreef op zaterdag 20 maart 2010 @ 10:03:
Appelsap zo op de zaterdagmorgen is geen probleem ,maar bier.. en dan ook nog eens met appelsmaak? Van welke planeet kom jij?
Ik kom van de planeet Aarde, ken je die?
Bleh, ik word ziek denk ik...


Verwijderd
TheCoolGamer schreef op zaterdag 20 maart 2010 @ 16:44:
Toch aan het bier gezeten?
Hoog tijd dat ik weer eens die-hard C++ gaan doen, dit kan zo niet natuurlijk.
Niet aan het bier gezeten, alcohol en Wezz6400 gaan niet goed samen.
[ Voor 46% gewijzigd door Verwijderd op 20-03-2010 17:21 . Reden: fixed quote ]
Wat zullen we nou krijgen... ik heb op mijn laptop iets met WPF gemaakt, nu open ik dezelfde solution op m'n desktop en Visual Studio weigert de designer te laden.
Gezocht, werd er als suggestie gegeven "verwijder de WPF toolkit" en "verwijder Expression Blend"... maar ik wil Blend helemaal niet deïnstalleren!
Wtf 2: zodra ik een node selecteer in de Objects-view van Blend, krijg ik een NullReferenceException
code:
1
| Unable to cast object of type 'MS.Internal.NamedObject' to type 'System.Windows.Input.Cursor'. |
Gezocht, werd er als suggestie gegeven "verwijder de WPF toolkit" en "verwijder Expression Blend"... maar ik wil Blend helemaal niet deïnstalleren!
Wtf 2: zodra ik een node selecteer in de Objects-view van Blend, krijg ik een NullReferenceException

[ Voor 11% gewijzigd door Alex) op 20-03-2010 18:34 ]
We are shaping the future
Ja, met Silverlight heb ik tussen Visual Studio en Blend ook wel eens onverklaarbare conflicten gehad, Bijvoorbeeld dat fonts niet zomaar wilden embedden via de Blend manier (scheelt ruimte, en je kan zeggen dat je bijvoorbeeld alleen cijfers wilt hebben), dus ik moest ze als resource opnemen wat veel meer ruimte kost.
[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]
Verwijderd
Nieuwe aanvraag gekregen voor een webbased licentie systeempje, waar licenties voor desktop applicaties gekocht en uitgegeven worden.
Iemand nog tips waar ik rekening mee moet houden?
Je bedoelt bijvoorbeeld Concurrent named users voorkomen (C# webbased) ?
Kater? Eerst water, de rest komt later
Ah, primamatthijsln schreef op zaterdag 20 maart 2010 @ 12:30:
[...]
De verschillende processen van postgresql hebben te maken met de architectuur van postgresql, en daar zijn best goede redenen voor... Bijvoorbeeld als een enkel backend crasht dat niet je hele server doodgaat.
Het was ook niet m'n bedoeling postgres te draaien als Adminstrator (had ondertussen bedoeling van account door). Het is alleen dat er wat "irritatie" was dat ik er bij inloggen een naam bijhad, waardoor er een extra klik nodig was voor inloggen. Nu heb ik dat als het goed is met een leuk trucje opgelost, Postgresql heeft z'n account en ik heb met inloggen dat ik niet meer extra hoef te klikken.[...]
Nee, dat is het account waaronder de server draait. Die ga je toch niet als Administrator draaien... Ook niet in Windows.
Waarom wil je alles perse uitzetten en weggooien? Postgresql neemt heel weinig resources als je geen verbinding maakt en een user account kost al helemaal niks. Het is geen Oracle
Zoals gezegd, het is puur alleen om er wat kennis mee te maken. Er gaan geen "grote" dingen op draaien, er zal geen user interactie zijn, dus ik snap niet helemaal wat er mis kan gaan, behalve dat ik zelf handmatig een query ga draaien die iets vreemds doet. Ik heb veel goede verhalen gehoord over Postgresql dus was gewoon benieuwd. Kijken hoe queries draaien, hoe zo'n systeem een beetje in elkaar zit
Wat betreft de resources. Tja, ik ben iemand die niet onnodige dingen wil hebben draaien / geïnstalleerd wil hebben. Het is eenvoudig de services op manual te zetten, dus als het kan doe ik het zo, tenzij dat grote gevolgen heeft.
IMDB vote history | Next-gen OS, audio en video player, search engine en Movie DB
Verwijderd
Niet helemaal, het gaat alleen om een webbased licentiesysteem, de applicatie zelf is gewoon voor Windows. Heb inmiddels al wel een plan liggen hoe het zou kunnen, het zwakke punt blijft toch de desktop applicatie, zodra ze daar de check uit slopen kan je het fluiten met je licentie checks.Haan schreef op zondag 21 maart 2010 @ 12:24:
Je bedoelt bijvoorbeeld Concurrent named users voorkomen (C# webbased) ?
Verwijderd
Even wat anders...
Stel je voor, je hebt een database table:
En in overzichten order je op "name", zodat ze op alfabetische volgorde komen.
En als je doorklikt, bijvoorbeeld naar een van die rijen, en die selecteert op basis van de id (of een ander uniek veld), wat is dan de snelste manier om de vorige en volgende op te halen? (Om er naar te linken "<< Vorige | Volgende >>")
Ik haal nu, omdat ik niks beters kon verzinnen, gewoon de data op met de where en order e.d. die er in moeten, maar die moet ik nou doorlopen totdat ik het huidige product vind.
Volgens mij zie ik iets heel simpels over het hoofd, wie ziet het?
Stel je voor, je hebt een database table:
code:
1
2
3
4
5
6
7
| +----+------+ | id | name | +----+------+ | 1 | Z | | 2 | A | | 4 | E | +----+------+ |
En in overzichten order je op "name", zodat ze op alfabetische volgorde komen.
Ik haal nu, omdat ik niks beters kon verzinnen, gewoon de data op met de where en order e.d. die er in moeten, maar die moet ik nou doorlopen totdat ik het huidige product vind.

Het lijkt me het makkelijkst om ervoor te zorgen dat wanneer je een los item opvraagt, je niet het id (of andere veld) meegeeft maar de plaats in de gesorteerde lijst, die je vervolgens 1 hoger of lager kan maken. Vervolgens kan je met behulp van limit netjes de volgende of vorige ophalen.
Of je doet gewoon 2 queries: WHERE name < 'E' ORDER BY name DESC LIMIT 1 en WHERE name > 'E' ORDER BY name ASC LIMIT 1. Met een index op name is dit gewoon snel.
[ Voor 14% gewijzigd door .oisyn op 22-03-2010 11:01 ]
Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.
Dit topic is gesloten.
Let op:
Dit topic is niet de plaats om te lopen helpdesken. De Coffee Corner is primair bedoeld als uitlaatklep, niet als vraagbaak
Dit topic is niet de plaats om te lopen helpdesken. De Coffee Corner is primair bedoeld als uitlaatklep, niet als vraagbaak