
Konstantin
18.03.2018
17:36:13
вот это сейчас обидно было

Sergey
18.03.2018
17:36:16
но если не пытаться - будет получаться все время одно и то же - куча неподдерживаемого говна, сложные взаимодействия между сервисами менеджерами, вопросы в духе "это же невозможно покрыть юнитами, тогда как мне родить больше юнитов чем интеграционных тестов?"

Konstantin
18.03.2018
17:36:17
за потраченые полчаса

f4rt~
18.03.2018
17:36:46

Google

Konstantin
18.03.2018
17:36:56
я не фапаю на код
код это просто код. сегодня написал завтра выбросил
не надо к нему как к своему детищу относиться )

Sergey
18.03.2018
17:37:20

f4rt~
18.03.2018
17:37:23
в таком случае безусловно не стоит тратить лишних сил, если это так
если это проект на один день, выпустили, показали и забили

Konstantin
18.03.2018
17:37:43
проекты не факт что взлетают

Sergey
18.03.2018
17:37:52
не один а в куче и что бы требования менялись раз в неделю

Konstantin
18.03.2018
17:38:12
есть такой опыт поддержки легаси проекта

Sergey
18.03.2018
17:38:22
не не, не легаси - а когда ты был в начале

Konstantin
18.03.2018
17:38:26
это было ужасно и сейчас не менее ужасно

Sergey
18.03.2018
17:38:26
когда "легаси" ты и написал)

Google

Alan
18.03.2018
17:38:34
с легаси нужно терпеть боль

Konstantin
18.03.2018
17:38:57
мм дай ка подумать, пару раз может возвращался к тому что написал год или два назад но не более

Alan
18.03.2018
17:39:04
и ваще оно должно как то подталкивать потом избегать боли

Konstantin
18.03.2018
17:40:07
Sergey Protko, [18.03.18 20:38]
не один а в куче и что бы требования менялись раз в неделю
был просто такой "долгосрочный" тянущийся проект, но там небыло боли, хотя и требования действительно каждую неделю менялись месяца так три или четыре

Sergey
18.03.2018
17:40:09

Konstantin
18.03.2018
17:40:47
я бы взял и выбросил весь этот код и за пару месяцев спокойно бы написал на фреймворке все тоже самое но поддерживаемое
а по итогу прошло 4 и только разросся в монстра

Sergey
18.03.2018
17:41:26

Alan
18.03.2018
17:42:06
ничоси 40 разрабов?

Sergey
18.03.2018
17:42:14

Konstantin
18.03.2018
17:42:19
ну первые два было, с третьим попроще - там хоть просто по иде можно было попытаться выяснить что и зачем происходит

Bohdan
18.03.2018
17:42:27
видосик схоронил, спасибо

Sergey
18.03.2018
17:42:32
ничоси 40 разрабов?
это с QA, аналитиками, фронтендерами, мобильщиками и прочими бесполезными людьми

Alan
18.03.2018
17:42:47
и ты один?)))

Sergey
18.03.2018
17:43:03

Konstantin
18.03.2018
17:43:16

Sergey
18.03.2018
17:43:16
или 10... не помню уже

Google

Sergey
18.03.2018
17:43:56
если кода больше 10K строк - переписывать будет всегда дороже

Konstantin
18.03.2018
17:43:58
ага, когда инклудишь тупо какой то файл и какие то переменные есть в каком то окружении и из документации только пару комментариев в классе который общается по апи

Sergey
18.03.2018
17:44:21
тупой код он тупой....
больше проблем с "умным" кодом)

Konstantin
18.03.2018
17:44:38
в следующий раз обязательно тебя позову чтобы посмотрел оценил )

Sergey
18.03.2018
17:44:47
не вопрос))

Konstantin
18.03.2018
17:44:49
ну сеттеры это тупой код
они мне нравятся
)))

