Size: a a a

Golang Developers — русскоговорящее сообщество

2021 April 17

A

Andrew in Golang Developers — русскоговорящее сообщество
Может кодогенерация поможет писать тонны одинаковых методов, чтобы все объекты подходили под общий интерфейс?
источник

⁣⁣⁣ in Golang Developers — русскоговорящее сообщество
Там как бы и не поможет наследование
источник

⁣⁣⁣ in Golang Developers — русскоговорящее сообщество
У них даже рендер разный
источник

A

Andrew in Golang Developers — русскоговорящее сообщество
Ок, раз хочешь прям один в один.

Вот пример двух виджетов. Из-за того, что они не наследуются, приходится плодить, к примеру, одинаковый метод Hide(), чтобы удовлетворять интерфейсу Widget:

https://github.com/fyne-io/fyne/blob/a25b08480d742f016ee24c1b37aa02c3bb433bd5/widget/separator.go#L42

https://github.com/fyne-io/fyne/blob/a25b08480d742f016ee24c1b37aa02c3bb433bd5/widget/menu.go#L148
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
А я так и не понял что в итоге нужно было?) что значит реализация дефолтного интерфейса?
источник

A

Andrew in Golang Developers — русскоговорящее сообщество
Как я понял, он хотел, чтобы можно было назначать свои методы для интерфейсов.
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Это как?)
источник

В

Вадим in Golang Developers — русскоговорящее сообщество
источник

A

Andrew in Golang Developers — русскоговорящее сообщество
Типа этого

type SomeInterface interface{}
func (i SomeInterface) MyMethod() {}
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Типа прям в интерфейсе реализация есть, забавно
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
Можно было ему встраивание болванки протолкнуть
источник

C

Calculon in Golang Developers — русскоговорящее сообщество
+
источник

VS

Vladimir Smagin in Golang Developers — русскоговорящее сообщество
пацанчики, я тут захотел сделать небольшой набор маленьких утилит у которых половина кода общая
источник

VS

Vladimir Smagin in Golang Developers — русскоговорящее сообщество
есть какой-то вариант сделать разные подпрограммы, чтоб на выходе были разные бинарники
источник

VS

Vladimir Smagin in Golang Developers — русскоговорящее сообщество
но с одной общей либой
источник

VS

Vladimir Smagin in Golang Developers — русскоговорящее сообщество
?
источник

A

Alexander in Golang Developers — русскоговорящее сообщество
Есть. Делай общую либу и несколько разных main-модулей
источник

VS

Vladimir Smagin in Golang Developers — русскоговорящее сообщество
я так надеялся что это не придется делать и есть какая-то магия
источник

A

Alexander in Golang Developers — русскоговорящее сообщество
А в чем проблема?
Впрочем, для любителей магии есть go generate
источник

VS

Vladimir Smagin in Golang Developers — русскоговорящее сообщество
да хотелось общий код держать в одной дире, а по поддирам раскидать модифицирующий код
источник