Введение в объектно-ориентированный дизайн с Java - страница 19

Шрифт
Интервал


Типизация также предусматривает, что объекты разных типов обычно не являются взаимозаменяемыми; и могут быть взаимозаменяемы только в очень ограниченном порядке, если это абсолютно необходимо.

Два типа типизации – это строгая типизация – здесь операция над объектом проверяется во время компиляции.

И слабая типизация – здесь сообщения могут быть отправлены в любой класс.

Операция проверяется только во время выполнения.

Параллельность в операционных системах позволяет одновременно выполнять несколько задач или процессов.

Большинство систем имеют несколько потоков, при этом некоторые активные, а некоторые ждут процессор, некоторые приостановлены и некоторые завершены.

Системы с несколькими процессорами допускают одновременные потоки управления; но системы, работающие на одном процессоре, используют соответствующие алгоритмы для обеспечения равного времени процессора для потоков, чтобы обеспечить параллелизм.

В объектно-ориентированной среде существуют активные и неактивные объекты.

Активные объекты имеют независимые потоки управления, которые могут выполняться одновременно с потоками других объектов.

И активные объекты синхронизируются друг с другом, а также с чисто последовательными объектами.

Объект занимает пространство памяти и существует в течение определенного периода времени.

В традиционном программировании продолжительность жизни объекта обычно была продолжительностью выполнения программы, которая ее создала.

В файлах или базах данных продолжительность жизни объекта больше, чем продолжительность процесса, создающего объект.

Свойство, с помощью которого объект продолжает существовать даже после того, как его создатель перестает существовать, известно, как сохраняемость.

Принципы ООД (Объектно-ориентированного дизайна)

Если вы хотите построить дом, вы не забьёте и гвоздя без проекта.

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

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

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



На протяжении многих лет люди пробовали множество подходов для упрощения проектирования.

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