Сережа
да, классов то нету!
Anonymous
Чтобы gui писать
Alexander 🐕
Наследование запретили еще лет 15 назад
Brown
композиционно наледование
Anonymous
Неудобно мне кажется
Brown
Наследование, рекомендуемся использовать в редких случаях
Oleg
или мы идем к вам)
Michael
если нравится фитчи шарпа, то почему бы не писать на шарпе? ))
Oleg
Brown
Michael
я пишу на го в своё удовольствие, то что сделано уже я даже не задумывался писать бы на шарпе
Anonymous
Отнаследовал от родителя "машина", а переопределить тип топлива с бензина на электричество как?
Michael
халтурку - да, можно
Anonymous
Oleg
Michael
форд на атомном реакторе - код отнаследует себя сам
Brown
Я бы привел пример, BaseController
Anonymous
переписать половину родителя? ))
Brown
OrderException, UserException от них унаследлвать остольные Exception, в некоторых ситуациях наследование нужная вещь (в некоторых)
Brown
Родительские
Brown
от них наследуются, UserNotFoundException, UserCouldNotSaveException
Michael
InvalidExceptionException
Anonymous
Если я правильно понимаю процесс наследования:
Delphi - наследовал запорожец от машины, можешь юзать родительский запорожец.ехать
А в go также вложил, а юзать так: запорожец.машина.ехать?
Ilya
Обсуждение названий исключений в канале по Го
Michael
type Warning struct { error }
Brown
Я прям везде использую композицию, но ситуации описанные мной, намного лучше реализовать через наследование
Michael
Warning is a concrete type
Anonymous
Alexander 🐕
undefined is not a function
Brown
Композиционное сча кину ссылку
Anonymous
Brown
Про наследование и композицию я бы посоветовать почиатать тут, тут описаны преимущества и недостатки разных подходов https://www.bsuir.by/m/12_100229_1_98218.pdf страница 121, в pdf 143
Anonymous
Anonymous
Спасибо. Я с LiteIDE немного в ступоре от такого использования. LiteIDE вообще метод Say() для кролика потерял. 😂
Anonymous
Хотя всё работает...
Brown
)))
Brown
Brown
Brown
А книгу Стив Макконнелл "Совершенный код", я рекомендую всем к прочтению, потому что я слышал тут, что мне прям говорят использовать композицию, слепо (судя по всему не доконца понят вопрос, почему плохо наследование и как не допускать ошибок его использования)
Anonymous
А goglang покажет метод Say() для кролика в данном примере? Чтобы не потеряться ))
Brown
Наверное, честно сказать не могу, сча PHPSTROM использую с плагином
Brown
потом гляну скажу
Anonymous
Brown
goglang
Brown
но там не все есть
Anonymous
Понял
Brown
а PHPSTrom у меня лицуха и плагин
Anonymous
Понял )
Brown
Ага)
Anonymous
Я вообще в саблайме пишу, там плагин есть, писать можно)
Brown
Не пробовал)
Anonymous
Ну я пока просто пробую, вряд ли прокатит для проды)
Brown
У Storm есть прямая заливка на сервак
Anonymous
Знаю, юзаю phpstorm давно уже)
Brown
в goglang нету
Michael
vscode :)
Anonymous
Anonymous
Brown
)
Michael
а чего в goglang'е не хватает?
Anonymous
Намечается срач про редакторы кода ? 😊
Brown
Brown
Потому что тестю
Brown
беда
Brown
Короч работаю с докером в курсе
Brown
Мне сча так удобно, нажал ctrl s оно уже там, осталось сбилдить
Anonymous
Что там в руби треде ? @brownjohn
Brown
Anonymous
Нет, редирект на руби
Brown
Ого сорян
Constantine️
пхп всегда в тренде
Brown
картинк кидал, ну уже не важно)
Constantine️
вот вот, сейчас легаси на нём дохуища, так что еще лет 6-8 минимум будет жить )
Brown
Brown
Я вот пока все не смог, написать на golang такой же красивый код как на пыхе, все лапша, ищу подходы, надежду дает https://github.com/facebookgo/inject
Pawel
Наследование - типичный time killer программиста, бессмысленный и беспощадный. Как и дженерики, перегрузки функций, конструкторы-деструкторы, эксепшены, трейты, миксины и прочие хламидоманады. За что люблю Гоу - перечисленного г-на там нет, и г-ноеды в Гоу не могут самореализоваться.