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

Количество вопросов - 240

При проектировании ПО приходится учитывать два разных аспекта проектирования, - разделяя "модель" и "облик", "издателей" и "подписчиков". Какие утверждения справедливы относительно взаимодействия этих аспектов?

Проектирование семейства классов начинается с создания класса – прародителя семейства. Как правило, такой класс является отложенным классом. У отложенного класса ряд методов являются отложенными. Укажите причины, по которым на верхних уровнях проектирования разумно создавать отложенные методы?

Композиция функций f и g – это специальная операция над функциями, которая обозначается как g \circ f или f; g. Результатом операции является функция h(x), такая что h(x) = g(f (x)) для любого применимого аргумента x. Какие утверждения справедливы по отношению к функции h(x)?

При подписке на событие выполнялся следующий оператор: left_click.subscribe(agent my_method) Какие утверждения является корректными?

Архитектура образца "Наблюдатель" предполагает проектирование:

Какие выражения синтаксически корректны в Eiffel?

Одним из известных образцов проектирования является образец (pattern), называемый МОК (Модель – Облик – Контроллер) или MVC (Model – View – Controller). Согласно этому образцу:

Динамическое связывание и полиморфное присоединение – два механизма, поддерживающие семантику присваивания и аналогичную семантику замены формальных аргументов при вызове метода. Какие утверждения справедливы для этих механизмов?

Пусть задан универсальный класс C[T] и одно из полей этого класса объявлено как x : T. Какие операции допустимы для сущности x?

В образце МОК (MVC) класс EVENT_TYPE:

Организации, создающие ПО, могут быть сертифицированы. Одна из таких сертификаций, оценивающая уровень зрелости организации, - сертификация CMMI – предполагает 5 уровней зрелости. Для зрелой организации в процессе разработки требуется проведение измерений и анализа, начиная с уровня зрелости:

Какие утверждения справедливы относительно отложенных классов, их методов и объектов?

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

Когда выполняется присваивание x := agent r, то переменная x должна принадлежать специальному типу, часто называемому функциональным, поскольку объектами этого типа являются функции и процедуры. В Eiffel этот тип задается классом ROUTINE и тремя его потомками – классами PROCEDURE, FUNCTION, PREDICATE. Какой из этих классов обозначает запросы, за исключением запросов, возвращающих тип BOOLEAN?

В некоторых языках программирования используется перегрузка методов, когда несколько методов имеют одно и то же имя, но разную сигнатуру. Какие из утверждений являются справедливыми?

Управление событиями, можно рассматривать как некоторую структуру управления, получившую название "издатели – подписчики". Какие утверждения справедливы относительно этой структуры?

Примером карринга на практике может служить отношение между компилятором и интерпретатором. Какие высказывания справедливы относительно компилятора и интерпретатора?

Что понимается под "жизненным циклом ПО"?

Что обозначает агентное выражение agent g(a, ?, b)?

Что понимается под образцом проектирования?

В классе Р задан эффективный метод М с постусловием "Т > 10". Наследник этого класса Р1 переопределил этот метод, задав соответственно постусловие: ensure then "Т > 20". Класс Р2 - наследник Р1 в свою очередь переопределил этот метод, задав соответственно постусловие: ensure then "Т > 50". Класс Р3 - наследник Р2 в свою очередь переопределил этот метод, задав соответственно постусловие: ensure then "Т > 100". Клиенту требуется вызвать метод, обеспечивающий на выходе истинность условия: "T > 40". Каково число реализаций метода М, которые могут гарантировать истинность выполнения этого условия?

Механизм агентов находит широкое применение в различных приложениях. Укажите приложения, для которых показано, как применять агентов:

Верификация и проверка правильности один из важных этапов разработки ПО. Какие утверждения относительно В&П являются корректными?

При рассмотрении наследования используются такие термины как: потомок, наследник, правильный потомок, родитель, предок, правильный предок. Какие утверждения справедливы относительно этих терминов?

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

Универсальность и наследование – два тесно связанных механизма, обеспечивающие мощь ОО проектирования и программирования. Рассмотрим полиморфную структуру данных LIST[VEHICLE] – список, элементами которого являются транспортные средства. Укажите, элементы какого или каких классов не могут храниться в этом списке?

