Архив категории ‘Методология отладки программ’

Структура коллектива разработчиков

    На этом шаге мы рассмотрим состав коллектива разработчиков.     Как показывают эксперименты, объектно-ориентированная разработка требует несколько иного разделения труда по сравнению с традиционными методами. Г.Буч выделяет три важнейшие роли разработчиков в объектно-ориентированном подходе [1]: архитектор проекта; ответственные за подсистемы; прикладные программисты.     Архитектор проекта отвечает за эволюцию и сопровождение архитектуры системы. Это не обязательно […]

Составные части объектного подхода. Сохраняемость

    На этом шаге мы рассмотрим сохраняемость.     Любой программный объект существует в памяти и живет во времени. Существуют объекты, которые присутствуют лишь во время вычисления выражений, а есть и такие, которые существуют независимо от программы. Весь спектр сохраняемых объектов можно поделить на следующие группы: промежуточные результаты вычисления выражений; локальные переменные при вызове процедур; собственные […]

Составные части объектного подхода. Параллелизм

    На этом шаге мы рассмотрим параллелизм.     Существуют задачи, при выполнении которых требуется одновременно обрабатывать несколько событий. В каждой из таких ситуаций естественно использовать несколько компьютеров или задействовать многозадачность на многопроцессорном компьютере. Процесс (поток управления) - это фундаментальная единица действия в системе. Каждая программа имеет, по крайней мере, один поток управления. Реальная параллельность достигается […]

Составные части объектного подхода. Типизация

    На этом шаге мы рассмотрим понятия тип и класс.     Понятие типа взято из теории абстрактных типов данных.     В большинстве языков программирования понятия "тип" и "класс" взаимозаменяемые (мы также будем придерживаться этого), хотя существуют языки, где эти понятия различаются.     Типизация заставляет выражать наши абстракции таким образом, чтобы язык программирования, используемый при реализации […]

Составные части объектного подхода. Иерархия

    На этом шаге мы рассмотрим иерархию.         При разработке сложных программных комплексов число абстракций может быть очень велико. Инкапсуляция позволяет в определенной степени устранить этот недостаток, спрятав внутреннее содержание абстракций. Модульность также упрощает задачу, объединяя в группы логически связанные абстракции. Однако значительное упрощение достигается за счет образования из абстракций иерархической структуры.     Основными […]

Составные части объектного подхода. Модульность

    На этом шаге мы рассмотрим модульность.     В традиционном структурном программировании модульность - это искусство раскладывать подпрограммы по кучкам так, чтобы в одну кучку попадали подпрограммы, использующие друг друга или изменяемые вместе. В объектно-ориентированном программировании желательно физически разделить классы и объекты (в данном случае это экземпляры классов), составляющие логическую структуру проекта.     Для небольших […]

Составные части объектного подхода. Инкапсуляция

    На этом шаге мы рассмотрим инкапсуляцию.     Инкапсуляция тесно связана с абстракцией и представляет собой внутреннюю реализацию тех свойств и методов объекта (класса), которые были выделены на этапе абстрагирования. Абстракция и инкапсуляция дополняют друг друга: абстрагирование направлено на наблюдаемое поведение объекта, а инкапсуляция занимается "внутренним устройством" этого поведения (например, какие свойства и методы являются […]

Составные части объектного подхода. Абстракция

    На этом шаге мы рассмотрим абстракцию.         Абстрагирование концентрирует внимание на внешних особенностях объекта и позволяет отделить самые существенные особенности поведения от несущественных. Хорошей можно назвать такую абстракцию, которая подчеркивает детали, существенные для рассмотрения и использования, и опускает те, которые являются несущественными для данной задачи. На практике абстракция позволяет выделить свойства и методы, […]

Составные части объектного подхода (общие сведения)

    На этом шаге мы перечислим составные части объектного подхода.     Прежде чем пользоваться средствами ООП нужно построить модель программируемого явления или объекта. Естественно эта модель должна удовлетворять определенным требованиям, к рассмотрению которых мы переходим.     В предыдущем разделе мы привели пять стилей программирования. Каждый стиль имеет свою концептуальную базу, требует своего способа восприятия решаемой […]

Объектно-ориентированное программирование

    На этом шаге мы рассмотрим предпосылки появления объектно-ориентированного программирования.     Методы структурного программирования помогают упростить процесс разработки сложных систем за счет использования алгоритмов как готовых строительных блоков. Аналогично методы объектно-ориентированного программирования (ООП) призваны помочь разработчикам в создании программ, где в качестве блоков используются классы и объекты.     В основе ООП лежит использование объектной модели, […]