Namenspaare
Normalerweise schaue ich ja gerne, wenn ich über den Tellerrand blicke, auf Java als Referenzsprache, da ich finde, dass hier viele Dinge lehrbuchhaft gelöst sind. Da es vor kurzem nötig war mal einen Observer zu programmieren, wollte ich mich bei der Namengebung der Funktionen mal wieder bei Java bedienen. Nur leider ist die Namensgebung dort gar nicht gelungen.
Hier kann man mit der Methode addObserver( ) einen Observer hinzufügen, mit deleteObserver( ) wird dieser wieder von einem Observable entfernt. Aber bin ich der einzige, der hier die falschen Namen bemerkt? Wenn ich ein add irgendwo haben, dann muss das Pendant natürlich remove heißen. Leider die die Namendgebung bei PHP noch misslungener. Hier heißen sie add und remove. Aber darüber habe ich mich ja schon in meinem Beitrag über die SPL ausgelassen.
Inspiriert von dieser traurigen Geschichte, habe ich mir gedacht, ich könnte doch mal ein paar alltägliche Wortpaare aufschreiben. Im Folgenden findet ihr also eine solche Liste:
set - get add - remove create - delete show - hide expand - collapse send - receive open - close read - write start - stop begin - end encode - decode increase - decrease split - merge pack - unpack
Schockierend. Eigentlich war ich mit bis gerade sicher, dass ich ohne Probleme hunderte von Wortpaaren finde, aber irgendwie ist nach diesen fünf (habe sie jetzt aber mit den Kommentaren aufgefüllt) bereits Schluss. Aber ich vertrau jetzt einfach mal auf meine Leser. Wer also ein fehlendes Wortpaar zu bieten hat, der soll einfach einen Kommentar schreiben, ich vervollständige dann einfach die Liste.
insert – retrieve
evtl. call/send – receive
Hab grad noch open – close hinzugefügt 🙂 Weiß auch nicht, wieso mir das nicht eingefallen ist.
Auch wenn sich mir der Sinn noch nicht ganz erschließt, hier ein paar weitere Vorschläge:
start – stop
begin – end
encode – decode
increase – decrease
split – merge
speed up – slow down
pack – unpack
zoom in – zoom out
join – split
minimize – maximize oder min – max
first – last
ascending – descending oder asc – desc
activate – deactivate
@Ralf der Sinn ist doch klar. Eine Liste, die man schenll zur Hand hat, damit solche „Fehler“ wie beschrieben nicht passieren. Kann man natürlich als Haarspalterei auffassen, aber oft sind es solche Kleinigkeiten (wie standardisierte Methodennamen) die die Einarbeitung in ein neues System leichter machen.
PHP selbst hat noch implode – explode zu bieten.
enable – disable 🙂
schonmal über present, past and future nachgedacht? meiner meinung nach sollten die verben dann jeweils in kleinbuschstaben in einem wort (also alles klein, keine leerzeichen) zusammengefasst werden.
code-beispiel:
[code]
interface Encodeable
{
public function getEncoding();
public function setEncoding($endcoding);
public function changeEncoding($to);
public function wasSupported($from);
public function willbeSupported($to);
public function isSupported($encoding);
public function isChangeSupported($from, $to);
}
[/code]
wobei isChangeSupported() eine logische und verknüpfung von wasSupported($from) [undifferenziert: isSupported($encoding)] und willbeSupported($to) [undifferenziert: isSupported($encoding)] darstellt. die redundanz hier nur zur verdeutlichung. gibts dazu was bei fowler?
nachgeschickt =
{
insert – retrieve:
falls der eigene wunsch mutter des gedankens war dürfte insert – remove eher das korrekte naming abbilden.
}
webtipp: dict.leo.org (unwahrscheinlich unbekannt)