Советы профессионала

 

Как правильно использовать типы переменных?

· Избегайте сравнения переменных разных типов

Например, дляпеременныхx:real; i:integer;сравнение x = iпочти гарантированно не работает, так как преобразование одного типа к другому всегда связано с округление и получить точное равенство (с точностью до двоичного разряда) нельзя!

· Избегайте сравнения на равенство переменных вещественных типов

Если десять раз сложить 0.1,то значение 1.0 получится очень редко: почти всегда – 0.99999...Поэтому для вещественных переменных x1, x2 вместо сравнения x1 = x2следует сравнить абсолютное значение их разности с заданной точностью, например: abs(x1 - x2) <= 0.00001

· Используйте функции и процедуры Object Pascal для преобразования типов

Ord(x) –возвращает порядковый номер значения x в

перечисляемом типе. Например, Ord(True) = 1

Chr(N) –возвращает символ, соответствующий порядковому

номеру Nв таблице символов.Например, Chr(65) = 'A'

Trunc(x) –округляет значение вещественного x до целого,

отбрасывая дробную часть

Round(x) –округляет значение вещественного x до ближайшего

целого

Int(x) –возвращает целую часть вещественного x

Frac(x) –возвращает дробную часть вещественного x

Val(S, I, Code) –процедура преобразуетстроку S в число I.

Code = 0 –нет ошибки, иначе – ошибка

Str(I, S) –процедура преобразуетчисло I в строку S.

 

Как правильно использовать константы?

· Избегайте «магических» чисел

Используйте в программе в качестве числовых констант только значения 0или1.Все другие значения («магические» числа) должны быть описаны, как именованные константы. Например, Const N = 10;и везде в коде программы вместо числа 10 используйте наименование N.

· Используйте символьные константы, а не их порядковый номер

Вместо Chr(65)напишите в коде программы просто 'A'.

Как правильно задать имя переменной?

· Самый важный принципимя должно полно и точно описывать сущность, представляемую переменной

· Имена переменных должны облегчать чтение кода программы

· Выбирайте длину наименования исходя из времени жизни переменной

Считается, что отладка программы требует меньше усилий при использовании имен переменных, состоящих от 8 до 20 символов.

Короткие имена – значит переменные второстепенные с коротким временем жизни

· Добавляйте Спецификаторы вычисляемых значений

Спецификаторы вычисляемых значений – Count(количество), Max(максимум), Average (среднее), Total (общее число) и другие – добавляются в конце имени переменной. Например, customerCount, customerTotal – общее число заказчиков

· Используете i, j, k для показателей циклов

Как правило, наименование показателей циклов – i, j, k.Если Вы используете эти наименования для показателей циклов,тоне используйте их для других целей в программе!

· Используете общепринятые наименования для логических переменных

§ Done – признак завершения цикла. Присвойте false до цикла и true– после завершения

§ Error – признак ошибки: false – нет ошибки, true – ошибка

§ Found– признак обнаружения некоторого значение. Например, поиск значения в массиве. Присвойте false до начала поиска и true – как только значение найдено

§ Success или ОК – признак успешного завершения операции. Присвойте false, если операция завершилась неудачно, и true, если операция завершилась успешно

· НЕ используете похожие символы в наименовании

Например: Gили6, 1илиl, Qили0, 2 илиZ, Sили5и другие

· Начинайте наименование переменной со строчной буквы, а наименования типов – с прописной.