При проектировании ПО следует выделять как отдельные элементы "модель" ПО и "облик" ПО. Какие утверждения справедливы относительно понятия "модель"? Облик ПО – это:

Какие утверждения относительно факторов качества ПО являются справедливыми?

Если родитель задал реализацию метода, то наследник:

Из 15 сформулированных свойств хороших требований, какое из предлагаемых свойств не входит в этот список?

При моделировании 7-и уровневой классификации Линнея создан объект prima класса "Примат". (В классификации Линнея это уровень – отряд. Согласно Линнею, к приматам относятся люди, обезьяны, летучие мыши, ленивцы). Какие утверждения справедливы по отношению к этому объекту?

Для отображения отношений между классами Eiffel Studio позволяет построить диаграмму классов. Какие утверждения справедливы для этой диаграммы?

Полиморфизм - одно из важнейших понятий, связанных с наследованием. Какое высказывания справедливы для присваивания?

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

Какие утверждения справедливы?

Пусть заданы классы P, F, M, S, D, где P – родитель классов F и M, класс F – родитель S, а M – родитель D. Пусть созданы объекты этих классов – op, of, om, os, od. Какие утверждения являются несправедливыми?

Какие утверждения справедливы?

Проектирование семейства классов начинается с создания класса – прародителя семейства. Как правило, такой класс является отложенным классом. У отложенного класса есть хотя бы один отложенный метод. Какой же метод называется отложенным?

Если в родительском классе есть отложенный метод, то наследник класса обязан?

Отложенные классы характерны для верхних уровней проектирования программных систем. Некоторые методы отложенного класса носят название "программы с дырами". Какие это методы?

С присваиванием связаны два механизма – трансформация и полиморфное присоединение. Какие утверждения справедливы для этих механизмов?

Полиморфизм и динамическое связывание позволяет автоматически проводить разбор случаев – при вызове динамически выбирается наиболее подходящий метод. Такой разбор случаев можно проводить и явно, написав соответствующий программный код. Какие утверждения справедливы относительно этих двух подходов?

Какие утверждения относительно возможности эффективной реализации динамического связывания являются справедливыми?

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

Если у родительского класса есть инвариант, то наследник класса:

Какой связкой объединятся наследуемый инвариант и инвариант, заданный в классе наследника?

При переопределении метода возможно и переопределение контракта. Как при переопределении контракта записывается новое предусловие, и каков его эффект?

В родительском классе Р задан эффективный метод М с предусловием "Быть пушистым" and "Быть белым". Наследник этого класса Р1 переопределил этот метод, задав соответственно предусловие: require else "Быть белым". Наследник этого класса Р2 переопределил этот метод, задав соответственно предусловие: require else "Быть пушистым". Наследник этого класса Р3 переопределил этот метод, задав соответственно предусловие: require else "Быть натуральным". Объект, передаваемый на вход методу М, обладает свойствами "Быть пушистым" and "Быть натуральным". Методы какого класса могут применяться для обработки этого объекта?

При проектировании программной системы многие классы связываются отношением наследования. Какие утверждения справедливы для наследования?

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

Пусть класс Р имеет метод М. Пусть у класса Р есть два наследника F и G, которые являются родительскими классами для класса S. В каких ситуациях у класса S будет существовать две версии метода М?

Универсальность и наследование – два тесно связанных механизма, обеспечивающие мощь ОО проектирования и программирования. Рассмотрим универсальный класс LIST[T] – список, тип элементов которого задается параметром T. Укажите, какие классы получены в результате родового порождения?

Пусть задан универсальный класс C[T] и одно из полей этого класса объявлено как x : T. Какие операции допустимы для сущности x?

Пусть программист определил классы Т1 и Т2. Какие заголовки классов с ограничением универсальности синтаксически корректны в Eiffel?

Пусть проектируется класс VECTOR[ELEMENT], задающий вектор, тип элементов которого задается параметром класса. Операции класса предполагают возможность выполнения арифметических операций как над элементами вектора, так и над векторами. Какие утверждения справедливы в этом случае?

