Stas
от даун, назвал же блин по правильно, там где I там везде интервейсы
Stas
ты же знаешь про слово interface, да?
да, сорри, чет упоролся.
Doge
с высокой вероятностью на жаву, с чуть меньшей вероятностью на котлен. с еще меньшей вероятностью на скале (и тогда мне будет пора паковаться)
То есть и дотнет стэк тоже будете покидать? Ну а в скале ничего плохого нет, хотя вашим умельцам там будет раздолье полное написать невероятную хрень, это да.
Shub
https://gist.github.com/speeedforce/2a76d0cb892471ce2ab0a41b2f1d2519
последние строки, начиная с 97 - это слабая попытка переизобрести полиморфные методы. не делайте так
AlexB
вообще все наблюдавшиеся попытки построить домен на наследовании превращались в угар, содомию и эксплицитный кастинг по всему коду.
Shub
То есть и дотнет стэк тоже будете покидать? Ну а в скале ничего плохого нет, хотя вашим умельцам там будет раздолье полное написать невероятную хрень, это да.
понимаешь, очень плохо быть на дотнет стеке, когда все, что делается в организации - делается из расчета жвм
Ayrat
Сукаблятьненавижу
Stas
Сукаблятьненавижу
ты поднимаешь мне самооценку, спасибо)
Doge
Но почему?
Doge
Это кодген хотя бы?
Shub
а как лучше сделать?
ну лучше использовать штатный полиморфизм. ты попытался смоделировать отношения между подтипами просто тегируя свои типы. такой подход никуда не ведет, к сожалению, в любом языке кроме пожалуй Хаскеля
Shub
Это кодген хотя бы?
кодген. по имени "Андрей"
Ayrat
Это кодген хотя бы?
Уверен что нет. Автор просто долбоёб
Ayrat
кодген. по имени "Андрей"
Ты с ним случайно не знаком?
Shub
Ты с ним случайно не знаком?
я знаком с эпосом, Паша рассказывал
Ayrat
Осукабля, какой же он мудак
AlexB
Сукаблятьненавижу
Я знаю, все затеивалось ради красивого выравнивания
Shub
Осукабля, какой же он мудак
полностью согласен. уж если даже Паша говорит, что он мудак - это фактически банковская гарантия мудака
Ayrat
полностью согласен. уж если даже Паша говорит, что он мудак - это фактически банковская гарантия мудака
у него есть спич про всю эту систему, которая сдохла через месяц после его увольнения. https://www.youtube.com/watch?v=64obElvMtrQ
Ayrat
До сих пор смешно
Shub
вообще все наблюдавшиеся попытки построить домен на наследовании превращались в угар, содомию и эксплицитный кастинг по всему коду.
вопрос исследования иерархии классов в ООП - хорошо исследованный вопрос, никаких проблем обычно не возникает.
Shub
Не на все доменные области это хорошо ложится.
ну так ооп одним наследованием не ограничивается.
Shub
в скале любой тип - это класс, и ничего, живут как-то
Doge
ну так ооп одним наследованием не ограничивается.
Ну тут речь именно про иерархии в контексте доменных моделей была же.
Doge
И да, есть домены где иерархии идеально подходят.
Shub
Ну тут речь именно про иерархии в контексте доменных моделей была же.
ну заявление "у нас были проблемы при моделировании на классах" не говорит, что проблемы были именно в классах. из такого заявления можно сделать два вывода вообще-то: "проблемы при моделировании" и "проблемы при моделировании классами"
Hog
Айрат, а ты в волмарте за кассой сколько стоял?
Hog
https://twitter.com/vvzvlad/status/1283431725679497220?s=12
Крылатый
Shub
Айрат, а ты в волмарте за кассой сколько стоял?
я за кассой не стоял, но собирал заказы клиентам. по своей штатной ставке
Mikhαil
Айрат, а ты в волмарте за кассой сколько стоял?
Пока вместо него на кассу не поставили чувака который код со скрина выше писал
Hog
А надо?
Твит почитай :)
Shub
Да, с этим согласен. Это я скорее сказал вот к этому: хорошо исследованный вопрос,никаких проблем обычно не возникает.
я пытался сказать, что в общем мы знаем, как правильно моделировать домен на классах и отношениях между ними. в том смысле, что мы можем написать желаемый клиентский код, который будет идеоматичен и надежен, а потом запилить необходимое на классах
Shub
Твит почитай :)
ну там ничего смешного на самом деле. без такого опыта ты банально в домене не разберешься
Shub
На складе? O_o
на складе. полную смену
Ilya
Клин код.
Stas
спасибо
Ilya
спасибо
Это была шутка. Стой.
Shub
"что в общем мы знаем, как правильно моделировать домен на классах и отношениях между ними" я можно куда нить пойти почитать, что бы тоже знать?)
хотел было написать "читай классику", но там же не меньше, чем в серии "классики и современники". клинкод не читай
Vagif
После таких заходов люди и ненавидят ФП
Ну а при чем здесь ФП? Такого же добра на любом языке полно.
Stas
Это была шутка. Стой.
а я уже собирался гуглить и качать))))
Shub
Ну а при чем здесь ФП? Такого же добра на любом языке полно.
по ассоциации. у нас люди ненавидят эфшарп, потому что босс идиот был
Shub
не джетовский, он изначально в волмарте был. там вообще долгая, трагическая, и одновременно смешная история
AlexB
вопрос исследования иерархии классов в ООП - хорошо исследованный вопрос, никаких проблем обычно не возникает.
Настолько хорошо исследованный, что через годик-другой у большинства классов куча перегрузок с пустой имплементацией или throw NotImplementedException или return null, выбирать по вкусу. Пока очевидно явной надобности в наследовании нет - не надо ее форсировать. (Явная надобность = нужен polymorphic dispatch со стороны клиента).
Vagif
Вообще, как я понимаю, отсутствие у нас подобных проблем в значительной степени связано с отсутствием архитекторов как таковых. Автономные команды, которым сказано самим договариваться друг с другом. Припоминаю, что в большинстве случаев, когда мне приходилось работать под неким надзорным органом, в котором сидели бывшие или полубывшие программисты, оказывалось, что в этом органе есть болевые мозоли, на которые нельзя наступать.
Shub
он прогнул под себя продуктов вплоть до того, что мог заявить "вы ничего не понимаете в проблеме. я понимаю лучше вас, вот смотрите как надо"
Shub
Ох 😞
при этом он имел позицию авторитета по технической части. конечно, наш принципал - это не гугловый, и даже не амазоновский принципал, но это все равно рычаг достаточной длины, особенно в умелых руках
Vagif
Помню, в руководство заказчика одного проекта пришел авторитет по БД, знания которого остались где-то в конце 90-х. Он сразу же сделал ревью кода, который пишет в базы и пришел в ужас от ОРМов. Только сохраняемые процедуры, вы что! Дело зашло в такой тупик, что команда отказалась от заказчика
Ilya
пустая имплементация - это чаще всего ок
Можно ещё атрибут Obsolete вешать.
Aleksandr
ну речь скорее о протектедах
Shub
Ну вот авторитет по технической части - это особенно опасно.
это было очень опасно, т.к. по технической части он был откровенно слаб. он там претендовал на глубокое понимание жавы, но при этом писал откровенную чушь, см. скриншоты. и с ним никто ничего не мог поделать, поэтому вокруг него сформировали цисту.
Vagif
Ну раз цисту сформировали (не знаю, что это такое), значит не в одном нем дело.
Крылатый
Ну раз цисту сформировали (не знаю, что это такое), значит не в одном нем дело.
Циста (от греч. κύστις «пузырь») — временная форма существования микроорганизмов (обычно бактерий и протистов, многих одноклеточных), характеризующаяся наличием защитной оболочки, которая образуется в неблагоприятных условиях или в определённые моменты их жизненного цикла, а также сама эта оболочка[1].
Vagif
А, киста вроде по-русски
Крылатый
Не, киста и циста это разное.
Крылатый
Хоть и происходят от одного греческого слова «пузырь».
Vagif
Не, киста и циста это разное.
Да, действительно. Но от одного греческого слова
Крылатый
В английском это тоже звучит похоже: microbial cyst и cyst.
AlexB
пустая имплементация - это чаще всего ок
бывает и такое. чаще всего - такс, о, вот похожее на то, что мне надо, наследуюсь, эээ - что, вот этот метод надо реализовать? - ну ладно, он вроде ничего не возвращает, оставим пустым
Shub
А у вас не проводятся периодические собеседования с руководством (не техническим), на которых можно было бы затронуть эти темы?
формально проводят, конечно, я именно таким образом свои текущие проблемы и заимел. в смысле, имел наглось начать говорить на эти темы
Shub
не, я на другом проекте и лично с ним не пересекался. я к тому, что очень часто декларируемые намерения не совпадают с фактическими. я уже много писал на эту тему, последние лет 10 только это и наблюдаю. на словах все за качество, на деле существует каста неприкасаемых, код и решения которых нельзя даже обсуждать