ПредишенСледващото

Има много информация за това как да се напише изходния код на програмите. В този текст ще намерите някои съвети за това как да го премахнете.

Този метод може да изглежда очевидно, но предполагам, че това не е така, тъй като разработчиците използват много други начини да го направя. Ето как да изтриете изходния код:

Повечето разработчици не обичат да го правят. Те предпочитат да напуснат парчета от стария код наоколо, за всеки случай - изведнъж се наложи отново. Те са работили дълго и упорито, за писане на код. Те го отстраняване на грешки, и тя работи. И тъй като разработчиците не искат да се избере само нагоре и изхвърлите стария код.

Затова казвам на разработчиците: "Използване на източник (контрола), Лука" [1]. системи, използващи за контрол на версиите (като CVS. по необходимост. Или Subversion), това означава, че никога не трябва да се тревожи за това, след като направи работата може да изчезне завинаги. Цялата ви стар код ще бъде в CVS, готови за повторна употреба при първо поискване.

Ако не разполагат със система за контрол на версиите (.) Или пък просто нямам никакво желание да се рови в старите ревизии, да копирате част от кода си в отделен файл и да го запишете в отделна място. Но не го остави там, където не е мястото - в изходния си код.

Ако имате част от код, който вече не е необходимо, а след това има още една добра причина да наистина го махна, а не да се оставя в отворено положение: с цел намаляване на объркване и несигурност. Един от най-големите врагове на предприемача са объркване или странни места кода му, защото те ще пречат и да намали ефективността на последващи действия.

Отрежете част от код директно предизвиква несигурност. В съзнанието на други разработчици, той повдига въпроса:

  • Защо се използва различна версия на кода?
  • Новият изпълнението е по-добре?
  • Трябва ли отново да се върна към старата версия?
  • В някои случаи, тя ще трябва да направя?

// OldWayStepOne (fooey);
// OldWayStepTwo (лепкава);
Newway (fooey, лепкава);

Бъдещите предприемачи, които търсят най-кода, вижте, че след като се използва старата версия OldWay, тъй като виждаме, че сега е тичане на нова версия на Newway, но те няма да знаят защо старата версия OldWay оставен в близост до:

  • Може би по-нова версия Newway просто експеримент? Ако е така, тогава той е по-добър от стария? Как и кога трябва да бъде окончателното решение: да го остави, или да се върне към стария?
  • Може би старата версия по-добре, но с него, че нещо не работи? Ако е така, какво не е наред? И причината за това се крие в neponyatok OldWay код, или как този код се нарича? Когато тези neponyatki ще бъдат премахнати?
  • Може би, проектът се променили, и старата версия OldWay изпълнява излишна работа?

Не е ли по-добре да го направят?:

// OldWay работи по-добре, но твърде неефективна, и толкова дълго, колкото
// няма да бъде обработено MumbleFrabbitz, ние ще използваме
// Newway към стъпка M4.
// OldWayStepOne (fooey);
// OldWayStepTwo (лепкава);
Newway (fooey, лепкава);

Кой може да каже днес дали всъщност преработен MumbleFrabbitz към стъпка M4? Може би не. Това е нормално; кой знае какво бъдеще задръжте за нас? Най-малко, тази опция ще помогне на разработчиците да разберат защо стария код отляво. Като информацията за това, защо промените и защо стария код все още е оставил тук, разработчиците ще могат да разберат, когато те най-сетне може да преминете към новата версия Newway, или когато те ще бъдат в състояние да се върне към по-добро решение.

#if 0
OldWayStepOne (fooey);
.
OldWayStepTwenty (hooey);
# endif

За езика на Python:

ако 0:
OldWayStepOne (fooey)
.
OldWayStepTwenty (hooey)

Не изключвайте код директивите на условията компилация, без да обясни защо.

Ако се налага да използвате C Препроцесорът да премахнете кода "#if 0" ще бъде по-добър вариант, защото тя е най-малко ясно, че този код не трябва да се компилира.

Сред източниците на програмата Lotus Notes, съдържаща много кодови фрагменти, изключен използване директиви "#ifdef-късно", въз основа на (правилно) предположението, че символът за предпроцесорни "КЪСНО" никъде не е определена. Тази опция - много слаба форма на документация; това показва, че кодът все още не е готов да бъде съставен, но ще бъдат обявени по-късно. Но кога? Сред разработчиците отиде на шега, че е необходимо да се определи символа "по-късно" и да видим какво ще се случи!

Когато използвате никога определени знаци за премахване на кода, можете да оставите в съзнанието на разработчиците объркване: какво означава този символ. Може би тази конфигурация код, наречен "по-късно", и в този случай, тази опция ще трябва да бъдат взети предвид.

Да речем, че имат отлична класа, която има куп методи. Един ден откриете, че един-единствен метод никога не е задействана. Можете да го оставите или премахнете?

В този случай, не е прост отговор на този въпрос, тъй като това зависи от класа и от метода. Отговорът зависи от това, дали се очаква, че този метод може да бъде отново е необходимо в бъдеще. Груб отговор може да е това: Ако този клас е част от рамката, а след това го остави, но ако той е част от заявлението, да го изтриете. (Смятам да напиша отделна статия за разликите между рамки и приложения).

// (Тя използва различен алгоритъм, който използва хеширане
// и работи бързо, но той имаше проблем с времето. Ако той
// ви трябва, е в ревизия 1.16 или по-рано ThingMap.java файл в CVS).

Обикновено договор, подобен на този:

Можете да използвате този подход за големи части от кода:

#if 0 // - Мисля, че не е необходимо, ако използвате Foobar
OldWayStepOne (fooey);
.
OldWayStepTwenty (hooey);
# endif

Когато премахване на излишното код е вероятно да напусне коляновия призрак от предишна версия. Опитайте се да карам възможно най-внимателно всичко в ред. Например, ако изтриете OldWay повикване в следния код:

Изкушаващо е да оставите код спътник, защото е трудно да се разбере дали той все още е необходимо. Но ако го оставите празно условния блок, а след това някой друг придружаващ програмист една ден се натъкват на този код, погледнете го и осъзнават, че нещо не е наред. И той ще трябва да се проучи до края. И за да се разбере целта на празен блок условия, той ще трябва много повече време, отколкото можете да го премахнете.

Да действа решително и премахване на стария код. Вие няма да ми липсва.

  • Погрешно празни кодови пътеки. Грешка при програмирането код за сигурност.
  • Fix обработка на грешки на първо място. за колко важно е да имате грешка манипулатор винаги е работил добре.
  • Моят блог. които се обсъждат и други подобни въпроси

Свързани статии

Подкрепете проекта - споделете линка, благодаря!