Nikolay
например такое
/**
* Не прошло и n лет, как написан класс для управления услугой.
* Спасибо моим родителям за то, что они дали миру меня.
*
* Если кто увидит в коде класс CustomerV - знайте, это предыдущая реинкарнация этого класса.
* И функционал из CustomerV надо переносить сюда, если таковой ещё остался.
*/
Alexey
Alexey
Nikolay
у меня тоже для тебя плохие - любые комментарии врут, вместо времени на КРАСИВОЕ ОФОРМЛЕНИЕ phpdoc лучше потратить время на написание unit тестов, спек или хотя бы приемочных тестов
Alexey
А API я буду по юнит-тестам генерить? А спеки - это не документация? Они не врут?
Helgo
Dmitriy
Nikolay
1. бред какой-то.
а как по твоему работают аннотации? они хранятся в памяти, иначе php их бы выпиливал
Helgo
Nikolay
Alexey
Это новость.
Helgo
Nikolay
Alexey
И тут я ловлю себя на том, что начал писать статический анализатор для генерации доки...
Alexey
Потому, что хотел сэкономить по несколько килобайт с файла.
Nikolay
ну а так написан синтаксический анализатор файла
Alexey
Ужас какой.
Nikolay
мир взорвется если не будет культа карго по phpdoc и таких отличных комментариев
* конструктор это __construct
* метод выкидывает исключение LogicException с пустым текстом
Павел
Павел
Я думаю когда команда будет из 10ти человек то они тебя нахуй пошлют со своими тестами, читая метод чтобы понять зачем он
Alexey
Не, ну давайте мух от котлет отделять. Тесты - это хорошо. phpDoc - для других целей сделан. И он действительно хорош когда надо работать в команде или если проект опенсорсный. Да, он жрёт память немного, но это экономия на спичках. В PHP и так всё плохо с памятью и на срезании комментов сэкономить особо не выйдет.
Nikolay
Nikolay
Nikolay
Не, ну давайте мух от котлет отделять. Тесты - это хорошо. phpDoc - для других целей сделан. И он действительно хорош когда надо работать в команде или если проект опенсорсный. Да, он жрёт память немного, но это экономия на спичках. В PHP и так всё плохо с памятью и на срезании комментов сэкономить особо не выйдет.
есть команда пусть это двое.
если метод/функция требуют комментирования - то код слишком сложен, это может быть сложный алгоритм, просто много строк кода, описание бизнес правил
тогда код нужно упрощать, писать имена переменных, методов более осознанно
с подсказками для apidoc - ide отлично справляется с этим, phpdoc ни как не влияет на валидацию данных передаваемых как аргументы и не стоит забывать что php изначально динамически типизируемый. в ситуации когда передается аргументом ассоциативный массив phpdoc тоже слабый помощник
в доктрине есть uow, так вот из phpdoc комментариев не разберешься как это все работает и зачем так. есть user guide документация, она лучше решает задачи документирования.
ну и я говорил что комменты очень часто врут, а код нет, легко начать принимать вместо строки число как аргумент и так же легко забыть исправить phpdoc
Nikolay
по моему опыту phpdoc нужен только джунам которые не в состоянии понять метод на 20—30 строк
Aleksandr
нет
Aleksandr
всем нужен
Aleksandr
а кто его не пишет - дурень
Aleksandr
вот коменты в коде это бред
CybernatiC
А я всегда комментирую код :(
CybernatiC
Больше не буду
Aleserche
docов хватает
Dmitriy
Nikolay
Dmitriy
и как быть с магическими параметрами
Dmitriy
и т.д.
Nikolay
кря!
Dmitriy
Anonymous
Если проект не маленький, то доки нужны (а значит всегда нужны, ибо проекты растут). Нужно это из-за большого количества людей и разной их подготовки. Одним доки не нужны (их что, заставляют читать?), другим необходимы (как минимум понять как код соотносится с бизнес логикой). Кто не пишет доки закапывает проект, не дает ему развиваться и расти. IMHO
Dmitriy
Aleksandr
даже если маленький
Aleksandr
все равно нужен
Aleksandr
вот убило у меня разработчика сосулей
Aleksandr
пришёл другой, прочитал доки, понял как и что работает
Aleksandr
и не сидит неделю не вникает
Aleksandr
ну и да + в иде
Aleksandr
вы ещё скажите что тесты не нужны
CybernatiC
А че они нужны?)
CybernatiC
Тесты
Павел
для говно ide нужен phpdoc
Ну, так-то PHPStorm понимает вводимые данные через указание типа + ошибку пишет если не тот тип. Так же пишет название переменной. Но пхпдок все равно нужен по-любому. Для ORM какой-нибудь или AR и т.п.
Helgo
Dmitriy
Helgo
надеюсь не новые.
Нет,конечно. Новые вообще без фреймворков начинаем. При правильном проектировании фреймворк часто не нужен. Если не кондовый вэб
Dmitriy
Dmitriy
Dmitriy
и кто это поддерживает
Aleksandr
считаю это расточительством и не поддерживаю
Aleksandr
хотя для такой ниши они может и не нужны)
Aleserche
Если тесты хорошо написаны, то часть доков можно выкинуть
Роман
На счёт доков - нет смысла спорить, все очень ситуативно. От компании к компании, от проекта к проектк
Nikolay
Aleserche
а где гарантии, что разработчики придерживались ТЗ и схем?
Nikolay
документация вида помогает только джунам
/**
* этот метод отправляет собщение от одного пользователя другому
* @param $user1 User пользователь который посылает сообщение
* @param $user2 User пользователь которому посылаю сообщение
*/
public function send(User $user1, User $user2)
лучше писать так public function sendPrivateMessage(User $from, User $to) - тут не нужно быть гением чтобы понять что делает метод и что принимает на вход. сигнатура видна в IDE в панели методов
Nikolay
Nikolay
Nikolay
https://github.com/beberlei/assert/blob/master/lib/Assert/Assertion.php#L18
вместо фасада, обычного 10500 раз всем знакомого паттерна - используется магия с phpdoc. а всё почему - писать больше на 2-4 строчки. проще в ногу себе выстрелить и побыстрее
Роман
Ну на счёт этого хз, но пхп катится в лучшую сторону, и многое от явы перенимает
Nikolay
php развивается во всех направлениях, не всегда в удачных - но что поделать, язык который по настоящему разрабатывает сообщество
Роман
Ну да