Oh, and I haven't +1 or -1'd.

I write in many languages, some of which don't have method keywords (like
Java: public void doSomething()) and some of which do (like PHP: public
function doSomething()). I trip up whenever I switch between languages, and
it's in both directions.

Ultimately, I feel the keyword is rather useless from a readability
standpoint. The only advantage is for searching (again, moreso on functions
than methods) but still, the argument is there.

2010/11/28 Dallas Gutauckis <dal...@gutauckis.com>

>
>
> 2010/11/28 Ángel González <keis...@gmail.com>
>
> Dallas Gutauckis wrote:
>> > Just to be clear, this works on the assumption that we don't know the
>> class
>> > name that the function resides in?
>> >
>> > I understand the search argument, but to me it only applies to
>> functions,
>> > not methods. Is anyone arguing for removing the T_FUNCTION requirement
>> on
>> > functions?
>>
>> Even knowing the class you are calling, and assuming the common
>> convention of
>> one file per class, you may not know in which file is it implemented.
>> It's annoying
>> to go into the class, find out it's not there, grep the parent class,
>> and having to
>> repeat the process three or four levels up.
>> Whereas with a unique enough name, grepping the functions get all the
>> possible
>> implementations.
>>
>> Plus, it's not always easy to know in which class to look something :-)
>>
>>
> I understand the concern from above, but I don't agree with it
> fundamentally. The kind of practice suggested by this search mechanic tells
> me that either there is lack of or little documentation, and lack of or
> little understanding of the codebase in which the code resides thereby
> making this argument flawed based solely on the assumption that the majority
> of code is (or should be) poorly maintained/documented.
>
> Below is simply bad programming practice in many ways. No validation of
> type (neither through type-hinting nor an instanceof check) is done, which
> is why the code is so difficult to trace back. Presumably, you'd also have
> some form of documentation (PHPDoc, anyone?) that would facilitate the
> search for the declaration of that function. Again, that assumes a better
> programming practice than is being provided as the example below. One would
> hope that someone excluding their function keyword would also be "up to
> date" enough to be validating objects.
>
>
>> function baz( $param ) {
>>    $param->morlocks();
>> }
>>
>>
>

Reply via email to