Sergey
18.03.2018
17:45:05
сеттеры - да, а вот сервисы менеджеры - не очень тупой
и еще больше веселья когда у тебя тупой код формирует хитрые взаимодействия

Sergey
18.03.2018
17:45:41
как аналогия - вот в твоих "файликах контроллерах" 100% основную боль создавали глобальные переменные
когда порядок подключения файлов влиял на то как система работает

Konstantin
18.03.2018
17:46:12
мм, еще бесило отсутствие единой точки входа
понятно что люди привыкли делать в битрикс-стайл где любой пхп файл практически дверь
но вот я такое не понял )

Sergey
18.03.2018
17:46:46
главная боль всеравно от глобальноый связанности и побочных эффектов

Konstantin
18.03.2018
17:47:20
знаешь че еще там интересного было

Google

Konstantin
18.03.2018
17:47:25
наполнение гет массива руками

Sergey
18.03.2018
17:47:31
норм)

Konstantin
18.03.2018
17:47:34
потому что кто то кривой рул в хтаксес написал

Sergey
18.03.2018
17:47:51
но это ж легко пофиксить было? или ты не трогал?)

Konstantin
18.03.2018
17:48:24
ну, хрупкость там великая была
да, пытался пару раз фиксить но все падало
а как бы люди пользуются и это не 1-2 человека
а ночью мне как то западло было работать

Sergey
18.03.2018
17:48:50

Admin
ERROR: S client not available

Konstantin
18.03.2018
17:48:54
так штаааа
канешно оставил как есть

Sergey
18.03.2018
17:49:22
для того что бы работать с таким кодом надо хорошо приоритизировать проблемы. И обычно (иногда есть и другие проблемы) основное что надо сделать - изолировать стэйт
сначала это могут быть просто классы сингелтоны
просто что бы хоть немного понимать что происходит
потом мы можем быстренько запечатать все инклуды в статику
потом единая точка входа
ну и далее в порядке приоритетов
ну и да - если кода мало - скажем 10K строк, то в целом может быть и можно "переписать рядом с нуля"

Konstantin
18.03.2018
17:51:03
вот этот говнопроект и сподвиг меня изучать больше архитектурные вопросы

Google

Sergey
18.03.2018
17:51:03
особенно если бизнесу не горит, но обычно когда проект доведен до такого - им очень горит)

Konstantin
18.03.2018
17:51:21
и честно говоря чем больше изучал тем сильнее было отвращение к работе
к тому что делают другие и к тому что делал сам раньше

Alan
18.03.2018
17:51:48
а ты пилишь за это время одну фичу ломая все и матерясь долго)

Sergey
18.03.2018
17:52:17
ибо если все хорошо всем похеру
даже если внутри там вьетнам и ад

Елнур
18.03.2018
17:53:26
и самописный acl

Konstantin
18.03.2018
17:53:41
да, так и было ) главное как то оно работает, сервис на плаву, а что и как внутри - пусть программист себе на голове волосы вырывает, это ж его работа хех

Sergey
18.03.2018
17:55:02

Елнур
18.03.2018
17:55:12
жизнь боль...

Sergey
18.03.2018
17:55:56

Елнур
18.03.2018
17:55:57
ни как не удается перенести проект на 4, сейчас там миллион определении сервисов и роутов... и каждая новая фича с трудом внедряется

Sergey
18.03.2018
17:56:14
я вот все еще сижу на 3.3 потому что в целом в 4-ке пока нет тех фичи которые мне критичны и пока я не уберу говно с сервисами то смысла в этом переходе нет. А вот в 3.3 есть фичи которые полезны для того что бы прибираться

Aleksandr
18.03.2018
17:57:19
а 3.4 ?

Sergey
18.03.2018
17:57:31
в 3.4 те фичи которые появились мне пока не столь важны
в целом из важных вещей это argument resolvers которые вообще в 3.2 или даже 3.1 есть
а так мне важны некоторые плюшки из 3.3 в плане DI