воскресенье, 5 июня 2011 г.

[Новичкам] Урок 2. Наш Hello, world!


iOS – это действительно замечательная платформа, и AppStore заполнен приложениями, которые наверняка вдохновляют Вас и бросают Вам, как разработчику, вызов. Самое главное то, что возможности здесь практически неограниченны.
В этом первом действительно практическом уроке мы создадим нашу первую программу для iPhone – Hello, World! По традиции, именно с этой программы начинается изучение любой платформы или языка.


Итак, давайте запустим XCode и выберем Create a new XCode Project.
Обладателей XCode версии 3 прошу не обижаться – скрины сделаны на четвертом XCode. Я советую Вам поставить его или (если совсем не хочется) – следовать этим же инструкциям, но местами адаптироваться и разбираться самостоятельно, если вдруг что-то ну совсем не так. Ладно, продолжим.

Перед нами откроется следующее окно:


В этом окне предложено несколько шаблонов по умолчанию, упрощающие создание основных типов приложений.
Мы выберем View-Based Application (приложение, основанное на View – в мире iOS View (Вид) – это аналог окна в обычных операционных системах. По умолчанию вид располагается на весь экран и может размещать в себе другие элементы типа кнопок, изображений, надписей и т.п.)




В следующем окне нам будет предложено ввести название:


Я предлагаю ввести HelloWorld)
Здесь же можно выбрать устройство, на которое Вы будете ориентироваться в разработке.
Флажок на Include Unit Test мы пока не ставим.
Далее Вам будет предложено выбрать папку для сохранения – и вуаля! – перед нами откроется окно с только что созданным проектом.

Вот как оно выглядит в нашем икскоде:


В левой части окна расположена иерархия файлов, в правой – редактор, который в данный момент показывает нам настройки проекта.
В третьем икскоде иерархия файлов несколько отличается.
Для владельцев Икскода 4:
В папке HelloWorld располагаются все классы нашего приложения, а в папке Supporting Files – ресурсы, необходимые нашему приложению, например картинки и т.п. Сейчас там находятся файлы с настройками приложения (plist-файлы), заголовочный файл HelloWorld-prefix и главный файл приложения main.m, с которого начинается загрузка приложения (мы рассмотрим его в следующем уроке)
В папке FrameWorks лежат библиотеки, которыми пользуется наше приложение – в нашем случае, Foundation, которая обеспечивает работу базовых классов языка Objective-C, на котором и ведется разработка в iOS; библиотека UIKit, предоставляющая работу с визуальными компонентами типа кнопок и т.п. и CoreGraphics, дающая приложению работать с графикой и графическими типами.
В папке Products лежат готовые продукты, в нашем случае само приложение, которое будет потом скопировано на устройство и запущено на нем (ну или на симуляторе J )
У Вас наверняка возникло несколько резонных вопросов:
1)   Почему так много m-файлов?
Потому что это стандартное расширение для кода а Objective C. Именно ему было суждено стать системным языком разработки для iOS
2)   Можно ли писать на каком-то другом языке?
Да. Objective C произошел от C и фактически является надстройкой над ним, поэтому вы можете спокойно смешивать в одном файле код на си и обжектив си J Аналогично и С++ - только в этом случае необходимо Ваш m-файл переименовать в .mm
Можно использовать и уже существующие файлы и библиотеки на C/C++
3)   Сложно ли выучить Objective-C?
Ничуть, я обязательно раскрою все (ну, большинство J ) тонкостей этого языка в ближайших уроках.

Думаю, на сегодня хватит, ждите следующих постов с продолжением J

14 комментариев:

  1. Добрый день,
    скажите планируется ли дальнейшая публикация материалов?
    Спасибо

    ОтветитьУдалить
    Ответы
    1. Добрый день!
      Дальнейшая публикация планируется, я принял на днях твердое решение возродить блог и начал выделять на него время, так что теперь буду писать чаще.

      Удалить
  2. Хотелось бы конечно по-больше статей такого рода, д и сайт сделан очень граммотно в плане обычного пользователя, только порядок статей бы было бы логиченей сделать наоборот, от конца к началу. Ну или сделать кнопоку которая могла бы меня порядок статей. И еще есть несколько вопросов, был бы очень благодарен автору, если бы он отозвался в icq или skype. "293478213" "younghucker". Вопрос по созданию словаря.

    ОтветитьУдалить
    Ответы
    1. Сейчас возрождаю блог, как только накопится побольше сообщений - начну структуризацию.
      Если ваш вопрос еще актуален - отпишитесь, с радостью помогу)

      Удалить
  3. когда будет продолжение уроков ?

    ОтветитьУдалить
    Ответы
    1. В этом году возродил. Если вы еще не успели за это время найти другой, более стабильный источник знаний по айоси - прошу снова к нам)

      Удалить
  4. Сергей, а че перестали писать? Тема то интересная...

    ОтветитьУдалить
    Ответы
    1. Евгений, прекратил - сначала не было времени, потом как-то желание рассеялось.
      Теперь желание вернулось, время тоже начал уделять, хотя бы понемногу.

      Удалить
  5. Ответы
    1. Возможно, я отвечаю несколько поздно, но.. да. Будет :)

      Удалить
  6. Ответы
    1. Уснул :) теперь проснулся и возрождаю блог)

      Удалить
  7. Жаль, что перестал писать сюда. :(

    ОтветитьУдалить
    Ответы
    1. Сергей, я возобновляю уроки с января. Выпустил парочку новых, завтра добавлю еще один, и далее не реже раза в 2-3 дня. Так что - велкам за новыми статьями!

      Удалить