Ola peeps,

Ik heb in een class een getIterator method omdat die class de IteratorAggregate interface implementeert.

Nu wil ik in het commentaar van die method erbij schrijven dat ik die method niet "rechtstreeks" moet aanroepen. Wat is dan de juiste vertaling?

Ik dacht aan:

Do not call this method directly.

of

Do not call this method manually.

Is een van deze beide opties correct? Of weten jullie wellicht iets beters?
PHP methods zou ik zelf nooit documenteren en waarom je getIterator niet zelf mag aanroepen is ook een beetje een raadsel.

Maar naar mijn mening zijn ze beide goed, al zou ik de eerste doen.
Oke, thanks. Ik vind het prettig om alle class methods te documenteren.

Als iemand nog iets beters weet dan hoor ik het graag.
Waarom zou je getInterface() als programmeur niet aan mogen roepen? Kan erg handig zijn.
Dos Moonen op 11/03/2014 17:36:43

Waarom zou je getInterface() als programmeur niet aan mogen roepen? Kan erg handig zijn.

Euh... getInterface? Het ging om een getIterator method :)

Het lijkt me niet nodig om die rechtstreeks aan te roepen, omdat die automatisch wordt aangeroepen zodra je het object in een loop gebruikt.

Als je het helemaal duidelijk en netjes wilt doen, gebruik je de Best Current Practice uit RFC 2119. Daarin is de betekenis vastgelegd van "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY" en "OPTIONAL".
Als ik in een commentaar moet gaan zetten dat een functie/method niet aangeroepen mag worden, dan zit er iets niet goed met de scope waarin de functie staat ........
Ger, in dit geval kan het niet anders. Mijn class implement een IteratorAggregate interface. Die dwingt een public method getIterator af. Valt weinig aan te doen lijkt me.
Ozzie, en waarom zou je in de method dan het aanroepen moeten verbieden? getIterator kan best nuttig zijn zonder loop.
>> getIterator kan best nuttig zijn zonder loop.

Wanneer dan?
Er staat niet wat er staat, hoop ik:

1. Je implementeert een interface die het gebruik van getIterator() voorschrijft.

2. Vervolgens schrijf je in documentatie een aanvullend voorschrift: getIterator() mag niet gebruikt worden.

Reageren