Читать книгу iOS. Приемы программирования - Вандад Нахавандипур - Страница 4

Предисловие
Как построено издание

Оглавление

В этой книге мы рассмотрим фреймворки и классы, доступные в SDK для iOS 7. Я приложил все возможные усилия, чтобы на ее страницах научить вас работе с новейшими и самыми классными API iOS. Разумеется, некоторые пользователи ваших приложений могут работать и с более старыми версиями iOS. Пожалуйста, не забывайте об этих пользователях и выбирайте API рационально, с учетом минимальной версии iOS, на работу с которой рассчитано ваше приложение.

Apple рекомендует писать приложения таким образом, чтобы они поддерживались и работали в версиях iOS 6 и 7. Таким образом, в качестве базового SDK вы должны применять последнюю версию этого инструментария (имеется в виду SDK, на базе которого будет компилироваться ваше приложение) и выбирать в качестве целевой платформы iOS 6 (если это не противоречит поставленным перед вами бизнес-требованиям). Если от вас требуется написать такое приложение, которое должно поддерживаться только в iOS 7, вас ждет масса интересного. Ведь вы будете работать с превосходными API, появившимися только в iOS 7 и рассмотренными в этой книге.

Рассмотрим краткое содержание материала.

• Глава 1. Реализация контроллеров и видов. В этой главе объясняется структура классов в Objective-C и рассматриваются способы реализации объектов. Здесь мы поговорим о свойствах и делегатах, а также о подписке по ключам и индексам. Даже если вы хорошо разбираетесь в Objective-C, настоятельно рекомендую вам изучить данную главу, пусть даже бегло. Это нужно, чтобы понять базовый материал, на котором построены остальные главы. В этой главе мы также рассмотрим типичные способы обращения с различными элементами пользовательского интерфейса – видами-предупреждениями, сегментированными элементами управления, переключателями и надписями. Также поговорим о настройке этих компонентов с применением новейших API, имеющихся в SDK.

• Глава 2. Создание динамических и интерактивных пользовательских интерфейсов. Глава рассказывает о UIKit Dynamics – новейшем дополнении, появившемся во фреймворке UIKit. Эти динамические компоненты позволяют обогащать компоненты вашего пользовательского интерфейса реалистичной физикой и динамикой. Интерфейсы получатся еще более живыми, причем с меньшими усилиями с вашей стороны.

• Глава 3. Автоматическая компоновка и язык визуального форматирования. В этой главе вы узнаете, как пользоваться возможностью автоматической компоновки в iOS SDK и создавать пользовательские интерфейсы таким образом, чтобы их можно было гибко масштабировать (сжимать и растягивать) на экране практически в любом направлении.

• Глава 4. Создание и использование табличных видов. В этой главе рассказано, как работать с табличными видами, чтобы создавать приложения iOS, производящие впечатление профессионально выполненной работы. По природе табличные виды очень динамичны, поэтому программисту иногда бывает сложно понять, как с ними работать. Прочитав эту главу, изучив и опробовав на практике код из приведенных примеров, вы научитесь удобным приемам работы с табличными видами.

• Глава 5. Выстраивание сложных макетов с помощью сборных видов. Виды-коллекции уже довольно давно вошли в арсенал программистов, работающих с OS X. Теперь Apple решила включить те же самые API в iOS SDK, предоставив их, таким образом, iOS-программистам. Виды-коллекции во многом напоминают табличные виды, но отличаются значительно более широкими возможностями конфигурирования и динамичностью. Если в табличных видах мы имеем дело с концепцией разделов, каждый из которых делится на строки, в видах-коллекциях появляются также столбцы. Поэтому в виде-коллекции вы при желании можете отображать много элементов в одной строке. В этой главе мы рассмотрим все великолепные пользовательские интерфейсы, которые можно создавать с применением видов-коллекций.

• Глава 6. Раскадровки. Здесь мы поговорим о процессе раскадровки. Это новый способ определения связей между различными экранами (видами), задействованными в приложении. Самая приятная особенность раскадровки заключается в том, что вам совсем не обязательно вообще что-то знать о программировании для iOS, чтобы написать и запустить простое приложение. Это свойство очень помогает специалистам, работающим вне команды, – аналитикам, владельцам продукта или дизайнерам, – а также команде разработчиков познакомиться со свойствами, которыми обладают компоненты пользовательского интерфейса в iOS, и, имея такие знания, создавать более надежные продукты. Кроме того, преимущества, которые дает раскадровка, облегчают работу программиста на этапе прототипирования. Раскадровка – это просто интересное дело, независимо от того, занимаетесь ли вы ею на бумаге или с помощью Xcode.

• Глава 7. Параллелизм. Человек умеет делать одновременно несколько вещей, причем особенно не задумываясь о том, как это происходит. С развитием информационных технологий мобильные устройства также становятся многозадачными. Разработчику, пишущему программы для таких устройств, предоставляются инструменты и механизмы, которые позволяют выполнять несколько задач в определенный момент времени. Этот феномен называется параллелизмом или конкурентным программированием. В главе 5 вы узнаете о технологии Grand Central Dispatch, с помощью которой Apple в основном обеспечивает параллелизм в iOS. В этой главе мы поговорим также о таймерах, потоках и операциях.