Какие утверждения справедливы относительно принципа кастинга (приведения типа)?

Пусть p – сущность типа F. Динамическим кастингом или приведением типа называется конструкция (S) p, динамически изменяющая в период выполнения тип сущности на тип S. Какие утверждения справедливы относительно динамического кастинга?

Какие утверждения являются справедливыми относительно образца проектирования "Посетитель (Visitor)"?

Какие утверждения справедливы относительно реализации образца проектирования "Посетитель"?

Основная операция в ООП – это операция вызова x.M(…). Здесь x – это объект – цель вызова. Метод М задает операцию, применяемую к объекту x. Какие утверждения о методах и объектах являются справедливыми?

Пусть присваивание x := agent N корректно выполняется в программе на Eiffel . Какие операторы вызова заведомо не корректны?

Что можно делать с агентами?

В каких ситуациях при итерировании контейнерной структуры применим механизм агентов?

Механизм агентов с успехом применяется в ряде ситуаций. Какие утверждения справедливы? Можно ли при численном интегрировании заменить этот механизм?

У какого из трех классов PROCEDURE, FUNCTION, PREDICATE три родовых параметра?

При определении агента его операндами являются как аргументы метода, присоединяемого к агенту, так и цель вызова. Операнды агента могут быть как открытыми, так и закрытыми. Какие утверждения справедливы относительно операндов агента?

Что такое лямбда исчисление? Укажите корректные высказывания

Функции, аргументы которых функциями не являются, назовем функциями первого порядка. Функции, аргументы которых являются функциями, назовем функциями высшего порядка. Функциями порядка k назовем функции, у которых хотя бы один аргумент является функцией порядка k – 1, и у которых нет аргументов более высокого порядка. Какие утверждения справедливы?

Какие утверждения справедливы относительно лямбда определения функции:

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

Какие утверждения справедливы для связанных и свободных переменных выражения:

Имена в подвыражениях лямбда выражения могут конфликтовать. Какие утверждения справедливы относительно устранения возникающей некорректности записи выражения?

Зависимые переменные лямбда-выражений, также как и формальные параметры методов в программировании, могут быть переименованы без потери смысла. Операция, выполняющая такое преобразование в лямбда-выражениях, называется альфа – преобразованием. При выполнении этого преобразования зависимой переменной x можно дать:

Анонимный метод – это метод?

Проектирование, управляемое событиями, - это стиль, определяющий архитектуру проекта. Он широко применяется в тех случаях, когда программа взаимодействует с внешним миром, - в интерактивных приложениях, в программах, управляющих производственными процессами. Какие утверждения справедливы для этого стиля проектирования?

Управление событиями, можно рассматривать как некоторую структуру управления, получившую название "издатели – подписчики". Какие утверждения справедливы относительно этой структуры?

Как подписчики получают сообщение о событии?

Какие высказывания справедливы относительно регистрации подписки?

Пусть подписчик зарегистрировался на тип события "Click" командной кнопки. Пользователь в процессе работы "щелкнул" одну из командных кнопок, являющихся частью пользовательского интерфейса. Какие утверждения справедливы?

При проектировании ПО приходится учитывать два разных аспекта проектирования, - разделяя "модель" и "облик", "издателей" и "подписчиков". Какие утверждения справедливы относительно взаимодействия этих аспектов?

Одним из известных образцов проектирования является образец (pattern), называемый МОК (Модель – Облик – Контроллер) или MVC (Model – View – Controller). Согласно этому образцу:

Какие утверждения справедливы для образца проектирования "Наблюдатель" (паттерн Observer)?

Архитектура образца "Наблюдатель" включает проектирование класса Publisher (Издатель), который является родителем соответствующего семейства классов. Какие утверждения справедливы относительно этого класса?

Какие поля и методы имеет класс Subscriber?

Какие поля и методы имеет класс Publisher?

Какой из методов не входит в интерфейс класса EVENT_TYPE?

Где следует объявлять событие?

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

