Nikolay
например такое /** * Не прошло и n лет, как написан класс для управления услугой. * Спасибо моим родителям за то, что они дали миру меня. * * Если кто увидит в коде класс CustomerV - знайте, это предыдущая реинкарнация этого класса. * И функционал из CustomerV надо переносить сюда, если таковой ещё остался. */
Nikolay
Какое отношение петросянство в комментарии имеет отношение к phpDoc?
самое прямое, потому что будут либо такие комменты, либо вот такие /** * */ public function getCustomerId ()
Nikolay
у меня тоже для тебя плохие - любые комментарии врут, вместо времени на КРАСИВОЕ ОФОРМЛЕНИЕ phpdoc лучше потратить время на написание unit тестов, спек или хотя бы приемочных тестов
Alexey
А API я буду по юнит-тестам генерить? А спеки - это не документация? Они не врут?
Dmitriy
1) он кушает память 2) документация всегда врет, код нет
я то думалю что у меня там много памяти в пустую летит
Nikolay
1. бред какой-то.
а как по твоему работают аннотации? они хранятся в памяти, иначе php их бы выпиливал
Nikolay
ты про аннотации или PHPDoc?
аннотации расположены внутри phpdoc
Alexey
Это новость.
Helgo
самое прямое, потому что будут либо такие комменты, либо вот такие /** * */ public function getCustomerId ()
Я соглашусь с тем, что PHPDoc можно не писать в случае, если без них IDE всё понимает и не корябится.
Nikolay
А API я буду по юнит-тестам генерить? А спеки - это не документация? Они не врут?
документацию к API можно с тем же успехом генерировать с помощью рефлексии
Alexey
документацию к API можно с тем же успехом генерировать с помощью рефлексии
Особенно рефлексия хорошо помогает узнать, в каких случаях какие параметры принимают какие значения и прочие вещи, касающиеся логики.
Alexey
И тут я ловлю себя на том, что начал писать статический анализатор для генерации доки...
Alexey
Потому, что хотел сэкономить по несколько килобайт с файла.
Nikolay
ну а так написан синтаксический анализатор файла
Alexey
Ужас какой.
Nikolay
мир взорвется если не будет культа карго по phpdoc и таких отличных комментариев * конструктор это __construct * метод выкидывает исключение LogicException с пустым текстом
Павел
Я думаю когда команда будет из 10ти человек то они тебя нахуй пошлют со своими тестами, читая метод чтобы понять зачем он
Alexey
Не, ну давайте мух от котлет отделять. Тесты - это хорошо. phpDoc - для других целей сделан. И он действительно хорош когда надо работать в команде или если проект опенсорсный. Да, он жрёт память немного, но это экономия на спичках. В PHP и так всё плохо с памятью и на срезании комментов сэкономить особо не выйдет.
Nikolay
Я думаю когда команда будет из 10ти человек то они тебя нахуй пошлют со своими тестами, читая метод чтобы понять зачем он
в команде из 2+ разработчиков либо пишется код не требующий комментариев, либо рефакторится до такого состояния
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
по моему опыту phpdoc нужен только джунам которые не в состоянии понять метод на 20—30 строк
чего ? что за бред. phpdoc тужен не только для говно кода . еще как минимум для ide.
Dmitriy
для говно ide нужен phpdoc
ясно, вопросов больше нет.
Nikolay
ясно, вопросов больше нет.
каков наброс - таков ответ
Dmitriy
каков наброс - таков ответ
нет вопрос был другой. что ide подсказывает параметры по доку
Dmitriy
и как быть с магическими параметрами
Dmitriy
и т.д.
Nikolay
и как быть с магическими параметрами
zf1 когда нить преходилось дебажить?! если да и то 100% будешь избегать magic methods
Nikolay
кря!
Dmitriy
zf1 когда нить преходилось дебажить?! если да и то 100% будешь избегать magic methods
плюсы минусы подхода это другой разговор. тут шло о phpdoc
Anonymous
Если проект не маленький, то доки нужны (а значит всегда нужны, ибо проекты растут). Нужно это из-за большого количества людей и разной их подготовки. Одним доки не нужны (их что, заставляют читать?), другим необходимы (как минимум понять как код соотносится с бизнес логикой). Кто не пишет доки закапывает проект, не дает ему развиваться и расти. IMHO
Aleksandr
даже если маленький
Aleksandr
все равно нужен
Aleksandr
вот убило у меня разработчика сосулей
Aleksandr
пришёл другой, прочитал доки, понял как и что работает
Aleksandr
и не сидит неделю не вникает
Aleksandr
ну и да + в иде
Aleksandr
вы ещё скажите что тесты не нужны
CybernatiC
А че они нужны?)
CybernatiC
Тесты
Dmitriy
вы ещё скажите что тесты не нужны
тут люди доки не используют а от тестов в обморок упадут, не надо так
Павел
для говно ide нужен phpdoc
Ну, так-то PHPStorm понимает вводимые данные через указание типа + ошибку пишет если не тот тип. Так же пишет название переменной. Но пхпдок все равно нужен по-любому. Для ORM какой-нибудь или AR и т.п.
Helgo
надеюсь не новые.
Нет,конечно. Новые вообще без фреймворков начинаем. При правильном проектировании фреймворк часто не нужен. Если не кондовый вэб
Helgo
берете популярные компоненты и пилите свой фрейм ?
И да и нет. Берём нужные компоненты, но фреймворки не пишем.
Dmitriy
и кто это поддерживает
Aleksandr
считаю это расточительством и не поддерживаю
Helgo
а что обычно пишите ? чтото типовое ?
Ну, из последнего, обработка кредиток или бизнес-интелидженс (агрегация данных). Покрытие тестами - 90%.
Aleksandr
хотя для такой ниши они может и не нужны)
Aleserche
Если тесты хорошо написаны, то часть доков можно выкинуть
Роман
На счёт доков - нет смысла спорить, все очень ситуативно. От компании к компании, от проекта к проектк
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
https://github.com/beberlei/assert/blob/master/lib/Assert/Assertion.php#L18 вместо фасада, обычного 10500 раз всем знакомого паттерна - используется магия с phpdoc. а всё почему - писать больше на 2-4 строчки. проще в ногу себе выстрелить и побыстрее
Nikolay
считаю это расточительством и не поддерживаю
стало модно говороить о framework agnostic подходе, вообще в последнее время появился тренд на то что php это не про фреймворки и сайтики, а php это про бизнес логику
Роман
Ну на счёт этого хз, но пхп катится в лучшую сторону, и многое от явы перенимает
Nikolay
php развивается во всех направлениях, не всегда в удачных - но что поделать, язык который по настоящему разрабатывает сообщество
Роман
Ну да