игра брюс 2048
Главная / Программирование / Основы объектно-ориентированного проектирования / Тест 7

Основы объектно-ориентированного проектирования - тест 7

Упражнение 1:
Номер 1
Отметьте истинные высказывания

Ответ:

 (1) разработку ведите снизу-вверх: постройте прочный базис, затем применяйте его к специальным случаям 

 (2) не пытайтесь сделать классы с самого начала общими, делайте их конкретными 

 (3) априорная проверка: до выполнения операции проверяйте возможность ее применения 

 (4) все использования наследования должны принадлежать одной из категорий в таксономии 


Номер 2
Отметьте истинные высказывания

Ответ:

 (1) не пытайтесь сделать классы с самого начала настолько автономными, насколько это возможно – учитывайте все зависимости 

 (2) клиент бывает ссылочный и развернутый 

 (3) отложенные классы описывают реализацию 

 (4) классы поведения: задают общее поведение 


Номер 3
Отметьте истинные высказывания

Ответ:

 (1) активные структуры данных имеют состояние и могут рассматриваться как абстрактные машины 

 (2) обратимость: извлекая пользу из уроков реализации, не корректируйте функциональную спецификацию 

 (3) если компонент не согласуется с абстракцией данных, но потенциально полезен, - добавьте его 

 (4) в качестве аргументов используйте только операнды 


Упражнение 2:
Номер 1
Отметьте истинные высказывания

Ответ:

 (1) задание статуса доступа компонентов: закрытых или экспортируемых – подвержено частым изменениям в ходе разработки 

 (2) динамическое связывание: влечет явный разбор случаев 

 (3) используйте выборочный экспорт для группы тесно связанных классов 

 (4) организованный отказ: если в конце выполняется предложение rescue, не забудьте восстановить инвариант 


Номер 2
Отметьте истинные высказывания

Ответ:

 (1) для каждой команды, устанавливающей статус, обеспечьте запрос, возвращающий статус 

 (2) когда все рушится, не используйте обработку исключений 

 (3) доступ к родительской версии при переопределении обеспечивает precursor 

 (4) атрибут можно переопределить как функцию 


Номер 3
Отметьте истинные высказывания

Ответ:

 (1) помещайте в класс минимум информации 

 (2) обобщение: из специализированных классов создавайте повторно используемые классы. Абстрагирование, факторизация – дорога к общности 

 (3) делайте предусловие настолько сильным, насколько это возможно 

 (4) обратимость: извлекайте пользу из уроков реализации и корректируйте функциональную спецификацию 


Упражнение 3:
Номер 1
Отметьте истинные высказывания

Ответ:

 (1) полиморфные структуры данных: наследование и универсальность позволяют комбинировать в нужных пропорциях подобие и вариации 

 (2) пытайтесь сделать классы с самого начала настолько автономными, насколько это возможно 

 (3) классы поведения являются эффективными 

 (4) повторение выполнения: испробуйте другой алгоритм или (стратегия надежды) тот же повторно. Сохраните информацию в атрибутах или локальных сущностях, инициализируемых в момент вызова, но не при повторах retry 


Номер 2
Отметьте истинные высказывания

Ответ:

 (1) обобщение: оставьте создание повторно используемых классов на долю экспертов – дорога к общности – не ваша дорога 

 (2) системы создаются только из классов 

 (3) при повторном объявлении допустимо ослабление предусловий, позволяющее расширить область применения подпрограммы 

 (4) для запросов без аргументов должна быть видима разница в их реализации – атрибутом или функцией 


Номер 3
Отметьте истинные высказывания

Ответ:

 (1) пытайтесь сделать классы с самого начала настолько общими, насколько это возможно 

 (2) используйте технику описателей для разделения абстрактного интерфейса и реализации для различных платформ 

 (3) бесшовность: применяйте различающиеся приемы и инструментарий на этапах анализа, проектирования, разработки и сопровождения 

 (4) задавайте заголовочные комментарии тщательно и согласованно; они являются частью официального интерфейса 


Упражнение 4:
Номер 1
Отметьте истинные высказывания

Ответ:

 (1) отложенный компонент родителя сохраняйте отложенным 

 (2) предусловие связывает клиента, постусловие поставщика 

 (3) повторные объявления не сохраняют семантику 

 (4) предлагаемая таксономия наследования включает 3 категории, распадающиеся на 12 видов 


Номер 2
Отметьте истинные высказывания

Ответ:

 (1) для ссылочного клиента справедливо отношение "является", для развернутого – "имеет" 

 (2) динамическое связывание на полиморфных структурах данных: применяет к каждому элементу структуры операцию, соответствующую элементу 

 (3) обновление не объектного ПО: не пытайтесь одеть в новые одежды старую систему 

 (4) индексируйте классы 


Номер 3
Отметьте истинные высказывания

Ответ:

 (1) системы создаются только из классов и глобальной информации 

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

 (3) не усердствуйте в усилении постусловий, – оставьте возможность их усиления потомками 

 (4) проектируйте с учетом изменений и повторного использования 


Упражнение 5:
Номер 1
Отметьте истинные высказывания

Ответ:

 (1) отложенные классы описывают категории высокого уровня 

 (2) обновление необъектного ПО: инкапсулируйте абстракции в классы 

 (3) при браке по расчету: реализация сочетается с абстракцией 

 (4) нельзя переопределить сразу несколько эффективных компонентов 


Номер 2
Отметьте истинные высказывания

Ответ:

 (1) отношение "является" иногда следует реализовать как клиентское 

 (2) используйте многослойную архитектуру для разделения абстрактного интерфейса и реализации для различных платформ 

 (3) минимизируйте заголовочные комментарии; они являются частью официального интерфейса 

 (4) вводите понятие устарелых (obsolete) компонентов и классов для облегчения перехода к новой версии 


Номер 3
Отметьте истинные высказывания

Ответ:

 (1) отложенные классы служат средством анализа и проектирования, описывая абстракции без ссылок на реализацию 

 (2) разработку ведите сверху-вниз: постройте главную функцию, затем применяйте к ней декомпозицию 

 (3) апостериорная проверка: выполните операцию, затем запросите атрибут для выяснения того, как она сработала 

 (4) функция не должна иметь конкретный побочный эффект 




Главная / Программирование / Основы объектно-ориентированного проектирования / Тест 7