
- •Реферат: Основы написания хорошего кода
- •2011. Основы написания хорошего кода Введение
- •Предварительные условия
- •Предварительные условия, связанные с определением проблемы
- •Метафоры и алгоритмы
- •Предварительные условия, связанные с выработкой требований
- •Конструирование
- •Выбор языка программирования
- •Конвенции программирования
- •Работа в группе
- •Гарантия качества
- •Разработка архитектуры
- •Организация программы: описание системы
- •Избыточная функциональность
- •Купить или создавать самим?
- •Проектирование по
- •1. Существенные и несущественные проблемы.
- •2. Сложность
- •Простота сопровождения
- •Содержание
Конструирование
Иногда конструирование называют «кодированием» или «программированием». Но конструирование вовсе не механический процесс, он часто связано с творчеством и анализом.
Вот некоторые конкретные задачи, связанные с конструированием:
- проверка выполнения условий, необходимых для успешного конструирования;
- определение способов последующего тестирования кода;
- проектирование и написание классов и методов;
- создание и присвоение имен переменным и именованным константам;
- выбор управляющих структур и организация блоков команд;
- блочное тестирование, интеграционное тестирование и отладка собственного кода;
- взаимный обзор кода и низкоуровневых программных структур членами группы;
- «шлифовка» кода путем его тщательного форматирования и комментирования;
- интеграция программных компонентов, созданных по отдельности;
- оптимизация кода, направленная на повышение его быстродействия, и снижение
степени использования ресурсов.
Почему конструирование ПО так важно?
- Конструирование - крупная часть процесса разработки ПО. В зависимости от размера проекта на конструирование обычно уходит 30-80 % общего времени работы.
- Конструирование занимает одно из центральных мест в процессе разработки ПО (см.Рис.2).
Рис.2 - Место конструирования среди других процессов разработки ПО.
Требования к приложению и его архитектура разрабатываются до этапа конструирования, чтобы гарантировать его эффективность. Тестирование системы (в строгом смысле) выполняется после конструирования и служит для проверки его правильности. Повышенное внимание к конструированию может намного повысить производительность труда отдельных программистов. Результат конструирования — исходный код — часто является единственным верным и актуальным описанием программы. Конструирование — единственный процесс, который выполняется во всех случаях.
Выбор языка программирования
Язык программирования, на котором будет реализована система, заслуживает большого внимания, так как вы будете погружены в него с начала конструирования программы до самого конца. Если язык хорошо знаком программистам, они работают более производительно.Программисты, использующие языки высокого уровня, достигают более высокой производительности и создают более качественный код, чем программисты, работающие с языками низкого уровня.
Конвенции программирования
В высококачественном приложении должна быть очевидна связь между концептуальной целостностью архитектуры и ее низкоуровневой реализацией. Реализация должна соответствовать высокоуровневой архитектуре и обладать внутренней согласованностью. В этом и заключается смысл принципов конструирования, определяющих конвенции именования переменных, классов, методов, а также форматирования кода и оформления комментариев. При разработке сложной программы архитектурные принципы вносят в программу структурный баланс, а принципы конструирования — низкоуровневую гармонию, при наличии которой каждый класс воспринимается как неотъемлемая часть общего плана. Любая крупная программа требует применения контролирующей структуры, унифицирующей аспекты языка программирования. Красота крупной структуры частично заключается в том, как в ее отдельных компонентах выражены особенности архитектуры.