Жизненный цикл программного продукта включает несколько этапов. Одним из них является сопровождение. Какие виды деятельности характерны для этого этапа?

Инженерный подход к разработке программного продукта предполагает измерение количественных показателей, характеризующих как сам продукт, так и процесс разработки. Какой из показателей наиболее трудно измерить численно?

Говоря о качестве ПО, можно анализировать качество с разных точек зрения. Какое качество представляется не столь важным?

Какие факторы качества ПО относятся к факторам, характеризующим процесс разработки?

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

Какие утверждения относительно факторов качества ПО являются справедливыми?

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

Укажите правильную последовательность этапов в модели водопада:

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

Какой из этапов разработки, характерный для кластерной модели отсутствует в модели водопада?

Что справедливо для методологии Agile – гибкой разработки ПО?

Успешные системы строятся в интересах клиентов и должны соответствовать их требованиям. Какие утверждения справедливы? В результате анализа требований:

При создании документа требований какой прием не применяется при сборе требований?

Пусть z переменная и выполнено присваивание z := r. Что справедливо при вызове z.call([x, y])?

Какие утверждения справедливы для понятия "контекст события"?

При переопределении метода возможно и переопределение контракта. Как при переопределении контракта записывается новое постусловие, и каков его эффект?

Какие утверждения справедливы относительно реализации образца проектирования "Посетитель"?

При подписке на событие выполнялся следующий оператор: my_button.my_click.subscribe(agent my_method) Какие утверждения является корректными?

Пусть задан универсальный класс C[T] и одно из полей этого класса объявлено как x : T. Какие операции допустимы для сущности x?

Проектирование семейства классов начинается с создания класса – прародителя семейства. Как правило, такой класс является отложенным классом, называемым также абстрактным классом. Какой же класс называется отложенным?

Что позволяет карринг при его применении к функции N аргументов?

При проектировании ПО следует выделять как отдельные элементы "модель" ПО и "облик" ПО. Какие утверждения справедливы относительно понятия "модель"? Модель ПО – это:

При моделировании транспортной системы Traffic созданы объекты yellow_taxi класса TAXI и объект transport класса VEHICLE. Какие утверждения справедливы по отношению к этим объектам:

Образец "Наблюдатель" имеет серьезные недостатки. Поэтому в таких языках, как Eiffel, где есть такие средства как агенты и кортежи, можно использовать при работе с событиями другой образец, основанный на классе EVENT_TYPE. Какие утверждения справедливы для этого класса?

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

При проектировании важное значение играет скрытие информации. В чем ценность этого приема?

Пусть при повторном наследовании класс Р имеет метод М. Пусть у класса Р есть два наследника F и G, которые являются родительскими классами для класса S. В каких ситуациях у класса S будут существовать две версии метода М?

Пусть проектируется класс MATRIX[ELEMENT], задающий матрицу, тип элементов которой задается параметром класса. Операции класса предполагают возможность выполнения арифметических операций, как над элементами матрицы, так и над самими матрицами. Какие утверждения справедливы в этом случае?

Полиморфизм - одно из важнейших понятий, связанных с наследованием. Полиморфными могут быть:

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

Какие утверждения справедливы по отношению к понятию функция?

Какие утверждения справедливы относительно метода call в языке Eiffel?

Пусть наследник класса переопределил метод М родителя, задав например реализацию отложенного метода М. В контракте метода М у родителя задано предусловие Р, которое должно выполняться при вызове М. Какие утверждения справедливы относительно предусловия РР метода М в классе наследника?

Какие утверждения о проектировании системы классов, связанных отношением наследования, следует считать корректными:

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

Рассмотрим выражение: \lambda y : INTEGER | f (x, [\lambda x : INTEGER | x+y]) Какие утверждения справедливы?

Каждый создаваемый объект содержит поля, в которых хранятся значения атрибутов класса, задающие свойства объекта. В реализации языка Eiffel при создании объекта добавляются поля, содержащие дополнительную информацию. Эти поля содержат информацию, задающую:

Какие утверждения относительно экспорта компонентов класса справедливы в Eiffel?

