глоссариум ооп: к
Квалификатор (qualifier) – атрибут, однозначно идентифицирующий отдельный целевой объект.
Класс (class) – множество объектов, имеющих общую структуру и общее поведение. Термины класс и тип (но не всегда) являются синонимами. Класс отличается от типа тем, что он концентрируется на классификации структуры и поведения.
Клиент (client) – объект, пользующийся услугами другого объекта, либо выполняя операции над последним, либо ссылаясь на его состояние.
Ключевая абстракция (key abstraction) – класс или объект, являющийся частью словаря предметной области.
Композиция (composition) – полное или частичное отношение, в котором один объект состоит из одного или нескольких других объектов, каждый из которых рассматривается как часть целого.
Компонент (component) – логическая совокупность классов, взаимодействующих вместе для обеспечения набора услуг, предлагаемых посредством интерфейса. Услуги, требуемые компонентом, запрашиваются с помощью соответствующих интерфейсов. Кроме того, компонент может состоять из других компонентов и быть вложенным в другой компонент.
Конкретизация (инстанциирование) (instantiation) – процесс подстановки параметров шаблона обобщенного или параметризированного класса для создания класса, который может иметь экземпляры.
Конкретный класс (concrete class) – класс, реализация которого является завершенной и который, благодаря этому, может иметь экземпляры.
Конструктор (constructor) – операция, создающая объект и/или инициализирующая его стостояние.
Контейнерный класс (container class) – класс, экземпляры которого содержат другие объекты. Контейнерный класс может описывать как однородные (когда все объекты, включенные в коллекцию, относятся к одному и тому же классу), так и неоднородные совокупности (когда объекты, включенные в коллекцию, могут относиться к разным классам, хотя все они обладают свойствами общего суперкласса). Контейнерные классы часто реализуются с помощью параметризированных классов, в которых класс объектов, содержащихся в контейнере, задается определенным параметром.
Кооперация (collaboration) – процесс, в котором несколько элементов модели взаимодействуют для того, чтобы обеспечить определенное взаимодействие верхнего уровня.
jQuote №1
В главе 4 книги Рефакторинг Мартин Фаулер написал следующее.
Если обратить внимание на потраченное разработчиками время, можно заметить, что написание кода на самом деле составляет небольшую его часть. Некоторое время тратится на постановку задачи, некоторое – на проектирование, но большая его часть уходит на отладку. Каждый читатель может вспомнить долгие часы отладки (часто до глубокой ночи). Любой разработчик может рассказать историю об ошибке, исправление которой потребовало целого дня (или даже больше). На самом деле много времени для исправления ошибки не нужно. А вот найти ошибку – совсем другое дело. Не забывайте, что после исправления одной ошибки всегда существует вероятность появления другой, которая остается незаметной очень долго. И ещё больше времени потребуется на ее обнаружение.
