Skip to content

Latest commit

 

History

History
46 lines (32 loc) · 2.52 KB

README.md

File metadata and controls

46 lines (32 loc) · 2.52 KB

Контрольная работа

Вариант 1:

Теоретическая часть

  1. Что такое UIView? Опишите своими словами.
  2. Как сделать так, чтобы по нажатию на кнопку, вызывался метод в классе? Опишите все способы, которые знаете.
  3. Опишите плюсы и минусы использования UIStoryboardSegue.
  4. Что такое Auto Layout? Опишите своими словами.
  5. Опишите паттерн "Наблюдатель", можно своими словами. Приведите пример, где это используется в iOS.

Практическая часть

Создайте калькулятор.

  • Сверху должен быть UILabel, который является "дисплеем" калькулятора
  • Под ним находится 15 кнопок: 0-9, +, -, *, /, =
  • Можно условиться, что всегда вводится сначала число, потом команда, потом число, потом знак равно.

Пример расположения кнопок:

1 2 3 +
4 5 6 -
7 8 9 *
  0 = /

Вариант 2:

Теоретическая часть

  1. Что такое UIViewController? Опишите своими словами.
  2. Что такое frame? Чем отличается от bounds?
  3. Каким способом можно заставить один UIViewController отобразить другой без использования UIStoryboardSegue?
  4. Какие нужно использовать средства для того, чтобы наш кастомный UIView работал с Auto Layout без использования в реализации NSLayoutConstraint?
  5. Опишите паттерн "Делегат", можно своими словами. Приведите пример, где это используется в iOS.

Практическая часть

Создайте кастомный экран со списком покупок. Список должен состоять из:

  • Заголовок
  • Каждая строка — UITextField, справа от которого кнопка "Удалить", которая удаляет эту строку
  • Под списком — кнопка "Добавить", которая добавляет новую строку в конец списка.