В классе Р задан эффективный метод М с постусловием "Т > 10". Наследник этого класса Р1 переопределил этот метод, задав соответственно постусловие: ensure then "Т > 20". Класс Р2 - наследник Р1 в свою очередь переопределил этот метод, задав соответственно постусловие: ensure then "Т > 50". Класс Р3 - наследник Р2 в свою очередь переопределил этот метод, задав соответственно постусловие: ensure then "Т > 100". Клиенту требуется вызвать метод, обеспечивающий на выходе истинность условия: "T > 70". Методы каких классов могут гарантировать истинность выполнения этого условия?

Какие утверждения справедливы?

Одной из основных операций, применяемых к лямбда-выражениям, является операция, называемая бета-редукцией, позволяющая избавиться от связанных переменных выражения путем подстановки. Лямбда-выражение: [\lambda x : X | exp] (e) преобразуется в выражение exp [x := e] Какие утверждения справедливы для бета-редукции?

Какие свойства справедливы для образца проектирования?

В соответствии с классификацией DIAMO к какому этапу относится задание спецификаций программного продукта?

Для объектно-ориентированного стиля разработки ПО наиболее подходит модель:

Eiffel Studio позволяет отображать различные облики класса. Плоский облик класса отображает:

Трансформация и полиморфное присоединение – два механизма, поддерживающие семантику присваивания и аналогичную семантику замены формальных аргументов при вызове метода. Какие утверждения справедливы для этих механизмов?

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

Какие утверждения справедливы для отложенного класса и его объектов?

Что происходит с инвариантами класса при наследовании. Укажите корректные утверждения?

При переопределении метода возможно и переопределение контракта. Какие утверждения справедливы при переопределении контракта:

В родительском классе Р задан эффективный метод М с предусловием "Быть пушистым" and "Быть белым". Наследник этого класса Р1 переопределил этот метод, задав соответственно предусловие: require else "Быть белым". Наследник этого класса Р2 переопределил этот метод, задав соответственно предусловие: require else "Быть пушистым". Наследник этого класса Р3 переопределил этот метод, задав соответственно предусловие: require else "Быть натуральным". Объект, передаваемый на вход методу М, обладает свойствами "Быть пушистым" and "Быть натуральным" and "Быть белым". Каково число реализаций метода М, которые могут применяться для обработки этого объекта?

Какие утверждения относительно множественного наследования в Eiffel являются справедливыми?

Универсальность и наследование – два тесно связанных механизма, обеспечивающие мощь ОО проектирования и программирования. Рассмотрим универсальный класс LIST[T] – список, тип элементов которого задается параметром T. Укажите, какие классы могут быть связаны отношением наследования с классом LIST[T]?

Ограничение универсальности класса C[T] означает:

При проектировании класса VECTOR[ELEMENT-> NUMERIC] сам класс был объявлен наследником класса NUMERIC. Какие родовые порождения допустимы в этом случае?

Пусть p – сущность типа F. Динамическим кастингом или приведением типа называется конструкция (S) p, динамически изменяющая в период выполнения тип сущности на тип S. Динамический кастинг опасная операция. В языке Eiffel для безопасного применения динамического кастинга введена конструкция, называемая тестом объекта. Тест объекта – это булевское выражение следующего вида: attached (S) p as t. Выражение получает значение false, если тип объекта, присоединенного к p, не согласован с типом S. Выражение получает значение true, если сущность p присоединена к объекту, согласованному по типу с типом S. В этом случае в качестве побочного эффекта создается локальная переменная t типа S, к которой присоединяется соответствующий объект. Пусть тест объекта появляется как отрицание условия if оператора. Какие утверждения справедливы относительно области определения локальной переменной t?

Какие утверждения является корректными относительно применения механизма динамического связывания и образца проектирования "Посетитель"?

Когда выполняется присваивание x := agent r, то переменная x должна принадлежать специальному типу, часто называемому функциональным, поскольку объектами этого типа являются функции и процедуры. В Eiffel этот тип задается классом ROUTINE и тремя его потомками – классами PROCEDURE, FUNCTION, PREDICATE. Какой из этих классов обозначает запросы, возвращающие тип BOOLEAN?

