Hallo,

Al meerdere malen loop ik hier tegenaan en ik ben benieuwd hoe jullie dit doen. Als je een aantal variabelen onder elkaar zet, lijn je deze dan netjes uit of niet?

Dus doe je gewoon dit:

<?php
$name = $user->getName();
$age = $user->getAge();
$gender = $user->getGender();
?>

Of doe je dit?

<?php
$name = $user->getName();
$age = $user->getAge();
$gender = $user->getGender();
?>

De laatste optie ziet er mooier uit, maar kost meer werk. De ene keer denk ik, ik doe het allemaal netjes. Dan denk ik weer, nee toch maar niet... en dan even later denk ik... toch maar wel :-)

Maar als ik het in PHP netjes doe, dan zou ik het in m'n css bestanden bijvoorbeeld ook netjes moeten doen... en dat is helemaal een boel werk! Dan zou je zoiets krijgen:


.eenclass {
  border     : 1px solid red;
  height     : 100%;
  margin-left: 15px;
  width      : 500px;
}


Kortom, ik ben benieuwd of jullie je variabelen wel of niet uitlijnen..!

hehe... daar kan ik je niet echt bij helpen vrees ik :)
rustig aan... en genoeg water drinken ;-)


Tijd om het onder de knie te krijgen misschien? Tja dat blijf ik natuurlijk vooral doen.

Kijk, ik doe het werk hier graag en probeer elk topic te lezen en waar het moet in te grijpen. (Mits er geen andere mods op dat moment aanwezig zijn, ik blijf wel library mod natuurlijk ;p)

Maar daarnaast heeft deze job (zo noem ik het maar even) niet de eerste prio. Ik heb op dit moment twee bedrijven waar (haast) al mijn energie naar toe gaat. Daarnaast doe ik nog een opleiding en probeer ik zoveel mogelijk aan mijn tafeltennis skillz te werken / trainen.

Er zitten helaas maar 24 uur in een dag ;-)

Niels
Tja, dan heb je het inderdaad erg druk! Heb je zelf 2 bedrijven?
Leuk topic Ozzie! Lijkt mij interessant hoe andere leden programmeren.
Zelf programmeer ik altijd in de eerste stijl, deels door luiheid en deels door gewoonte.
Stel nu dat je een derde variable aanmaakt waarvan de naam iets langer is dan de rest, dan moet je weer spaces bijzetten bij die andere variables, daarom doe ik het dus ook niet.
Dankje Raoul. Wat je zegt dat klopt en dat is dus wel irritant. Omgekeerd gebeurt het trouwens ook, dat ik een lange variabele weghaal of verplaats, en dat er dan ineens heel veel spaties staan. En meestal heb je dat niet direct in de gaten. Dus stel eerst was het dit:

<?php
$hele_lange_variabele = 'ikbenlang';
$foo = true;
$bar = false;
?>

en dan denk je, hé... ik kan die lange variabele beter even verplaatsen! En dan zie je een week later in je code ineens dit staan:

<?php
$foo = true;
$bar = false;
?>

Da's ook wel een beetje raar! ;-)
Ik denk wel dat er plugins bestaan als je een goede IDE of teksteditor gebruikt die dat doen voor jouw. Ik dacht aan Sublime Text en bijvoorbeeld Eclipse.

Tja, dan heb je het inderdaad erg druk! Heb je zelf 2 bedrijven?


Klopt! Ja ook dat klopt. Naast dat ik 40 uur voor een baas werk, werk ik in de avond uren nog aan mijn 2 bedrijven.

Ik vind beheerdertje spelen heel erg leuk, maar het bovenstaande heeft wel prio ;-)

Ik heb weer even een leuk en simpel praktijk codevoorbeeldje. Ik heb nu deze functie die gegevens ophaalt uit de sessie. Ik heb de functie als volgt geschreven:

<?php
public function get($key) {
if (isset($_SESSION['project_data'][$key])) {
return $_SESSION['project_data'][$key];
}
return false;
}
?>

Ik zou echter ook dit kunnen doen:

<?php
public function get($key) {
$value = false;
if (isset($_SESSION['project_data'][$key])) {
$value = $_SESSION['project_data'][$key];
}
return $value;
}
?>

Ik gebruik dus voorbeeld 1. Wat vinden jullie handiger / mooier / duidelijker?
Het mooi aan "Encapsulation" is dat het niet uitmaakt hoe de binnenkant er uit ziet, als de buitenkant maar hetzelfde is.

Jouw functie kun je gebruiken als:

$variable = Get( 'Sleutel' );

Ik had het mooier gevonden als je dit had kunnen schrijven:

$variable = $mySession->project_data->sleutel;

Als een gebruiker (of jezelf de dag na een avond zwaar stappen) de code leest zal hij in het eerste geval geen idee hebben waar het over gaat, en in het tweede geval het meteen snappen.

my 2 cents ..

"Het mooi aan "Encapsulation" is dat het niet uitmaakt hoe de binnenkant er uit ziet, als de buitenkant maar hetzelfde is."

Wat bedoel je met encapsulation?

Ik snap dat jouw voorbeeld ook een goede keuze is, maar daar gaat mijn vraag niet over. Mijn vraag is welke van de 2 functies prettiger is om te lezen, makkelijker om te begrijpen. Welke van die 2 voorbeelden heeft je voorkeur? En waarom?
Je schrijft een functie om die later te hergebruiken, en dezelfde code niet steeds weer te hoeven opschrijven.

Je pakt als het ware een oplossing van een probleem (in jouw geval het ophalen van een var uit de sessie) in een functie. Dat "inpakken" heet "encapsulation".

De functie stop je in een apart bestand, en je kijkt er niet meer naar om, je gebruikt de functie alleen maar.
Je kunt ook wisselen van voorbeeld 1 naar 2 en vice versa, zonder dat de rest van je programma er last van heeft. Het is een interne aangelegenheid.

Uiteindelijk is het niet belangrijk of je voor 1 of 2 gaat, belangrijk is hoe je de functie later gaat gebruiken, en hoe duidelijk dat dan is.

Dan praktisch: ik zou voor 1 gaan.

Reageren