Head First. Изучаем Swift [Джон Мэннинг] (pdf) читать постранично, страница - 4

Книга в формате pdf! Изображения и текст могут не отображаться!


 [Настройки текста]  [Cбросить фильтры]

называются поддерживающими этот протокол. Расширения позволяют легко добавлять
новую функциональность в существующие типы.
Фабрика роботов

238

Наследование протоколов

243

Изменяющие методы

245

Протоколы как типы и коллекции

248

Вычисляемые свойства в расширениях

252

Расширение протокола

256

Полезные протоколы и вы

257

Поддержка протоколов Swift

260

Может, мы и не протокольные
роботы, но мы узнаем хороший
протокол, когда увидим его!

15

содержание

9

Опциональные типы, распаковка, обобщение и другое
Неизбежные опциональные типы
Обработка несуществующих данных может быть весьма непростым делом.
К счастью, в Swift для этого существует решение: опциональные типы. В Swift
опциональный тип позволяет работать со значением или выполнить действия
при отсутствии значения. Это одно из многих проявлений безопасности при
проектировании Swift. Ранее вы уже встречались с опциональными типами в
коде, а теперь мы изучим их более подробно. Опциональные типы улучшают
безопасность Swift, потому что с ними снижается риск написания кода, который
перестает работать при отсутствии данных, или возврата значения, которое
в действительности значением не является.

16

Обработка отсутствующего значения

269

Для чего могут понадобиться опциональные типы

270

Опциональные типы и обработка отсутствующих данных

273

Распаковка опциональных типов

274

Распаковка опциональных типов с ключевым
словом guard

277

Принудительная распаковка

278

Обобщения

288

Очередь с обобщениями

289

Новый тип Queue

290

содержание

10

Знакомство со Swif tUI
Пользовательские интерфейсы
Пришло время применить на практике все приемы, возможности и компоненты Swift, о которых вы узнали в книге: мы займемся построением
пользовательских интерфейсов. В этой главе мы сведем все воедино для
построения первого настоящего пользовательского интерфейса. Он будет
строиться на основе SwiftUI, UI-фреймворка для платформ Apple. Мы
по-прежнему будем использовать Playgrounds (по крайней мере на первом
этапе), но все, что здесь будет делаться, заложит фундамент для реальных
приложений iOS. Приготовьтесь: в этой главе будет много кода и новых
концепций. Вдохните поглубже и переверните страницу, чтобы с головой
погрузиться в SwiftUI.

У вас будет время выпить,
но только после того, как вы
освоите SwiftUI...

Coffee: 5
Cocktail: 3
Tea: 2

А что это вообще такое — UI-фреймворк?

294

Ваш первый пользовательский интерфейс SwiftUI UI

296

Строительные блоки пользовательских интерфейсов

300

Создаем список (и неоднократно возвращаемся к нему,
чтобы довести до совершенства)

301

Пользовательские интерфейсы с состоянием

303

Как работают кнопки

304

Давайте посмотрим, насколько далеко мы зашли

307

ЗАДАЧА: Написать приложение на базе SwiftUI

311

Создание в Xcode нового проекта SwiftUI для iOS

312

Ваша среда Xcode должна выглядеть примерно так

314

Создание нового типа для хранения элемента списка задач

315

Однозначная идентификация каждого элемента
списка задач

318

Создание пользовательского интерфейса приложения

319

Запустите приложение и посмотрите, что произойдет...

325

Реализация сохранения списка задач

326

Значит, это и есть UI-фреймворк?

330

17

содержание

11

Практическое применение Swif tUI
Круги, таймеры, кнопки — выбирайте!
SwiftUI вовсе не ограничивается кнопками и списками. В интерфейсах также
можно использовать геометрические фигуры, анимации и многое другое! В этой
главе будут рассмотрены некоторые расширенные возможности построения
пользовательских интерфейсов в SwiftUI и их связывания с источниками данных, содержимое которых не генерируется пользователем (как в случае со списком
задач). SwiftUI позволяет строить пользовательские интерфейсы с обработкой
событий, поступающих из разных источников. Мы будем работать в Xcode, среде
разработки от компании Apple, а основное внимание будет уделяться приложениям
для iOS, но все, что вы узнаете в этой главе, в равной степени применимо к SwiftUI
для iPadOS, macOS, watchOS и tvOS. Вперед, глубины SwiftUI ожидают вас!

ный круг!
Создайте свой собствен

18

Что интересного можно сделать с UI-фреймворком?

338

Создание нового проекта SwiftUI для iOS

341

Пользовательский интерфейс
и функциональность Executive Timer

343

Создание основных элементов приложения

344

Составляющие пользовательского интерфейса

345

Настройка пользовательского интерфейса приложения

346

Программирование составляющих
пользовательского интерфейса

347

Объединение трех элементов

350

Завершающие штрихи

352

Запустите приложение и посмотрите, что произойдет...

353

Представления с