Чистый код: классы
- Имя класса должно быть существительным, многозначным и в заглавном регистре с заглавной первой буквой каждого отдельного слова.
class FileEntity { } class FileRepository { } class FileUploadService { } class FileResource { }
- Класс — это концептуальное представление сущности в вашем приложении, и он содержит только те функции, которые сущность должна выполнять.
class UserService { public UserEntity fetchUserByEmail(String Email) { } public List<UserEntity> fetchAllUsers() { } public List<UserEntity> fetchSubscribedUsers() { } public UserEntity updateUser(String id, UpdateUserRequest request) { } public UserEntity updateUserSubscription(String id, UpdateSubscriptionRequest request) { } public void deleteUserById(String id) { } public boolean isValidUser(String id) { } public boolean isSubscibedUser(String id) { } public void logoutUser(String id) { } }
- Определяйте функции, которые четко сфокусированы, и выполняйте их хорошо.
- Это нормально, когда функции делают одно и то же, но принимают разные параметры.
class UserService { public UserEntity fetchUsers() { } public List<UserEntity> fetchUsers(boolean isSubscribed) { } public List<UserEntity> fetchUsers(FilterUserRequest request){ } }
- Класс должен быть небольшим и содержать в среднем менее 30 функций и 600 строк кода [каждая функция имеет 20 строк кода].
- Держите служебные методы и переменные закрытыми, за исключением некоторых для тестирования.
- Чтобы написать чистые функции внутри класса, пожалуйста, проверьте мой предыдущий пост https://vignesh-satya.medium.com/clean-code-functions-f3cb17b691e2
Я намеренно сделал эту историю короткой, потому что не хочу объяснять все в одной истории. Увидимся в другой истории.