Страницы

Поиск по вопросам

понедельник, 10 февраля 2020 г.

Правильно ли объявлять много переменных в одном классе?

#java #ооп


Допустим работа осуществляется в доп.потоке, при сворачивании приложения и разворачивании
приложения, поток убивается и создается новый. (т.к. поток не сразу останавливается,
как я понял, рекомендуется создавать новый поток). Если переменные объявлены в потоке,
при создании нового экземпляра потока, они потеряются. Если вывести объявление переменных
в Main класс он нагромождается. Мне интересно влияет ли на производительность объявление
большого числа переменных в одном классе. Это раз. Для визуальной красоты, для хранения
переменных может быть создан отдельный класс, правильно ли так поступать? Хочется знать,
учитывая все тонкости, какой подход используют хорошие программисты. Может тот вариант,
который я описал нормальный и ничего другого не надо придумывать. 
    


Ответы

Ответ 1



Мой ответ будет очень неоднозначный и субъективный. Если в класс много переменных то это уже не правильный класс. А неправильный он скорее всего из-за неправильно архитектуры. Хранить всё в Main плохо. Большое количество переменных в классе влияет на производительность если часто работать с объектами этого класса. То есть создавать, удалять, клонировать и чем больше переменных тем сложнее это делать. То что ты называешь хранения переменных может быть создан отдельный класс это называется паттерн(тебе уже дали ссылку на них) Value Object. Рефакторь архитектуру, в правильной у тебя не должно возникать подобных проблем. @Turalllb MVC это не паттерн, а концепция и отношение к этому вопросу она не имеет. Вы не правильно используете потоки. Поток в программе не должен выполнять какие то другие функции программы, а должен асинхронно выполнять функции основной программы.

Ответ 2



Steve McConnell в своей книге Code Complete 1993-го года рекомендовал использовать около 7 методов на класс. При этом количество строк в каждом методе должно быть таким, чтобы они помещались на экране без использования прокрутки. Источник: https://stackoverflow.com/a/312650/872294 В последствии эти и другие рекомендации были включены в "линтеры" (linters) - программы, проверяющие качество кода. Линтеры часто используются в составе интегрированных средств разработки (IDE), которые просто не дают программисту писать слишком плохой код. Поэтому сейчас более актуален совет от Linus Torvalds: чтобы отличить плохого программиста от хорошего, спросите у него, что он считает более важным: стиль кода или структуры данных Источник: https://softwareengineering.stackexchange.com/questions/163185/torvalds-quote-about-good-programmer

Комментариев нет:

Отправить комментарий