Бе Императиве!!
ТЛ;ДР: Функције са нејасним именима скривају намеру и збуњују читаоце. Користите описна, радњи оријентисана имена.
хттпс://хацкерноон.цом/импровинг-тхе-цоде-оне-лине-ат-а-тиме
Функције именоване генеричким терминима приморавају читаоце да зароне у имплементацију како би разумели своје понашање.
Ово губи време и повећава шансе за грешке.
Именовање постаје још критичније када се ради са самосталним функцијама, где име класе не пружа додатни контекст.
Ово питање се директно односи на принцип Реци, не питај .
Уместо да разоткривају двосмислена понашања која приморавају позиваоца да закључи функционалност, императивна имена преносе тачну радњу, усмеравајући читаоца без потребе да прегледа код.
Када функције именујете описно, елиминишете непотребно нагађање и ускладите се са овим принципом.
public String dateFormatting(Date date) { return new SimpleDateFormat("yyyy-MM-dd").format(date); } public void load() { System.out.println("Loading..."); }
public String formatDate(Date date) { return new SimpleDateFormat("yyyy-MM-dd").format(date); } public void loadUserPreferences() { System.out.println("Loading user preferences..."); }
Овај мирис можете открити тако што ћете прегледати називе функција које користе нејасне термине као што су уради , покрени , обради , учитај итд.
Аутоматизовани линтери могу означити ове обрасце или истакнути функције са превише генеричким именима.
Имена функција треба да стварају јасну кореспонденцију један на један између њиховог имена и функционалности.
Разбијање ове Бијецтион приморава програмере да испитају детаље кода за контекст, успоравајући отклањање грешака, прегледе и проширења.
Алати за вештачку интелигенцију понекад генеришу генеричка имена функција без разумевања вашег домена.
Када користите АИ, наведите да имена функција морају бити дескриптивна и оријентисана на акцију.
АИ модели могу помоћи у откривању двосмислених имена упоређивањем потписа функција са унапред дефинисаним најбољим праксама именовања.
Комбиновање вештачке интелигенције са ручним прегледом кода даје најбоље резултате.
Запамтите: АИ асистенти праве много грешака
Без одговарајућих упутстава | Са посебним упутствима |
---|---|
Називи функција нису само ознаке; они су уговори са читаоцем.
Двосмислена имена крше овај уговор и доводе до забуне.
Описна, радњи оријентисана имена поједностављују комуникацију и чине ваш код лакшим за одржавање и проширење.
Код Мириси су моје мишљење .
Фотографија бритисхлибрари на Унспласх-у
Име функције треба да буде глагол или глаголска фраза и да има смисла
Роберт Ц. Мартин
Овај чланак је део ЦодеСмелл серије.