[Moscow.pm] Соглашение про protected методы

Ilya Chesnokov chesnokov.ilya на gmail.com
Ср Май 15 11:59:55 PDT 2013


15 мая 2013 г., 20:51 пользователь Akzhan Abdulin
<akzhan.abdulin на gmail.com>написал:

> На самом деле нельзя сказать, что это, - хорошее соглашение.
>
> Обычно лучше
>
> 1) все методы реализовывать как публичные, что удобно в том числе с точки
> зрения использования их внутри класса и в тестах.
>
> 2) методы, являющиеся частью внутреннего API, и не предназначенные для
> использования снаркжи, просто не документировать в POD.
>
>
Может банальный вопрос, но как отличить тогда, какие методы не
документированы намеренно (т.к. они приватные), а какие - по ошибке или
из-за лени?

Добавлять к каждому методу комментарий # private / public ? Уж лучше
подчеркивание - всего один символ, своего рода применение
самодокументируемого кода.


> Но это всего лмшь одна из точек зрения. Все зависит от того, какого стиля
> кодирования придерживается ваша команда.
>
> У нас, к сожалению, принято использовать подчеркивания :)
>
>
> 15 мая 2013 г., 13:56 пользователь Иван Бессарабов <ivan на bessarabov.ru>написал:
>
>> В Perl есть хорошее соглашение что private методы начинаются с
>> подчеркивания.
>> Видишь объект, — сразу понятно: методы без подчеркивания можно
>> использовать
>> при работе с этим объектом, а методы, которые начинаются с подчеркивания
>> можно использовать только дорабатывая этот класс.
>>
>> Но кроме private и public методов существуют еще и protected. Protected
>> метод,
>> можно использовать в наследниках класса, но нельзя использовать при
>> работе с
>> объектом.
>>
>> Скажите, пожалуйста, есть ли какое-то соглашение по именования таких
>> объектов?
>> Как вы действуете чтобы явно обозначить, что это метод — protected?
>>
>>
>> --
>> Moscow.pm mailing list
>> moscow-pm на pm.org | http://moscow.pm.org
>>
>>
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>
>


-- 
Best regards,
Ilya Chesnokov
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20130515/f65904d1/attachment-0001.html>


Подробная информация о списке рассылки Moscow-pm