Проектировании программного обеспечения

Проектировании программного обеспечения Есть два способа проектирования программных систем. Один путь это создать настолько простой дизайн, который явно не имеет недостатков. Другой путь сделать дизайн настолько сложным, чтобы он не имел явных (т.е. видимых) недостатков.

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

При разработке кода всегда нужно отдавать предпочтение читаемости кода, а не удобству кодирования для разработчика. Нужно помнить, что код пишется однажды, а читается йотом многократно, поэтому лучше потратить больше времени на его написание (снизив продуктивность кодирования) только ради того, чтобы он стал более читабельным. На самом деле, ясность и читаемость кода намного важнее высоких показателей вашей продуктивности.

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

Когда вы вносите изменения в код, исправляя ошибки или добавляя новые свойства, всегда старайтесь подходить к этому системно. Сначала необходимо разобраться в том, что делает программа и как она работает. Потом нужно определить, что вы собираетесь изменить в ней. Затем вы вносите изменения и тестируете. Первый шаг (изучение работы программы), как правило, наиболее трудный. Если кто-то вам отдает код, который доступен для понимания, этим он существенно облегчает вашу жизнь. Следуя золотому правилу, вы обязаны сделать свой собственный код столь же ясным и читаемым.

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

Программируйте осмысленно и выразительно (принцип PIE —Program Intently and Expressively). Строительство монолитных домов и освобождающееся вторичное жилье позволяют купить недорого в Королеве недвижимость, расположенную в зеленом поясе Москвы

Как быть с теми, у кого нет за плечами такого опыта? Что подумают они про операцию в строке 3? Возможно, в вашей команде есть менее опытные люди, которые совсем недавно занялись программированием. Эти люди будут чесать в затылке до тех пор, пока все волосы выпадут. Хотя такой код, возможно, работает эффективно, его текст недостаточно осмыслен и выразителен.

Сдвиг ради умножения служит примером излишней и небезопасной оптимизации кода по времени исполнения. Код result = val2 выглядит понятнее, работает и даже, вероятно, более эффективно исполняется, если у вас нормальный компилятор.

tel-icq