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

Swift. Основы разработки приложений под iOS и macOS. 4-е изд. дополненное и переработанное
sku: 136187036
ACCORDING TO OUR RECORDS THIS PRODUCT IS NOT AVAILABLE NOW
529.00 грн.
Shipping from: Ukraine
   Description
[html]Язык Swift молод, он растет, развивается и изменяется. Но основные подходы к программированию и разработке уже сформировались, и в новом, четвертом издании книги особое внимание уделяется решению конкретных задач.Текст книги "Swift. Основы разработки приложений под iOS и macOS" полностью переработан так, чтобы любой, интересующийся языком Swift, мог найти здесь и основы, и необходимую информацию по разработке приложений. Все коды, использованные в книге соответствуют Swift версии не ниже 4.1, iOS версии не ниже 11 и Xcode версии не ниже 9. Теперь вы не только изучите язык Swift, но и получите начальные сведения о принципах разработки полноценных приложений.Мир Swift постоянно меняется, людей со значительным багажом знаний и опыта за плечами еще просто не существует в силу возраста языка, поэтому вы можете стать одним из первых специалистов.Оглавление книги "Swift. Основы разработки приложений под iOS и macOS" Введение . 12О Swift 13О книге . 14Исправления в четвертом издании . 16Для кого написана книга 16Что нужно знать, прежде чем начать читать 17Структура книги . 18Условные обозначения 19От издательства . 19Часть I. Подготовка к разработке Swift-приложений . . . . 20Глава 1. Подготовка к разработке в macOS . 211.1. Вам необходим компьютер Mac . 211.2. Зарегистрируйтесь как Apple-разработчик 211.3. Установите Xcode 231.4. Введение в Хcode 241.5. Интерфейс playground-проекта 281.6. Возможности playground-проекта . 30Глава 2. Подготовка к разработке в Linux 34Глава 3. Подготовка к разработке в Windows . 38Часть II. Базовые возможности Swift . . . . . . . . . . . . . . . . . 40Глава 4. Отправная точка . 414.1. Инициализация и изменение значения . 424.2. Переменные и константы . 444.3. Правила объявления переменных и констант . 474.4. Глобальные и локальные объекты . 484.5. Вывод текстовой информации . 504.6. Комментарии 524.7. Точка с запятой 565. Типы данных и операции с ними . 575.1. Виды определения типа данных 575.2. Числовые типы данных . 605.3. Текстовые типы данных 745.4. Логические значения . 815.5. Псевдонимы типов . 845.6. Операторы сравнения 865.7. Операторы диапазона 87Часть III. Основные средства Swift . . . . . . . . . . . . . . . . . . . 88Глава 6. Кортежи 896.1. Основные сведения о кортежах 896.2. Взаимодействие с элементами кортежа . . . . . . . . . . . . . . . . . . . . . . . . . . 91Глава 7. Опциональные типы данных . 987.1. Опционалы 987.2. Извлечение опционального значения 100Глава 8. Операторы условий 1038.1. Утверждения . 1038.2. Оператор условия if 1058.3. Оператор раннего выхода guard . 1178.4. Оператор ветвления switch 117Глава 9. Последовательности и коллекции . 1289.1. Последовательности 1289.2. Коллекции . 1299.3. Массивы . 1299.4. Наборы 1429.5. Словари 150Глава 10. Циклы 15810.1. Оператор повторения for 15810.2. Операторы повторения while и repeat while 16310.3. Управление циклами . 165Глава 11. Функции 16911.1. Объявление функций 16911.2. Аргументы функции и возвращаемое значение . 17211.3. Возможности функций . 18111.4. Безымянные функции . 187Глава 12. Замыкания 18912.1. Функции как замыкания 18912.2. Замыкающие выражения . 19212.3. Неявное возвращение значения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19312.4. Сокращенные имена параметров . 19412.5. Переменные-замыкания . 19512.6. Метод сортировки массивов . 19712.7. Каррирование функций 19812.8. Захват переменных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20012.9. Замыкания — это тип-ссылка . 20212.10. Автозамыкания . 20311.12. Выходящие замыкания . 206Глава 13. Вспомогательные функциональные элементы 20813.1 Метод map(_:) . 20813.2. Метод mapValues(_:) 21113.3. Метод filter(_:) . 21113.4. Метод reduce(_:_:) 21213.5. Метод flatMap(_:) . 21313.6. Метод zip(_:_:) . 214Глава 14. Ленивые вычисления . 21514.1. Понятие ленивых вычислений . 21514.2. Замыкания в ленивых вычислениях 21614.3. Свойство lazy 217Часть IV. Нетривиальные возможности Swift . . . . . . . . . . 218Глава 15. ООП как фундамент . 22015.1. Экземпляры 22015.2. Пространства имен . 22215.3. API Design Guidelines 223Глава 16. Перечисления . 22516.1. Синтаксис перечислений . 22516.2. Ассоциированные параметры . 22816.3. Вложенные перечисления 23016.4. Оператор switch для перечислений 23116.5. Связанные значения членов перечисления . 23216.6. Свойства в перечислениях . 23416.7. Методы в перечислениях . 23616.8. Оператор self . 23616.9. Рекурсивные перечисления 237Глава 17. Структуры . 24117.1. Синтаксис объявления структур . 24117.2. Свойства в структурах 24217.3. Структура как пространство имен 24417.4. Собственные инициализаторы . 24517.5. Методы в структурах . 247Глава 18. Классы . 24918.1. Синтаксис классов 25018.2. Свойства классов 25018.3. Методы классов . 25318.4. Инициализаторы классов 25418.5. Вложенные типы . 255Глава 19. Свойства 25719.1. Типы свойств 25719.2. Контроль получения и установки значений 26019.3. Свойства типа 264Глава 20. Сабскрипты . 26620.1. Назначение сабскриптов 26620.2. Синтаксис сабскриптов 267Глава 21. Наследование . 27221.1. Синтаксис наследования 27221.2. Переопределение наследуемых элементов 27421.3. Превентивный модификатор final . 27721.4. Подмена экземпляров классов . 27821.5. Приведение типов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278Глава 22. Псевдонимы Any и AnyObject . 28122.1. Псевдоним Any 28122.2. Псевдоним AnyObject . 283Глава 23. Инициализаторы и деинициализаторы . 28423.1. Инициализаторы . 28423.2. Деинициализаторы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291Глава 24. Удаление экземпляров и ARC . 29324.1. Уничтожение экземпляров 29324.2. Утечки памяти 29524.3. Автоматический подсчет ссылок . 298Глава 25. Опциональные цепочки . 30125.1. Доступ к свойствам через опциональные цепочки 30125.2. Установка значений через опциональные цепочки . 30325.3. Доступ к методам через опциональные цепочки 304Глава 26. Расширения 30526.1. Вычисляемые свойства в расширениях 30626.2. Инициализаторы в расширениях 30726.3. Методы в расширениях 30826.4. Сабскрипты в расширениях 309Глава 27. Протоколы 31027.1. Требуемые свойства . 31127.2. Требуемые методы 31227.3. Требуемые инициализаторы . 31327.4. Протокол в качестве типа данных . 31427.5. Расширение и протоколы . 31427.6. Наследование протоколов . 31527.7. Классовые протоколы . 31627.8. Композиция протоколов 316Глава 28. Разработка первого приложения 31828.1. Важность работы с документацией . 31828.2. Модули . 32528.3. Разграничение доступа . 32928.4. Разработка интерактивного приложения . 332Глава 29. Универсальные шаблоны . 34629.1. Универсальные функции . 34629.2. Универсальные типы . 34829.3. Ограничения типа 35029.4. Расширения универсального типа 35129.5. Связанные типы 351Глава 30. Обработка ошибок . 35430.1. Выбрасывание ошибок 35430.2. Обработка ошибок 35530.3. Отложенные действия по очистке 360Глава 31. Нетривиальное использование операторов . 36131.1. Операторные функции . 36131.2. Пользовательские операторы . 364Часть V. Основы разработки приложений . . . . . . . . . . . . . 365Глава 32. Новое знакомство с Xcode 36632.1. Создание Xcode-проекта 36632.2. Интерфейс Xcode-проекта . 370Глава 33. Первое приложение для macOS 37433.1. Подготовка к разработке приложения . 37433.2. Запуск приложения . 37833.3. Код приложения «Сумма двух чисел» 382Глава 34. Консольная игра «Отгадай число» . 388Глава 35. Введение в мобильную разработку . 39535.1. Создание проекта MyName . 39535.2. Interface Builder, Storyboard и View Controller . 39735.3. Разработка простейшего UI 40435.4. Запуск приложения в эмуляторе . 40635.5. View Controller сцены и класс UIViewController 40935.6. Доступ UI к коду. Определитель типа @IBAction . 41235.7. Отображение всплывающего окна. Класс UIAlertController 41435.8. Изменение атрибутов кнопки . 42135.9. Доступ кода к UI. Определитель типа @IBOutlet . 425Глава 36. Паттерны проектирования при разработке в Xcode 43236.1. Паттерн MVC. Фреймворк Cocoa Touch . 43236.2. Паттерн Singleton. Класс UIApplication 43436.3. Паттерн Delegation. Класс UIApplicationDelegate 435Заключение . 437Приложение. Изменения и нововведения Swift 4 . 438Ассистент миграции 438Строки 438Тип String 438Тип Substring 439Адаптация под Unicode 9 . 439Наборы и словари . 439Инициализация на основе последовательностей 440Обработка дубликатов ключей 440Фильтрация 440Маппинг словарей 441Значение по умолчанию для элемента словаря 441Группировка элементов словаря 441Протокол Codable . 442Многострочные строковые литералы 443Keypath — ссылка на свойство . 443Односторонние диапазоны 444[/html]
   Price history chart & currency exchange rate

Customers also viewed