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

>По умолчанию все классы в Kotlin имеют статус final, который

блокирует возможность наследования.
а почему так? какие аргументы в пользу такого?

18 ответов

23 просмотра

Best practices на опыте java. И это по-моему вообще во всех местах описано

можно плагин all-open использовать и тогда по умолчанию всё будет открыто

The The- Автор вопроса
Aλex Sokol
можно плагин all-open использовать и тогда по умол...

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

Не нашел короткий ответ на первой странице гугла. TL;DR: должно быть сознательное решение о том, что мы хотим этот класс наследовать, а не о том, что не хотим. Потому что излишнее наследование - вред. Надо, чтобы люди делали композицию

The The
да не. просто как бы возможность наследоваться от ...

Это хорошо, но не для всех и не всегда. В общем, довольно опасный инструмент.

The The
да не. просто как бы возможность наследоваться от ...

Вот недавно уже было: https://en.wikipedia.org/wiki/Composition_over_inheritance

The The- Автор вопроса
Vladimir Petraković
Это хорошо, но не для всех и не всегда. В общем, д...

поэтому можно класс сделать final, когда наследоваться от этого класса не хорошо

The The
поэтому можно класс сделать final, когда наследова...

Фишка в том, что это всегда плохая идея, если об этом не подумал его автор

The The
поэтому можно класс сделать final, когда наследова...

> должно быть сознательное решение о том, что мы хотим этот класс наследовать, а не о том, что не хотим https://t.me/kotlin_lang/215734

The The
да не. просто как бы возможность наследоваться от ...

аналогично, впервые слышу, что это хорошо

The The
поэтому можно класс сделать final, когда наследова...

скорее, нужно делать класс open когда разработчик предусмотрел это и гарантирует безопасное наследование, в этом случае разработчику не придется думать по умолчанию над каждым классом насколько безопасно от него наследоваться

The The- Автор вопроса
Евгений
скорее, нужно делать класс open когда разработчик ...

один пишет, это для того чтобы "программист думал", другой "чтобы программисту не пришлось думать" 🌚

The The
один пишет, это для того чтобы "программист думал"...

мысль одна и та же везде. allopen не безопасно

The The
один пишет, это для того чтобы "программист думал"...

Одно и то же. Думал там, где надо и не думал, там где не надо

Вы хотели аргументы узнать или поспорить с ними?

Pavel Erokhin
screenshot

Большая просьба не переходить на личности без особой нужды.

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
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
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
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
Карта сайта