Программирование на Objective-C 2.0
Шрифт:
В главе 3, «Классы, объекты и методы», излагаются основы объектно-ори-ентированного профаммирования. В этой главе вводится некоторая терминология, но она сведена к минимуму. Там же вводится механизм определения класса и средства передачи сообщений экземплярам или объектам. Преподаватели и опытные профаммисты отмстят, что для объявления объектов я использую статический контроль типов. Я считаю, что это наиболее подходящий способ для начала обучения, поскольку компилятор может обнаруживать больше ошибок, делая профамму более понятной и позволяя начинающему программисту явно объявлять типы
В главе 4, «Типы данных и выражения», описываются базовые типы данных Objective-C и их применение в ваших программах.
В главе 5, «Циклы в программах», вводятся три оператора цикла: for, while и do.
Принятие решений является основой любого языка программирования. В главе 6, «Принятие решений» подробно описываются операторы if и switch языка Objective-C.
В главе 7, «Более подробно о классах», приводится более глубокое изложение работы с классами и объектами. Здесь подробно описывается, как работать с методами, передавать несколько аргументов методам и использовать локальные переменные.
В главе 8, «Наследование», вводится ключевое понятие наследования. Это упрощает разработку программ, поскольку вы можете использовать то, что пе-редается из вышележащих уровней. Наследование и подклассы упрощают из-менение и расширение существующих определений классов.
В главе 9 описываются три основополагающие характеристики языка Objective-C. Здесь излагаются три ключевые концепции: полиморфизм, дина-мический контроль типов и динамическое связывание.
В главах 10—13 завершается описание языка Objective-C. Здесь рассматри-ваются такие вопросы, как инициализация объектов, протоколы, категории, препроцессор, и некоторые основ языка С: функции, массивы, структуры и указатели. Эти возможности не обязательно использовать (обычно их нужно избегать) в начальный период разработки объектно-ориентированных приложений. Рекомендуется пропустить главу 13 при первом чтении этой книги и возвращаться к ней по мере необходимости для изучения какого-либо конкретного средства языка С.
Часть II начинается с главы 14, «Введение в Foundation Framework», где дается введение во фреймворк Foundation и описывается доступ к его документации.
В главах 15-19 описываются важные возможности Foundation framework. Это числовые и строковые объекты, коллекции, файловая система, управление па-мятью и процесс копирования и архивации объектов.
Закончив работу с частью II, вы сможете разрабатывать довольно сложные программы на Objective-C, которые используют фреймворк Foundation.
Часть III начинается с главы 20, «Введение в Сосоа». Здесь дается краткий обзор фреймворка Application Kit, содержащего классы, необходимые для раз-работки сложных графических приложений на Маках.
В главе 21, «Написание приложений iPhone», дается введение в SDK iPhone и фреймворк UIKit. Здесь показан пошаговый подход к написанию простого приложения iPhone (или iTouch) и рассматривается приложение-калькулятор, позволяющее выполнять простые арифметические вычисления с
Поскольку объектно-ориентированный подход требует использования до-вольно обширной терминологии, в приложении А, «Словарь», приводятся оп-ределения некоторых распространенных терминов.
В приложении В, «Сводка языка Objective-С», приводится сводка языка Obiective-C для быстрого поиска нужной информации.
В приложении С, «Исходный код адресной книги» приводится листинг ис-ходного кода для двух классов, которые были разработаны и широко использо-вались в части II. В этих классах определяются классы для адресных карточек и адресной книги. Методы этих классов позволяют выполнять такие простые операции, как добавление и удаление адресных карточек из адресной книги, поиск нужного адресата, вывод содержимого адресной книги и т.д.
Изучив написание программ на Objective-C, можно продолжить работу в нескольких направлениях. Можно изучить более глубоко базовый язык про-граммирования С, начать разрабатывать программы Cocoa для выполнения в Mac OS X или более сложные приложения iPhone. В любом случае, приложение D, «Ресурсы» поможет вам продвинуться в нужном направлении.
Часть I. Язык Objective-C 2.0 Глава 2. Программирование на Objective-C
В этой главе мы сразу приступим к делу и напишем первую программу на Objective-C. Пока мы не будем работать с объектами — это тема следующей гла-вы. Сначала необходимо понять, что такое ввод программы, ее компиляция и выполнение. Это важно при программировании и в Windows, и на компьютерах Macintosh.
Для начала рассмотрим простую программу, которая выводит на экране фразу «Programming is fun!» (Программировать весело!). Эту задачу выполняет программа «Программа 2.1», приведенная ниже. // First program example (Первый пример программы) #import <Foundation/Foundation.h> int main (int argc, const char * argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; NSLog ((@"Programming is fun!"); [pool drain]; return 0; } 2.1. Компиляция и выполнение программ
Прежде чем приступить к подробному описанию программы, рассмотрим ее компиляцию и выполнение. Для компиляции и выполнения этой программы можно использовать Xcode или компилятор GNU Objective-C в окне Terminal. Мы рассмотрим оба метода, чтобы вы могли решить, каким из них будете работать с программами в остальной части книги.
Примечание. Соответствующие средства уже предустановлены на всех Маках, которые поставляются с системами OS X. Если вы устанавливаете OS X отдель-но, установите также Developer Tools. Xcode
Xcode — это мощное приложение, позволяющее вводить, компилировать, от-лаживать и выполнять программы. Если вы намерены разрабатывать приложения на Маке, вам необходимо освоить это мощное инструментальное средство. Здесь вы только ознакомитесь с ним, в дальнейшем мы разработаем с его помо-щью одно графическое приложение. Xcode находится в папке Developer внутри подпапки Applications. На рис. 2.1 показан значок Xcode. Запустите Xcode. В меню File (Файл) выберите New Project (Новый проект), см. рис. 2.2.