20 советов по созданию настоящего Х-кода

Спецвыпуск Xakep, номер #014, стр. 014-048-1

Иван Скляров (sklyarovivan@mail.ru)

Хочешь, чтобы созданные тобой проги заслужили уважение, а не выкрики must die, и, чтобы, увидав код твоей программы, знающие люди говорили: "Это писал настоящий хакер!". Тогда всегда следуй тем двадцати советам, что ты здесь прочитаешь, и не важно, на каком языке ты кодишь - они подходят для всех существующих языков программирования. Советы эти, главным образом, посвящены оптимизации, т.е. созданию быстрого и потребляющего малое количество ресурсов (памяти, свободного места на винте и т.п.) кода, а потому и безглючного. В наше время, когда на первом месте стоит срок разработки программы, а не ее качество, оптимизация разработчикам стала не нужна. Поэтому и приходится бедным юзерам с очередным выходом форточек апгрейдить свою тачку, а также бороться с вечными глюками. Но остались еще люди - создатели Linux, Back Orifice 2000 и т.п., которым в первую очередь важны не деньги, а честь и уважение своего имени, - ты, наверное, понял, что я говорю о хакерах. Теперь и у тебя есть возможность делать как они.

Вообще, часть этих советов раньше можно было встретить в любой книге по языкам программирования для начинающих. Но современные авторы считают это лишним, наивно полагая, что современные компиляторы сами сделают все за программиста. Я согласен, что компиляторы стали более интеллектуальны, но надеяться на них я бы не советовал, тем более, есть еще и интерпретируемые языки, такие как Perl, которым оптимизация просто необходима, да и не нужно приучать новичков к дурному тону программирования.

Совет #1

Старайся писать небольшой и компактный код. Запомни: число строк и их длина прямо пропорциональны размеру скомпилированной программы. К тому же компактный код делает программы более шустрыми. У опытных программистов существует даже такая заповедь: "Нет такой программы, которую нельзя было бы уменьшить хотя бы на один оператор". Поэтому всегда внимательно смотри листинг своей программы, и ты обязательно обнаружишь места, которые можно написать короче или вообще убрать. Но это не касается комментариев, компилятор их все равно игнорирует, поэтому всегда вставляй комментарии, особенно в больших и сложных программах. Это поможет тебе легче в них ориентироваться, к тому же, если ты вдруг решишь продать тексты своих программ, то комментарии повысят им цену.

Совет #2

Хорошенько изучи IDE (интегрированная среда разработчика) языка, на котором ты кодишь. Обычно в опциях IDE имеется возможность выбирать различные типы компиляторов, а по умолчанию всегда стоит самый простой, который быстро компилирует, но создает менее оптимизированный код. Поэтому всегда устанавливай самый оптимизирующий тип компилятора, и если ты не пишешь очередные форточки, то его медленная скорость будет для тебя не особо обременительна. В крайнем случае для черновых версий своих программ можешь использовать обычный тип компилятора, а для окончательного варианта - самый оптимизирующий. Кроме того, если имеется возможность, установи компилятор в режим "предупреждений о максимальном числе ситуаций" и исправляй свою программу до полного исчезновения сообщений.

Содержание  Вперед на стр. 014-048-2

загрузка...
Cпец Хакер #075Cпец Хакер #074Cпец Хакер #073Cпец Хакер #072Cпец Хакер #071Cпец Хакер #070Cпец Хакер #069Cпец Хакер #068Cпец Хакер #067Cпец Хакер #066Cпец Хакер #065Cпец Хакер #064Cпец Хакер #063Cпец Хакер #062Cпец Хакер #061Cпец Хакер #060Cпец Хакер #059Cпец Хакер #058Cпец Хакер #057Cпец Хакер #056Cпец Хакер #055Cпец Хакер #054Cпец Хакер #053Cпец Хакер #052Cпец Хакер #051Cпец Хакер #050Cпец Хакер #049Cпец Хакер #048Cпец Хакер #047Cпец Хакер #046Cпец Хакер #045Cпец Хакер #044Cпец Хакер #043Cпец Хакер #042Cпец Хакер #041Cпец Хакер #040Cпец Хакер #039Cпец Хакер #038Cпец Хакер #037Cпец Хакер #036Cпец Хакер #035Cпец Хакер #034Cпец Хакер #033Cпец Хакер #032Cпец Хакер #031Cпец Хакер #030Cпец Хакер #029Cпец Хакер #028Cпец Хакер #027Cпец Хакер #026Cпец Хакер #025Cпец Хакер #024Cпец Хакер #023Cпец Хакер #022Cпец Хакер #021Cпец Хакер #020Cпец Хакер #019Cпец Хакер #018Cпец Хакер #017Cпец Хакер #016Cпец Хакер #015Cпец Хакер #014Cпец Хакер #013Cпец Хакер #012Cпец Хакер #011Cпец Хакер #010Cпец Хакер #009Cпец Хакер #008Cпец Хакер #007Cпец Хакер #006Cпец Хакер #005Cпец Хакер #004Cпец Хакер #003Cпец Хакер #002Cпец Хакер #001