170 похожих чатов

Читал про фичу. То ли для Go2 , но не

помню приняли ее или нет..
Возможность добавлять метод для типа из другого пакета. Внутри другого пакета.
Есть у кого то инфа? Пойду гуглить. Но мало ли...

12 ответов

19 просмотров

Как extention в kotlin?

Re- Автор вопроса
Даниил Попов
Как extention в kotlin?

не шарю в котлин. Но то что мы не можем добавить метод к типу из другого пакета. Это нереально так бесит.

Такое скорее всего завернут

А зачем это может понадобиться?

Re- Автор вопроса

https://github.com/golang/go/issues/28066 Ну там четко сказали типо будет путаница. Но почему не сделать упрощенный вариант. Хз, я так и не понял что нового в Go2 будет. Кажется ничего)

Re- Автор вопроса
Roman 🎄
А зачем это может понадобиться?

Например у тебя есть пользовательский тип определенный в пакете. Конструктор по факту. Возможно что то вроде. type FunctionalAPI struct{} У него есть методы. 1-2-3-4.... Но что бы как то абстрагировать его в большом приложение со сложной логикой. Тебе нужна функция. func Block (self FunctionalAPI){ } Вопрос в том, как расширить API или сделать пользовательское. Сейчас это можно обойти через встраиванием и интерфейсы. Но в этом начинаешь быстро путаться. А вот есть у тебя фича добавить метод. Максимально простой пример.

Re
https://github.com/golang/go/issues/28066 Ну там ...

Ну не знаю, я согласен тут с разрабами. Методы для типов из других пакетов сильно ломают понятие контракта. Тебе пакет предоставляет типы и методы для него. Если нужно что-то большее - пиши обёртку

Re
Например у тебя есть пользовательский тип определе...

Надо фича - добавляешь её в пакет, в чем проблема то? А если пакет нельзя расширить( он из внешней библиотеки), то пиши обертку.

Re- Автор вопроса
Михаил Макарычев
Ну не знаю, я согласен тут с разрабами. Методы для...

Ну да, по этому язык Go остается нишевым. Потому что GUI / UI / linq и.т.д. делать больно. Прям очень больно. На си хотя бы макросы есть.

Re
Ну да, по этому язык Go остается нишевым. Потому ч...

Аналог linq вроде как обещали сделать потом

Re- Автор вопроса
Roman 🎄
Надо фича - добавляешь её в пакет, в чем проблема ...

Ну спасибо в итоге у меня не 5 пакетов а 25 в проекте. Ну вот так.

Re- Автор вопроса
Михаил Макарычев
Аналог linq вроде как обещали сделать потом

Да-да, как вопрос? Я не знаю сейчас механизма. Дженерики пусть доделают хотя бы. Буду рад.

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Ребят в СИ можно реализовать ООП?
Николай
33
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Карта сайта