Ваш город
Москва
Ваш город Москва?
+7 928 117-10-37
Отдел продаж
Режим работы:
Пн-Сб 10:00—18:00;
Вс выходной
КАТАЛОГ ТОВАРОВ
0КорзинаПусто0 руб.
Товары в корзине
корзина пуста
КАТАЛОГ ТОВАРОВ
Корзина пуста0 руб.0
Товары в корзине
корзина пуста
Корзина пуста0 руб.0
Товары в корзине
корзина пуста

Swift. Основы разработки приложений под iOS, iPadOS и macOS. 5-е изд. дополненное и переработанное

Swift. Основы разработки приложений под iOS, iPadOS и macOS. 5-е изд. дополненное и переработанное
​Язык Swift молод, он растет, развивается и изменяется, хотя основные подходы к программированию и разработке уже сформировались. В новом, пятом издании книги была полностью переработана первая часть книги, что делает знакомство с языком Swift более комфортным, а весь текст актуализирован в соответствии с возможностями Swift 5...
Характеристики
Автор(ы):
Василий Усов
Издательство:
Питер
Год издания:
2020
Кол-во страниц:
496
Переплёт:
Мягкий
Смотреть все
Получение информации о методах доставки
Код: 18204
Нет в наличии
885
Количество:
Избранное
Сравнение
Описание

Язык Swift молод, он растет, развивается и изменяется, хотя основные подходы к программированию и разработке уже сформировались. В новом, пятом издании книги была полностью переработана первая часть книги, что делает знакомство с языком Swift более комфортным, а весь текст актуализирован в соответствии с возможностями Swift 5.

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

Характеристики
Автор(ы)
Василий Усов
Издательство
Питер
Серия
Библиотека программиста
Год издания
2020
ISBN
978-5-4461-1402-3
Возрастное ограничение
16+
Кол-во страниц
496
Формат страниц
60x90/16 (145x215 мм)
Язык
Русский
Переплёт
Мягкий
Доп. сведения
Офсетная бумага
Иллюстрации
черно-белые
Тираж
1000 экз.
Вес
495 г
Отзывы

Loading...
Оглавление

Читателю . 14