Какой метод наследуют классы PROCEDURE, FUNCTION, PREDICATE от родительского класса ROUTINE?

Какие утверждения справедливы для лямбда-выражения?

Выражение exp1 может быть получено из выражения exp2 путем подстановки – заменой вхождений переменной x подвыражением e. Какие утверждения справедливы относительно подстановки?

Проектирование, управляемое событиями, - это стиль, определяющий архитектуру проекта. Он широко применяется в тех случаях, когда программа взаимодействует с внешним миром, - в интерактивных приложениях, в программах, управляющих производственными процессами. Какие утверждения справедливы для этого стиля проектирования?

Какие утверждения справедливы для понятия "сигнатура события"?

Какие высказывания справедливы для процесса регистрации подписки?

Каким отношением связаны классы Subscriber и Publisher?

Какие утверждения являются справедливыми относительно списка подписчиков для образца, связанного с классом EVENT_TYPE?

Разработка программного продукта, его появление на рынке и его использование приводит к тому, что многие люди в той или иной мере связаны с этим продуктом, становятся сопричастниками. Кого нельзя отнести к сопричастникам (stakeholder) программного продукта?

Обеспечение качества – одна из главных задач инженерии программ. Какие утверждения о качестве справедливы?

Какие факторы качества ПО относятся к внешним факторам?

Какой из факторов не относится к факторам, характеризующим процесс разработки?

Какие утверждения относительно факторов качества ПО являются справедливыми?

Создание большой новой программной системы следует начинать с этапа:

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

Документ требований к системе сам должен удовлетворять определенным требованиям. Стандарт IEEE "Рекомендуемая практика специфицирования требований ПО" задает эти требования. Укажите, какое из предлагаемых описаний не входит в этот стандарт?

Какие факторы процесса разработки оценивают качество механизмов, применяемых для создания ПО?

При описании жизненного цикла ПО используются модели:

Говорят, что наследник переопределяет родительский метод, если

При рассмотрении наследования используются такие термины как: потомок, наследник, правильный потомок, родитель, предок, правильный предок. Какие утверждения справедливы относительно этих терминов?

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

Пусть заданы классы P, F, M, S, D, где P – родитель классов F и M, класс F – родитель S, а M – родитель D. Пусть созданы объекты этих классов – op, of, om, os, od. Какие утверждения являются несправедливыми?

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

Из 15 сформулированных свойств хороших требований, какое из свойств не входит в этот список?

Что происходит, когда подписчик получает уведомление о событии

В соответствии с классификацией DIAMO на каких этапах выполняется проектирование программного продукта?

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

Организации, создающие ПО, могут быть сертифицированы. Одна из таких сертификаций, оценивающая уровень зрелости организации, - сертификация CMMI – предполагает 5 уровней зрелости. Для зрелой организации в процессе разработки требуется управлять рисками, начиная с уровня зрелости:

Какие утверждения о недостатках, характерных для образца "Наблюдатель", являются справедливыми?

Пусть присваивание x := agent N корректно выполняется в программе на Eiffel . Какие утверждения корректны относительно вызова x.call([y,z])?

Пусть заданы классы P и F – родители класса S, а M – метод с одним и тем же именем в классах P и F. Какие утверждения в этой ситуации являются справедливыми?

Определим сигнатуру композиции двух функций f ; g следующим образом: ";": [[X \to Y ] ? [Y \to Z ]] \to [X \to Z] Какие утверждения справедливы?

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

В чем особенность кластерной модели жизненного цикла?

Какие утверждения справедливы для понятия "контекст события"?

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

Для отображения отношений между классами Eiffel Studio позволяет построить диаграмму классов. Какие утверждения справедливы для этой диаграммы?

Переопределение наследником метода, заданного родителем, должно делаться явно с использованием специального ключевого слова: redefine. Какие утверждения справедливы по отношению к этому термину?

Каждый создаваемый объект содержит поля, в которых хранятся значения атрибутов класса, задающие свойства объекта. В языке Eiffel при создании объекта добавляются поля, содержащие дополнительную информацию. Каково число таких полей?

