save versus write...
Als je data gaat opslaan, bijv. in cache of sessie, wat zijn dan de juiste/meest gebruikelijke termen? En idem voor het inladen/inlezen? Hier wat opties. Wat vinden jullie de beste?
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
A) voor het opslaan:
1: save // $cache->save($data);
2: write // $cache->write($data);
3: set // $cache->set($data);
B) voor het inladen/inlezen:
1: load // $cache->load($data);
2: read // $cache->read($data);
3: get // $cache->get($data);
1: save // $cache->save($data);
2: write // $cache->write($data);
3: set // $cache->set($data);
B) voor het inladen/inlezen:
1: load // $cache->load($data);
2: read // $cache->read($data);
3: get // $cache->get($data);
Wat dekt volgens jullie het beste de lading? Mijn persoonlijke voorkeur gaat uit tussen de combinatie van:
- load en save
OF
- read en write
Write is schrijven, als onderdeel van 'save'. Tijdens het 'saven' schrijf je het ergens weg.
set is tijdelijk opslaan, zoals sessie of 1-pagina-durend-iets (een $_GET bijvoorbeeld).
In jouw geval van cache/sessie: set().
Voor load/read/get zelfde verhaal, dus kom je uit bij get().
Bij cache of sessie schrijf je iets daadwerkelijk weg in een bestand (of database). Ik zou dan dus juist denken aan save of write, maar niet aan set.
Write als onderdeel van het saven daar kan ik wel inkomen, maar hoe zit het dan met load en read? Is read onderdeel van het loaden?
Andere meningen zijn ook welkom...
Save:
In het Nederlands vertaald 'opslaan'. Doosje vullen en naar een opslag locatie brengen (zolder, kelder, kamer waar ik toch nooit kom). Oftewel voor langer termijn, waar je (misschien) op langer termijn iets mee wil doen. Technisch voorbeeld is je bezoekers tellen. Naar de inhoudelijk records kijk je vrijwel nooit en al helemaal niet na 5 jaar, maar je wilt het wel behouden om misschien ooit te kijken hoeveel het aantal bezoekers dit jaar is gegroeid, ten opzichte van 5 jaar geleden. Maar dan zie ik jou niet elk record stuk voor stuk bekijken.
Write:
Met de intentie dat ik boodschappen ga doen schrijf ik op het boodschappenbriefje wat ik wil halen bij de supermarkt. Daadwerkelijk bewaren van deze gegevens zal ik niet heel lang doen, maar ik stop het briefje toch in mijn portemonnee of in mijn broekzak. Maar na mijn boodschappen gaat dat briefje echt weg.
Set:
Als ik koffie zet en hij is klaar schenk ik het mijn koffiekopje. Als ik het ga opdrinken dan is het daarna weg of dat het nu is omdat ik het opdrink, of dat ik het weggooi omdat ik er geen zin meer in heb. Het kopje zal in elk geval heel snel leeg zijn. Een ander voorbeeld binnen de koffie is dat het de koffie in de kan stroomt waar het tijdelijk op een plaatje wordt warm gehouden, maar die blijft vrijwel nooit lang vol achter, want je drinkt via je kopje* het op of je gooit het weg.
* afhankelijk van hoe mensen koffie drinken, ik doe dat in elk geval met een kopje xD
Load:
Als ik ga laden, dan komt dat doosje met oude spullen toch weer te voorschijn. Had ooit eens een roze met bloemtjes servies gekregen, van een verre tante waar ik absoluut niets mee heb. Maar nu de hond vanavond over de tafel heen rende toen hij dol was is al het servies kapot gegaan. Uur bezig alle scherven en rotzooi op te ruimen. Toch blij dat ik nog iets van servies op zolder heb staan, ondanks dat ik het vreselijk vindt heb ik nu even niet de tijd om nieuw servies te halen dus moeten we daar maar even mee doen.
Read:
Loop ik door de winkel heen is het toch wel fijn dat ik nog even op mijn boodschappen lijstje terug kan kijken of ik wel alles heb. En dus niet thuis kom en erachter kom dat ik iets vergeten ben (met uitzondering van dingen die niet op het lijstje stonden).
Get:
Als ik in koffie taal blijf zou ik hem eerder willen vertalen naar 'pakken' in plaats van (ver)krijgen. Waarbij ik doel op het kopje koffie wat ik pak. Ik drink de koffie op of ik gooi het weg. Maar goed taal is taal dus we houden het op (ver)krijgen. Op het moment dat ik ergens op een portaal wil, moet ik inloggen. Het systeem wil geautoriseerde gegevens verkrijgen, anders kan ik niet inloggen. Maar dit stelt niet dat die gegevens altijd hetzelfde blijven. Op het moment dat ik uitgelogd ben kan ik terug gaan naar een beveiligde pagina, maar hoor ik gewoon het bericht te krijgen dat ik niet ingelogd ben.
Ik kan bijvoorbeeld met een token werken of elke keer voordat ik uitlog mijn login gegevens wijzigen (ongeacht of dat realistisch is), maar het systeem wil voor het moment (tijdspanne) dat je op dat moment ingelogd bent, dat de gegevens hetzelfde zou moeten zijn als dat in een database zou staan.
Een heleboel tekst, maar nog geen concreet antwoord op mijn vraag. Als je weer nuchter ben, dan ben ik benieuwd wat er dan volgens jou bij het opslaan van cache of sessie gegevens hoort.
Nou, thanks... ik heb weer even gelachen :D
Ozzie PHP op 02/11/2013 02:53:57:
Hahahahaha... Bas... wat heb jij gedronken??? Whahaha... lol...
Een paar bakken koffie vandaar het voorbeeld, mogelijk iets teveel koffie [0.0] ;)
Een sessie is kort en tijdelijk. (browser)Cache wordt vaak opgeslagen op des harde schijf.
Onder Cache zou ik plaatsen:
- Save en Load
- Write en read
Vergeleken met de eerder gegeven voorbeelden bewaar je deze gegevens wat langer. Het boodschappen briefje kan ik 's avonds maken en de volgende dag uit me broekzak halen tijdens de boodschappen. Geld eigenlijk hetzelfde voor de verhuisdoos met servies. Je bewaard het wat langer om er later op terug te komen, waarbij het voor kan komen dat de tijdsduur kort is, maar ook langer.
Onder sessie zou ik plaatsen:
- Get en set
Bij een sessie is het eigenlijk een aan één gesloten activiteit. Neem het koffie drinken of een brainstorm sessie. Je voert het uit zonder onderbreking. De tijdspanne is kort.
Bij cache ben ik het volledig met je eens. Toch zou ik bij sessie ook gaan voor load en save. Een sessie kan een paar uur duren, en je slaat dan echt een (fysiek) bestand op.