Введение . 16
О Swift 17
О книге . 18
О домашних заданиях . 20
Исправления в пятом издании . 21
Для кого написана книга 21
Что нужно знать, прежде чем начать читать 22
Структура книги . 23
Условные обозначения 24
От издательства . 24
Часть I. Подготовка к разработке Swift-приложений . . . 25
Глава 1. Подготовка к разработке в macOS . 26
1.1. Компьютер Mac . 26
1.2. Зарегистрируйтесь как Apple-разработчик 26
1.3. Установите Xcode 28
1.4. Введение в Хcode 29
1.5. Интерфейс playground-проекта 32
1.6. Возможности playground-проекта . 35
Глава 2. Подготовка к разработке в Linux 39
Глава 3. Подготовка к разработке в Windows . 43
Часть II. Базовые возможности Swift . . . . . . . . . . . . . . . . 45
Глава 4. Отправная точка . 46
4.1. Как компьютер работает с данными . 46
4.2. Базовые понятия . 50
4.3. Введение в операторы 52
4.4. Оператор инициализации 55
4.5. Переменные и константы . 55
4.5. Инициализация копированием 62
4.6. Правила именования переменных и констант 63
4.7. Возможности автодополнения и кодовые сниппеты 64
4.8. Глобальные и локальные объекты . 66
4.9. Комментарии 67
4.10. Точка с запятой 70
4.11. Отладочная консоль и функция print(_:) . 70
Глава 5. Фундаментальные типы данных . 77
5.1. Зачем нужны типы данных 77
5.2. Числовые типы данных . 80
5.3. Строковые типы данных . 94
5.4. Логический тип данных 102
5.5. Псевдонимы типов . 106
5.6. Дополнительные сведения о типах данных . 108
Часть III. Контейнерные типы данных . . . . . . . . . . . . . . 112
Глава 6. Кортежи (Tuple) . 113
6.1. Основные сведения о кортежах 113
6.2. Взаимодействие с элементами кортежа . . . . . . . . . . . . . . . . . . . . . . . . . 116
6.3. Сравнение кортежей 120
Глава 7. Последовательности и коллекции . 122
7.1. Классификация понятий 122
7.2. Последовательности (Sequence) 125
7.3. Коллекции (Collection) . 126
7.4. Работа с документацией 127
Глава 8. Диапазоны (Range) . 132
8.1. Оператор полуоткрытого диапазона 132
8.2. Оператор закрытого диапазона 135
8.3. Базовые свойства и методы . 137
Глава 9. Массивы (Array) 139
9.1. Введение в массивы 139
9.2. Тип данных массива . 144
9.3. Массив — это value type 145
9.4. Пустой массив 146
9.5. Операции с массивами 147
9.6. Многомерные массивы 148
9.7. Базовые свойства и методы массивов 149
9.8. Срезы массивов (ArraySlice) . 153
Глава 10. Наборы (Set) 155
10.1. Введение в наборы 155
10.2. Пустой набор 157
10.3. Базовые свойства и методы наборов 158
Глава 11. Словари (Dictionary) . 164
11.1. Введение в словари 164
11.2. Тип данных словаря . 167
11.3. Взаимодействие с элементами словаря . 169
11.4. Пустой словарь 170
11.5. Базовые свойства и методы словарей 171
11.6. О вложенных типах данных 172
Глава 12. Строка — коллекция символов (String) . 174
12.1. Character в составе String . 174
12.2. Графем-кластеры . 175
12.3. Строковые индексы . 178
12.4. Подстроки (Substring) 181
Часть IV. Основные возможности Swift . . . . . . . . . . . . . . 183
Глава 13. Операторы управления 184
13.1. Утверждения . 185
13.2. Оператор условия if . 187
13.3. Оператор ветвления switch . 198
13.4. Операторы повторения while и repeat while 208
13.5. Оператор повторения for 211
13.6. Оператор досрочного выхода guard 223
Глава 14. Опциональные типы данных 224
14.1. Введение в опционалы 224
14.2. Извлечение опционального значения 229
14.3. Проверка наличия значения в опционале 232
14.4. Опциональное связывание 233
14.5. Опциональное связывание как часть оптимизации кода 235
14.6. Оператор объединения с nil 238
Глава 15. Функции 240
15.1. Введение в функции 240
15.2. Входные аргументы и возвращаемое значение . 244
15.3. Функциональный тип . 251
15.4. Функция в качестве входного и возвращаемого значений . 253
15.5. Возможности функций . 257
Глава 16. Замыкания (closure) 261
16.1. Виды замыканий . 261
16.2. Введение в безымянные функции . 262
16.3. Возможности замыканий . 266
16.4. Безымянные функции в параметрах 268
16.5. Пример использования замыканий при сортировке массива 269
16.6. Захват переменных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
16.7. Замыкания передаются по ссылке 273
16.8. Автозамыкания 274
16.9. Выходящие замыкания . 277
16.10. Каррирование функций . 278
Глава 17. Дополнительные возможности . 281
17.1. Метод map(_:) 281
17.2. Метод mapValues(_:) 284
17.3. Метод filter(_:) . 284
17.4. Метод reduce(_:_:) 285
17.5. Метод flatMap(_:) . 286
17.6. Метод zip(_:_:) . 287
17.7. Оператор guard для опционалов 288
Глава 18. Ленивые вычисления . 290
18.1. Понятие ленивых вычислений . 290
18.2. Замыкания в ленивых вычислениях 291
18.3. Свойство lazy 291
Часть V. Введение в разработку приложений . . . . . . . . . 293
Глава 19. Консольное приложение «Сумма двух чисел» 294
19.1. Обзор интерфейса Xcode . 294
19.2. Подготовка к разработке приложения . 301
19.3. Запуск приложения . 303
19.4. Код приложения «Сумма двух чисел» 305
Глава 20. Консольная игра «Отгадай число» . 309
20.1. Код приложения «Угадай число» 310
20.2. Устраняем ошибки приложения 311
Часть VI. Нетривиальные возможности Swift . . . . . . . . . 314
Глава 21. Введение в объектно-ориентированное
программирование . 316
21.1. Экземпляры 316
21.2. Пространства имен . 319
21.3. API Design Guidelines 320
Глава 22. Перечисления . 322
22.1. Синтаксис перечислений . 322
22.2. Ассоциированные параметры . 325
22.3. Вложенные перечисления 326
22.4. Оператор switch для перечислений 327
22.5. Связанные значения членов перечисления . 328
22.6. Инициализатор 330
22.7. Свойства в перечислениях . 331
22.8. Методы в перечислениях . 332
22.9. Оператор self . 333
22.10. Рекурсивные перечисления 334
Глава 23. Структуры . 338
23.1. Синтаксис объявления структур . 338
23.2. Свойства в структурах 339
23.3. Структура как пространство имен 341
23.4. Собственные инициализаторы . 342
23.5. Методы в структурах . 343
Глава 24. Классы . 345
24.1. Синтаксис классов 346
23.2. Свойства классов 346
24.3. Методы классов . 349
24.4. Инициализаторы классов 350
24.5. Вложенные в класс типы 351
Глава 25. Свойства 353
25.1. Типы свойств 353
25.2. Контроль значений свойств 357
25.3. Свойства типа 361
Глава 26. Сабскрипты . 364
26.1. Назначение сабскриптов 364
26.2. Синтаксис сабскриптов 365
Глава 27. Наследование . 370
27.1. Синтаксис наследования 370
27.2. Переопределение наследуемых элементов 372
27.3. Превентивный модификатор final . 376
27.4. Подмена экземпляров классов . 376
27.5. Приведение типов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Глава 28. Псевдонимы Any и AnyObject . 379
28.1. Псевдоним Any 379
28.2. Псевдоним AnyObject . 381
Глава 29. Инициализаторы и деинициализаторы . 382
29.1. Инициализаторы . 382
29.2. Деинициализаторы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Глава 30. Удаление экземпляров и ARC . 391
30.1. Уничтожение экземпляров 391
30.2. Утечки памяти 393
30.3. Автоматический подсчет ссылок . 396
Глава 31. Опциональные цепочки . 399
31.1. Доступ к свойствам через опциональные цепочки 399
31.2. Установка значений через опциональные цепочки . 402
31.3. Доступ к методам через опциональные цепочки 402
Глава 32. Расширения 404
32.1. Вычисляемые свойства в расширениях 405
32.2. Инициализаторы в расширениях 405
32.3. Методы в расширениях 407
32.4. Сабскрипты в расширениях 408
Глава 33. Протоколы 409
33.1. Требуемые свойства . 410
33.2. Требуемые методы 411
33.3. Требуемые инициализаторы . 412
33.4. Протокол в качестве типа данных . 413
33.5. Расширение и протоколы . 413
33.6. Наследование протоколов . 414
33.7. Классовые протоколы . 415
33.8. Композиция протоколов 415
Глава 34. Разработка приложения в Xcode Playground 417
34.1. Модули . 417
34.2. Разграничение доступа . 418
34.3. Разработка интерактивного приложения . 422
Глава 35. Универсальные шаблоны . 436
35.1. Универсальные функции . 436
35.2. Универсальные типы . 438
35.3. Ограничения типа 440
35.4. Расширения универсального типа 441
35.5. Связанные типы 442
Глава 36. Обработка ошибок . 444
36.1. Выбрасывание ошибок 444
36.2. Обработка ошибок 445
36.3. Отложенные действия по очистке 450
Глава 37. Нетривиальное использование операторов . 451
37.1. Операторные функции . 451
37.2. Пользовательские операторы . 454
Часть VII. Введение в мобильную разработку . . . . . . . . 455
Глава 38. Разработка приложения под iOS 456
38.1. Создание проекта MyName . 456
38.2. Interface Builder, Storyboard и View Controller . 458
38.3. Разработка простейшего UI 465
38.4. Запуск приложения в эмуляторе . 467
38.5. View Controller сцены и класс UIViewController 470
38.6. Доступ UI к коду. Определитель типа @IBAction . 472
38.7. Отображение всплывающего окна. Класс UIAlertController 475
38.8. Изменение атрибутов кнопки . 481
38.9. Доступ кода к UI. Определитель типа @IBOutlet . 485
Глава 39. Паттерны проектирования при разработке
в Xcode 490
39.1. Паттерн MVC. Фреймворк Cocoa Touch . 490
39.2. Паттерн Singleton. Класс UIApplication 492
39.3. Паттерн Delegation. Класс UIApplicationDelegate 493
Заключение . 495

Помощь
+7 928 117-10-37
Отдел продаж
Если у вас возникли вопросы при оформлении заказа, обратитесь по указанным контактам.
Мы используем файлы cookie, чтобы сайт был лучше для вас.