Что происходит с контрактами при наследовании. Укажите корректные утверждения?

Пусть наследник класса переопределил метод М родителя, задав например реализацию отложенного метода М. В контракте метода М у родителя задано постусловие Р, которое должно выполняться при вызове М. Какие утверждения справедливы относительно постусловия РР метода М в классе наследника?

При проектировании программной системы многие классы связываются отношением наследования. Какие утверждения справедливы для наследования?

Пусть p – сущность типа F. Динамическим кастингом или приведением типа называется конструкция (S) p, динамически изменяющая в период выполнения тип сущности на тип S. Динамический кастинг опасная операция. В языке Eiffel для безопасного применения динамического кастинга введена конструкция, называемая тестом объекта. Тест объекта – это булевское выражение следующего вида: attached (S) p as t. Выражение получает значение false, если тип объекта, присоединенного к p, не согласован с типом S. Выражение получает значение true, если сущность p присоединена к объекту, согласованному по типу с типом S. В этом случае в качестве побочного эффекта создается локальная переменная t типа S, к которой присоединяется соответствующий объект. Пусть тест объекта появляется как условие if оператора. Какие утверждения справедливы относительно области определения локальной переменной t?

При численном вычислении интегралов механизм агентов:

Композиция функций f и g – это специальная операция над функциями, которая обозначается как g \circ f или f; g. Какие утверждения справедливы по отношению к этой операции?

Какие утверждения являются справедливыми относительно связанных и свободных вхождений в выражения?

Под трансформацией лямбда-выражения будем понимать последовательное выполнение ряда операций, включающих альфа-преобразование и бета-редукцию. Пусть заданы две различные трансформации, преобразующие лямбда-выражение exp в выражения exp1 и exp2. Согласно теореме Черча – Россера:

Проектирование, управляемое событиями, - это стиль, определяющий архитектуру проекта. Он широко применяется в тех случаях, когда программа взаимодействует с внешним миром, - в интерактивных приложениях, в программах, управляющих производственными процессами. Какие утверждения справедливы для этого стиля проектирования?

При проектировании ПО следует выделять как отдельные элементы "модель" ПО и "облик" ПО. Какие утверждения справедливы?

При описании образца "Наблюдатель" могут применяться две схемы задания аргументов события. Первая предполагает, что аргументы задаются списком, содержащим элементы произвольного типа, заданного параметром ANY. Во второй схеме аргументы задаются в ориентации на конкретный вид сообщения. Какие утверждения справедливы относительно этих двух схем

Какие утверждения являются справедливыми относительно контроллера в модели МОК (MVC)?

В каких ситуациях следует применять методы инженерии программ?

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

Организации, создающие ПО, могут быть сертифицированы. Одна из таких сертификаций, оценивающая уровень зрелости организации, - сертификация CMMI – предполагает 5 уровней зрелости. Какие из приведенных уровней не входят в сертификацию CMMI?

Agile – это методология быстрой разработки ПО. Какие высказывания справедливы для этой методологии?

Архитектура образца "Наблюдатель" предполагает проектирование класса Subscriber (Подписчик), который является родителем соответствующего семейства классов. Какие утверждения справедливы относительно этого класса?

Какие утверждения являются корректными по отношению к образцу проектирования "Посетитель"?

Пусть в интерфейсе пользователя заданы 5 командных кнопок класса Button и три пункта меню класса Menu. Для всех этих элементов возможно событие Click. Сколько объектов, задающих событие Click, следует создать?

Архитектура образца "Наблюдатель" предполагает проектирование двух классов Publisher (Издатель) и Subscriber (Подпичик), которые являются родителями соответствующих семейств классов. Какие утверждения справедливы относительно этих классов?

В родительском классе Р задан эффективный метод М с предусловием "Быть пушистым" and "Быть белым". Наследник этого класса Р1 переопределил этот метод, задав соответственно предусловие: require else "Быть белым". Наследник этого класса Р2 переопределил этот метод, задав соответственно предусловие: require else "Быть пушистым".Наследник этого класса Р3 переопределил этот метод, задав соответственно предусловие: require else "Быть натуральным". Объект, передаваемый на вход методу М, обладает свойствами "Быть белым" and "Быть натуральным". Методы какого класса могут применяться для обработки этого объекта?

