Интернет магазин китайских планшетных компьютеров |
|
Компьютеры - Магическое число (программирование) - Плохая практика программирования19 февраля 2011Оглавление: 1. Магическое число (программирование) 2. Плохая практика программирования Также «магическими числами» называют плохую практику программирования, когда в исходном тексте встречается числовое значение и неочевидно, что оно означает. Например, такой фрагмент будет плохим: drawSprite; Человеку, который не является автором программы, трудно сказать, что такое 53, 320 или 240. Но если этот код переписать, всё становится на свои места. final int SCR_WIDTH = 640; final int SCR_HEIGHT = 480; final int SCR_X_CENTER = SCR_WIDTH/2; final int SCR_Y_CENTER = SCR_HEIGHT/2; final int SPRITE_CROSSHAIR = 53; drawSprite; Теперь понятно: данная строка выводит в центр экрана спрайт перекрестие прицела. В большинстве языков программирования все значения, используемые для таких констант, будут вычислены ещё на этапе компиляции и подставлены в места использования значений. Поэтому такое изменение исходного текста не ухудшает быстродействие программы. Магические числа и кроссплатформенностьИногда магические числа вредят кроссплатформенности кода. Дело в том, что в Си в 32- и 64-битных ОС гарантируется размер типов Например: size_t a; memset; // неправильно - подразумевается, что size_t равен 4 байтам memset); // правильно! Числа, которые не являются магическимиНе все числа требуется переносить в константы. Например, код на Delphi: for i:=0 to Count-1 do ... Смысл чисел 0 и 1 понятен, и дальнейшего объяснения не требуется. Также можно не делать константами:
Просмотров: 2537
|