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

Основы программирования - тест 4

Упражнение 1:
Номер 1
Какие утверждения о классе являются корректными?

Ответ:

 (1) в грамматике Eiffel есть категория Class и текст каждого класса программной системы является образцом этой категории 

 (2) экземпляры класса, создаваемые во время выполнения системы, называются объектами 

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

 (4) класс определяет операции (методы), применимые к объектам класса 

 (5) у каждого объекта класса свой набор методов 


Номер 2
Какие утверждения об объекте являются корректными?

Ответ:

 (1) имена объектов создаются динамически в ходе выполнения программы 

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

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

 (4) число объектов в каждом классе фиксировано 

 (5) если определен класс "ГОРОД", то объектами этого класса могут быть разные города – Москва, Рязань, Тверь 


Номер 3
Какие утверждения, связывающие класс и объект, являются корректными?

Ответ:

 (1) класс задает множество, объект – элемент этого множества 

 (2) объект статичен, класс динамичен 

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

 (4) объект – это коллекция данных, создаваемая в процессе выполнения программной системы 

 (5) для создания объекта не требуется существование класса  

 (6) для создания класса не требуется существование объектов  


Упражнение 2:
Номер 1
Какое высказывание является определением программного интерфейса программы или ее части – класса, метода?

Ответ:

 (1) программный интерфейс задает внешний вид программы 

 (2) программный интерфейс – это система правил, задающих стиль написания программы 

 (3) программный интерфейс – это описание, позволяющее клиентам, использовать эту программу (часть программы) 

 (4) программный интерфейс – это графика, сопровождающая программу 


Номер 2
Какие утверждения справедливы для интерфейса пользователя?

Ответ:

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

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

 (3) важное свойство интерфейса пользователя – его дружелюбность 

 (4) важное свойство интерфейса пользователя – интуитивная понятность 

 (5) важное свойство интерфейса пользователя – визуальность, наличие графических элементов 


Номер 3
Какое утверждение не является справедливым для программного интерфейса?

Ответ:

 (1) программный интерфейс – это интерфейс программы, ориентированный на тех ее клиентов, которые сами являются программами 

 (2) программный интерфейс – это интерфейс программы, ориентированный на людей – тех разработчиков, которым предстоит создавать программу, выступающую в роли клиента программы, предлагающей свой интерфейс 

 (3) важное свойство программного интерфейса – понятность программы, обеспечиваемая специальными средствами – комментариями, содержательными именами, контрактами 

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


Упражнение 3:
Номер 1
Клиент программной системы (части программы – класса, метода) это:

Ответ:

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

 (2) человек, купивший программу 

 (3) человек, использующий программу, называемый пользователем 

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

 (5) другая программная система, использующая предлагаемую программу или отдельные ее части 


Номер 2
Кто или что в контексте данного курса может быть поставщиком для класса программной системы?

Ответ:

 (1) другой класс этой же программной системы 

 (2) дилер, продающий программную систему 

 (3) этот же класс этой же программной системы 

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


Номер 3
Какие утверждения в контексте данного курса об отношениях "клиент", "поставщик" являются корректными?

Ответ:

 (1) отношения "быть клиентом" и "быть поставщиком" взаимно дополняют друг друга. Если А клиент В, то В поставщик А 

 (2) клиент может быть человеком, а поставщиком - программная система 

 (3) клиентом может быть программная система, а поставщиком - человек 

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

 (5) клиентом может быть одна программная система, а поставщиком другая система 

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


Упражнение 4:
Номер 1
Какое определение предусловия метода является корректным?

Ответ:

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

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

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

 (4) предусловие – это условие, которое первым делом проверяет метод при его вызове 


Номер 2
Какое определение постусловия метода является корректным?

Ответ:

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

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

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

 (4) постусловие – это условие, являющееся отрицанием предусловия 


Номер 3
Какое определение инварианта класса является корректным?

Ответ:

 (1) инвариант класса – это условие, которое всегда является истинным 

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

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

 (4) инвариант класса – это конъюнкция предусловий и постусловий всех методов класса 