При описании математических структур – моноида, группы и кольца - Вы создали три класса, связав их отношением наследования. Укажите правильный порядок наследования, начиная с родительского класса?

Какая комбинация стратегий применяется в Eiffel?

Какие утверждения, связанные с образцом проектирования "Посетитель", являются справедливыми?

Когда механизм агентов применяется для обработки событий, то:

Механизм агентов с успехом применяется в ряде ситуаций. Какие утверждения справедливы? Можно ли при откатах заменить этот механизм?

Манифестный агент – это агент:

Управление событиями, можно рассматривать как некоторую структуру управления, получившую название "издатели – подписчики". Какие утверждения справедливы относительно этой структуры?

Какое утверждение несправедливо относительно понятия "событие"?

В соответствии с классификацией DIAMO инженерия программ включает несколько частей. Какие это части?

Какие факторы качества ПО относятся к долговременным факторам?

Какие утверждения справедливы относительно процесса сбора и отбора требований к системе?

Пусть дано лямбда-выражение: \lambda x : INTEGER | [\lambda y : INTEGER | x+y+z ] При выполнении альфа преобразования можно:

Для какой модели разработки ПО характерна практика парного программирования?

Какой из методов класса Publisher существует в нескольких вариантах?

Пусть в интерфейсе пользователя заданы 5 командных кнопок класса Button и три пункта меню класса Menu. Для всех этих элементов возможно событие Click. Сколько обработчиков события Click, следует создать в этой ситуации?

Ограничение универсальности класса C[T1, T2, …TK] означает

Связанные переменные лямбда-выражения это:

Когда выполняется присваивание x := agent r, то переменная x должна принадлежать специальному типу, часто называемому функциональным, поскольку объектами этого типа являются функции и процедуры. В Eiffel этот тип задается классом ROUTINE и тремя его потомками – классами PROCEDURE, FUNCTION, PREDICATE. Какой из этих классов задает агентов, связанных с командами?

При рассмотрении наследования используются такие термины как: потомок, наследник, правильный потомок, родитель, предок, правильный предок. Какие утверждения справедливы относительно этих терминов?

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

В классе Р задан эффективный метод М с постусловием "Т > 10". Наследник этого класса Р1 переопределил этот метод, задав соответственно постусловие: ensure then "Т > 20". Класс Р2 - наследник Р1 в свою очередь переопределил этот метод, задав соответственно постусловие: ensure then "Т > 50". Класс Р3 - наследник Р2 в свою очередь переопределил этот метод, задав соответственно постусловие: ensure then "Т > 100". Клиенту требуется вызвать метод, обеспечивающий на выходе истинность условия: "T > 15". Методы каких классов могут гарантировать истинность выполнения этого условия?

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

Одним из известных образцов проектирования является образец (pattern), называемый МОК (Модель – Облик – Контроллер) или MVC (Model – View – Controller). Согласно этому образцу:

Какие утверждения справедливы относительно класса EVENT_TYPE, задающего описание типа события?

Какие факторы можно не учитывать, когда речь идет об инженерии программ?

Какова главная цель инженерии программ?

Говоря о качестве программного продукта можно рассматривать как внешние факторы, так и внутренние факторы. Какие утверждения являются справедливыми?

При проектировании ПО приходится учитывать два разных аспекта проектирования, - разделять "модель" и "облик", "издателей" и "подписчиков". Какие утверждения справедливы относительно взаимодействия этих аспектов?

Какие высказывания справедливы для таких понятий как переопределение и переобъявление методов?

Контракты играют важную роль при проектировании. Какие утверждения справедливы для контрактов в процессе наследования?

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

Какие утверждения справедливы по отношению к записи agent N?

Механизм агентов с успехом применяется в ряде ситуаций. Какие утверждения справедливы? Можно ли при итерировании заменить этот механизм?

Полиморфизм - одно из важнейших понятий, связанных с наследованием. Какие высказывания справедливы для присваивания?