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

Кол-Во такое же. Как было N методов, так и осталось

N методов. Вообще такие ситуации - это нонсенс. Разработчики библиотек обязаны писать об этом в апгрейд гайд и менять название/неймспейс интерфейса, а пользователи - читать гайд и адаптироваться под изменения.

> Не буду писать сколько из них забивают, а сколько из них не знают или не понимают. Как после этого можно назвать подход "простым"?

Меняя название/неймспейс, ты почти гарантируешь то, что никто не проебеться. Так или иначе, я не собираюсь говорить, что фича говно, только потому что есть 0.001% дебилов, не понимающих, что нужно смотреть в апгрейд гайд когда апгрейдишь мажорные версии зависимостей.

> Я уже писал, что мешает. Мешает невозможность отказа от ненужных методов, добавленных в класс и инстансы класса через дефолтные методы интерфейсов.

што? Еще раз: я сказал, что композицию МОЖНО использовать вместе с наследованием. Причем тут интерфейсы?

Да и даже говоря об интерфейсах, я уже говорил, что это не "ненужные методы", а часть контракта.

> В трейтах этот момент уже не говно, я уже писал. Почему в трейтах не говно? Потому что от трейта ты можешь отказаться, а от деф. методов в интерфейсе — нет.

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

Можно минимизировать риски проеба мидла+ за счет фич типа типизации и написания тестов, но если какой-то мудак захочет написать говно, то его удержит только ревью его пулл реквеста в мастер. Гавно можно написать не только с помощью дефолтных реализаций.

2 ответов

28 просмотров

> Разве можно физически ограничить... Если в языке не дать реализовывать методы в интерфейсе, то это как раз физически ограничивает от написания говнокода в интерфейсе. Семь раз подумаешь и SPI сделаешь или явно мажор выпустишь вместо того, чтобы не парясь молча дефолтное чудо в кучу докинуть.

> ...что есть 0.001% дебилов, не понимающих, что нужно смотреть апгрейд гайд То есть вы сначала топите, что существуют джентльмены, которые не могут посмотреть апгрейд гайд, чтобы увидеть BC-добавление метода в интерфейс в релизе. И что для их комфорта обязательно надо запилить дефолтные методы во все языки как это специально для них сделали в Джаве... ...ведь они охвачены фобией мажорных релизов и после апдейта не могут прочитать ошибку компиляции method not implemented и вручную дописать у себя return false, так как у них лапки... ...а теперь их же называете дебилами, не читающими апгрейд гайд о неBC-переименовании дефолтного метода, так как при таком переименовании isSmth() их код молча без ошибки not implemented (то есть неявно) начнёт работать не совсем так? Забавно :)

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

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

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Карта сайта