• Глава 8.Безопасность. iOS 7 – весьма безопасная операционная система. Приложения, которые мы для нее пишем, также должны соответствовать определенным стандартам и практикам обеспечения безопасности. В этой главе будет рассмотрено, как пользоваться преимуществами различных API связки ключей и повысить безопасность ваших приложений. Мы обсудим также различные меры, помогающие повысить безопасность вашего пользовательского интерфейса.

• Глава 9. Core Location и карты. В этой главе обсуждается работа с комплектом для программирования карт (Map Kit) и основных геолокационных API – то есть речь пойдет о написании приложений для iOS, располагающих информацией о местоположении устройства. Сначала поговорим о картах, потом обсудим, как определяется местоположение устройства, и снабдим ваши карты пользовательскими аннотациями. Потом изучим геокодирование и обратное геокодирование, а также методы, входящие в состав фреймворка Core Location, доступные лишь в версии iOS 7 SDK.

• Глава 10. Реализация распознавания жестов. Здесь демонстрируется использование механизмов, распознающих жесты пользователя на сенсорном экране. Они позволяют пользователю легко обращаться с графическим интерфейсом ваших приложений для iOS. В этой главе вы научитесь применять соответствующие механизмы, доступные в SDK для iOS, а также изучите рабочие примеры, которые протестированы в операционной системе iOS 7.

• Глава 11. Сетевые функции, JSON, XML и Twitter. Глава рассказывает о встроенных синтаксических анализаторах для JSON и XML. На базе этой информации в главе рассматриваются различные API для сетевых взаимодействий, а также обсуждается, как вы можете реализовать в ваших приложениях функции для общения в социальных сетях. С помощью таких возможностей пользователи смогут обмениваться своими данными и творчеством на подобных ресурсах, например в Facebook.

• Глава 12. Управление файлами и каталогами. Одна из самых важных задач, которые нам как разработчикам приходится решать при программировании для iOS, – это управление файлами и каталогами. В этой главе речь пойдет о создании, считывании, записи и удалении файлов. Здесь вы найдете информацию, достаточно подробную для того, чтобы наладить управление файлами и каталогами с помощью средств iOS SDK.

• Глава 13. Камера и библиотека фотографий. В данной главе показано, как обнаружить доступность камеры на передней и задней поверхностях устройства с системой iOS. Кроме того, вы научитесь обращаться к библиотеке фотографий посредством фреймворка ресурсов (Assets Framework). В конце главы рассказано о том, как редактировать видео прямо на устройстве с iOS с помощью встроенного контроллера видов.

• Глава 14. Многозадачность. В этой главе показано, как создавать приложения, ориентированные на многозадачность и хорошо функционирующие на устройствах с iOS. Вы узнаете об организации фоновых процессов, о воспроизведении аудио и определении местонахождения пользователя в фоновом режиме. Кроме того, мы поговорим о загрузке содержимого по URL, пока ваше приложение находится в фоновом режиме. Опираясь на эту информацию, мы также исследуем некоторые новые API для многозадачности, появившиеся в iOS 7. Они позволяют нам скачивать контент периодически, пока приложение работает в фоновом режиме и даже когда оно не запущено.

• Глава 15. Уведомления. Уведомления – это объекты, несущие определенную информацию, которая может передаваться множеству получателей методом широковещания. В этой главе мы обсудим уведомления, в том числе локальные и пуш-уведомления. Вы узнаете, как использовать новейшие возможности, встроенные в Xcode, и легко включать эти функции в свои приложения.

• Глава 16. Фреймворк Core Data. Глава описывает детали стеков Core Data и демонстрирует, из чего состоят эти стеки. Изучив ее, вы сможете проектировать собственные объектно-ориентированные модели данных прямо в Xcode с помощью редактора моделей Core Data, а также создавать и получать объекты в Core Data. Опираясь на эту информацию, вы научитесь добавлять в Core Data собственные данные и искать данные с помощью фонового потока. В таком случае ваш поток пользовательского интерфейса останется свободен и сможет своевременно обрабатывать пользовательские события.

• Глава 17. Графика и анимация. В этой главе дается введение во фреймворк Core Graphics. Вы узнаете, как отрисовывать изображения и текст в графическом контексте, рисовать линии, прямоугольники и пути, а также многое другое. Также вы познакомитесь с новыми API из iOS SDK, позволяющими фиксировать содержимое ваших видов в форме скриншотов.

• Глава 18. Фреймворк Core Motion. Как следует из названия, глава посвящена рассмотрению фреймворка Core Motion. С помощью Core Motion вы получаете доступ к акселерометру и гироскопу, установленным на устройстве с iOS. Кроме того, вы сможете регистрировать встряхивание устройства. Разумеется, не на всех устройствах с iOS имеются акселерометр и гироскоп, поэтому вы также узнаете, как определять доступность этого оборудования.

• Глава 19. Фреймворк Pass Kit. В этой главе описан Passbook – виртуальный кошелек, который позволяет управлять вашими купонами, посадочными талонами, железнодорожными и автобусными билетами, а также другими подобными документами. Здесь вы узнаете все необходимое для создания ваших собственных путевых документов с цифровой подписью и научитесь с легкостью раздавать их пользователям.

iOS. Приемы программирования

Подняться наверх