Привычка ИИ: длинные «корпоративные» имена
ИИ обучен на коде корпоративной Java и старого C#. В этих стилях имена длинные и многословные — типа AbstractFactoryProviderManager. В современном TS/JS такие имена выглядят как карикатура и реально мешают читать.
Признаки «корпоративного» имени
Имя из 3+ слов: UserProfileDataFetcher. Суффиксы Service / Manager / Provider / Helper / Util без необходимости. Дублирование контекста: внутри класса User метод getUserName.
Правило: имя должно различать
Имя нужно чтобы отличать одно от другого. Если в файле один fetcher — он просто fetcher. Не profileDataFetcher. Контекст уже есть в файле/папке/классе, не дублируйте его в имени.
Чем короче — тем читаемее
fetchUser лучше чем fetchUserProfileData. user лучше чем userProfileObject. Чем чаще имя встречается на экране, тем оно должно быть короче. Длинные имена = меньше места для логики.
// Привычка ИИ — длинные «корпоративные» имена.
class UserProfileDataFetcherServiceFactory {
createUserProfileDataFetcher(userIdentifier) {
return new UserProfileDataFetcher(userIdentifier);
}
}
class UserProfileDataFetcher {
constructor(userIdentifier) {
this.userIdentifier = userIdentifier;
}
async fetchUserProfileData() {
const userProfileDataResponse = await api.getUserProfileById(this.userIdentifier);
return userProfileDataResponse.userProfileData;
}
}
// Использование:
const factory = new UserProfileDataFetcherServiceFactory();
const fetcher = factory.createUserProfileDataFetcher(123);
const profileData = await fetcher.fetchUserProfileData();Перепиши это так, чтобы имена не превышали 2 слов.