Temps de lecture : 0 Minutes

Клас тлустасці | Чаму гэта павінна быць вымерана

Які памер вашага класа? – Наколькі вялікі занадта вялікі?

Усіх, хто піша код, узнікла такая занепакоенасць – якім павінен быць ідэальны памер майго кода ў класе/метадзе/функцыі.

Гэта адрозніваецца ад кожнага распрацоўшчыка. Як правіла 30, Стыў МакКонэл у сваёй кнізе “Код поўны” кажа, што,

Калі элемент складаецца з больш чым 30 падэлементаў, вялікая верагоднасць наяўнасці сур’ёзнай праблемы:

а) Метады не павінны мець у сярэднім больш за 30 радкоў кода (не лічачы прабелаў і каментарыяў).

b) Клас павінен утрымліваць у сярэднім менш за 30 метадаў, у выніку да 900 радкоў кода.

в) Пакет не павінен утрымліваць больш за 30 класаў, такім чынам, уключаючы да 27 000 радкоў кода.

Даследаванні паказваюць, што колькасць радкоў кода з’яўляецца асновай, на якой трымаецца якасць і складанасць праграмнага забеспячэння, якое вы ствараеце. Сапраўдная каштоўнасць такой інструкцыі, як правіла 30, заключаецца ў тым, што вы праглядаеце код і вызначаеце рызыкі і выдаткі.

Занадта шмат радкоў кода будзе складана скампіляваць і праверыць. Аднак ідэальных паказчыкаў, якія вымяраюць тлустасць класа, не існуе. Гэта заснавана не толькі на «меркаванні», але і на выніках дзесяцігоддзяў практыкі. Праверкі кода дапамагаюць выяўляць і выпраўляць праблемы ў базе кода.

Неафіцыйныя агляды могуць знайсці %-30% дэфектаў кода. Даследаванні, праведзеныя ў IBM, HP, Microsoft і іншых месцах, паказваюць, што знайсці памылкі ў аглядах кода ў некалькі разоў танней, чым праз тэставанне. І працягваюць паступаць доказы таго, што праверкі кода працуюць.

Гара, платформа інжынернага кіравання дапамагае праглядаць радкі кода, які пішацца, і тое, што гэта значыць для распрацоўшчыкаў, якія пішуць яго, рызыкі і выдаткі, звязаныя з гэтым, для кіраўніцтва сярэдняга і вышэйшага ўзроўню, незалежна ад дамена, узроўню сталасці арганізацыі, або этап жыццёвага цыкла, падчас якога яны былі ўжытыя.

Даведайцеся больш пра Horus у папярэднім артыкуле.

Чытайце таксама цыкламатычная складанасць

Keerthi Veerappan

An INFJ personality wielding brevity in speech and writing. Marketer @ Zucisystems.

Partagez ce blog, choisissez votre plateforme !

Leave A Comment

Articles Similaires