Упражнение 5:
Номер 1
Какое высказывание является некорректным по отношению к понятию "инвариант класса":

Ответ:

 (1) инвариант класса должен быть истинным перед вызовом любого метода класса 

 (2) инвариант класса должен быть истинным по завершении вызова любого метода класса 

 (3) инвариант класса должен быть истинным в процессе работы любого метода класса 

 (4) инвариант класса является предусловием и постусловием любого метода класса 


Номер 2
Какое высказывание является некорректным по отношению к понятию "предусловие"?:

Ответ:

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

 (2) если у метода нет аргументов, то нет необходимости в задании предусловия 

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

 (4) если при вызове метода предусловие не было выполнено, то работа метода считается корректной, даже если он выдает ошибочные результаты. Ответственность за ошибку лежит на клиенте 


Номер 3
Какое высказывание является некорректным по отношению к понятию "постусловие"?

Ответ:

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

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

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

 (4) вся ответственность за выполнение постусловия лежит на методе. Если метод был корректно вызван, то он обязан гарантировать выполнение постусловия при завершении его работы 


Упражнение 6:
Номер 1
Что не входит в понятие контракта метода:

Ответ:

 (1) постусловие 

 (2) комментарии 

 (3) предусловие 

 (4) инвариант класса 


Номер 2
Пусть для некоторой проблемной области создается программная система. Какие условия должны выполняться при проектировании классов программной системы:

Ответ:

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

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

 (3) моделируемое понятие и соответствующий класс должны задавать некоторое множество, как например, "Линия метро" или "Станция" 

 (4) над элементами множества должны быть определены операции – запросы и команды 

 (5) число возможных объектов класса должно быть известно в момент проектирования 


Номер 3
При моделировании линии метро за начальную станцию принимается станция на южном конце линии, за конечную – станция на северном конце. Некоторая линия метро идет с запада на восток, так что начальная и конечная станция расположены на одной широте. Что следует сделать в этом случае, чтобы наша модель соответствовала реальному миру?

Ответ:

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

 (2) признать, что наше решение неудачно и перепроектировать систему 

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

 (4) полагать, что в этом случае восточный конец является одновременно и южным концом, а западный - северным 


Упражнение 7:
Номер 1
Рассмотрим фрагмент карты концепций. Какое отношение в этом фрагменте задано некорректно?

Ответ:

 (1) метод имеет контракт 

 (2) контрактный облик отображает интерфейс класса 

 (3) предусловие является подвидом контракта 

 (4) понятия "экземпляр класса" и "объект класса" эквивалентны 

 (5) клиент ПО является подвидом поставщика ПО 

 (6) инвариант класса является булевским условием 


Номер 2
Рассмотрим фрагмент карты концепций. Какое отношение в этом фрагменте задано некорректно?

Ответ:

 (1) предусловие является подвидом постусловия 

 (2) контракт является частью программного кода 

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

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


Номер 3
Рассмотрим фрагмент карты концепций. Какое отношение в этом фрагменте задано некорректно?

Ответ:

 (1) предусловие является частью контракта 

 (2) контракт имеет инвариант класса 

 (3) программный интерфейс является подвидом интерфейса 

 (4) контрактный облик содержит описание класса 


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

Ответ:

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

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

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

 (4) предусловия, постусловия, инварианты являются примерами контрактов 

 (5) инварианты специфицируют согласованные условия, связывающие значения различных запросов класса 


Номер 2
Укажите корректные высказывания?

Ответ:

 (1) текст программной системы задает описание классов, составляющих эту систему 

 (2) каждая команда возвращает результат, тип которого описан в объявлении команды 

 (3) контрактный облик позволяет характеризовать интерфейс класса 

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


Номер 3
Укажите корректные высказывания?

Ответ:

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

 (2) текст класса описывает свойства объектов – экземпляров класса 

 (3) класс не может быть многолик, - у него может быть только один облик 

 (4) контракты являются частью программного кода 




Главная / Программирование / Основы программирования / Тест 4