Если у нас много классов и всем им нужны несколько постоянных переменных по типу screenHeight,screenWidth то мы должны создать один класс, а в остальных классах мы должны наследоваться от него??
А ты уверен, что в этих классах нужны именно поля? Почему бы не создать отдельный объект класса Screen и не передавать уже созданный объект во все эти классы в качестве параметра конструктора (инверсия зависимостей)? А уже этот объект Screen определяет всё то, что непосредственно связано со screen. И множество полей, и часть общего функционала переедут в один этот объект (и единственное поле).
Ты сумел прочитать Мартина??? Я его "Чистую архитектуру" не осилил: постоянные повторы одного и того же по десять раз, будто дебилам объясняет. Жалко тратить время на выискивание крупиц полезной информации в потоке воды.
P.S. 20 строк на функцию - это исключительно вкусовщина Мартина. Например, хорошим тоном является использование {}, даже если тело if или while состоит из единственного оператора. А это - при соблюдении Code Style - автоматически удлиняет функцию.
Размер функции должен быть удобен для её чтения. Да, хорошо, если код функции целиком помещается на экране. Но у меня в IDE область редактирования кода - 33 строки, а не 20. Времена текстовых дисплеев и консольных редакторов, в которых как раз примерно 20 строк под область редактирования и было, давно прошли.
Там сказано:
- Во вложенных структурах if, else, while должен быть один блок вызова функции.
- Желательно чтобы функция не была больше 20 строк.
- Функции должны быть на одном уровне абстракции.
- Отказ от дублирования кода.
- Ещë показано что каждую строка в switch должна работать как фабрика и возвращать объект.
И у меня появились пару вопросов.1) Если у нас много классов и всем им нужны несколько посстоянных переменных по типу screenHeight,screenWidth то мы должны создать один класс, а в остальных классах мы должны наследоваться от него?? А если мы уже наследовались от другого класса, то мы же не можем.
В таком случае как быть??
2) Если используется Фреймворк по типу Flutter или Jetpack Compose для визуального эффекта, то в компаниях виджеты помещают в фабрики?? Помещают ли из в разные классы??