Всякий раз, когда вы работаете с данными, тип играет решающую роль. Например, если функция возвращает Int, вы знаете, что можете использовать его значение в математическом выражении. Но что если информация о типе недостаточно конкретна, и вам нужно более внимательно изучить данные, чтобы определить, как их использовать?
![Урок 3.3 Приведение и Проверка типов](https://devinswift.ru/images/2024/07/17/DALL·E_2024_07_17_18_06_12_A_clean_2_1_horizontal_image_in_pencil.jpg)
![Урок 3.5 Область видимости Констант и Переменных](https://devinswift.ru/images/2024/07/18/DALL·E_2024_07_18_03_04_45_A_2_1_horizontal_image_in_photorealism.jpg)
Когда вы пишете более крупные и сложные программы, вам нужно будет обращать внимание на то, где вы объявляете свои константы и переменные. Каково оптимальное размещение в вашем коде? Если вы объявите переменную var вверху, вы можете обнаружить, что ваш код сложнее читать и гораздо сложнее отлаживать.
![Урок 3.6 Перечисления](https://devinswift.ru/images/2024/07/18/DALL·E 2024-07-18 19.49.442.jpg)
Как программист, вы будете работать со многими ситуациями, которые требуют от вас присвоения значений из ограниченного числа параметров. Представьте, что вы пишете программу, которая позволяет пассажирам выбирать место из трех вариантов: у окна, посередине и у прохода. В Swift вы бы сделали это с помощью перечисления.
![Урок 3.7 Переходы и навигационные контроллеры](https://devinswift.ru/images/2024/07/18/DALL·E 2024-07-18 23.57.42.jpg)
Вы уже узнали, что контроллеры просмотра управляют различными сценами в приложении. Но по мере усложнения ваших приложений вы обнаружите, что для отображения информации вам нужны разные сцены, использующие разные контроллеры представления. Вам также потребуется переходить между различными сценами, чтобы пользователь мог перемещаться по приложению.
![Урок 3.8 Контроллеры панели вкладок](https://devinswift.ru/images/2024/07/18/pixelcut-export-2.jpeg)
На последнем уроке вы узнали, как переходить от одного контроллера представления к другому. Но по мере добавления функций в приложение вы можете понять, что детализация вверх и вниз с помощью навигационного контроллера просто не сокращает его. Возможно, пришло время выровнять иерархию вашего контроллера представления.
![Гайд по проекту: Личностный тест](https://devinswift.ru/images/2024/07/20/DALL·E 2024-07-20 19.56.05 - A realistic illustration on the theme Guided Project_ Personality Quiz. The primary color is dark blue with a white background and tetradic color sc.jpg)
В этом разделе вы узнали о механизмах, предоставляемых платформой UIKit для управления потоком вашего приложения. Ранее вы узнали, как управлять положением и размером видов и элементов управления с помощью автоматической компоновки и стековых видов. Теперь вы объедините эти знания для создания приложения.