Разработка для Mac OS X и iOS - PullRequest
11 голосов
/ 28 июня 2011

Я работаю над игрой, которая в конечном итоге будет доступна для Mac OS X и iOS. Какой лучший способ сделать это? Должен ли я (1) сосредоточиться сначала на одной ОС и получить отлаженную версию 1.0, а затем перенести на другую ОС или (2) я должен попытаться разработать обе одновременно с самого начала?

Если (1), на какую операционную систему я должен нацелиться в первую очередь, т. Е. Какое направление переноса является самым легким?

Если (2), мне нужен отдельный проект в XCode для каждой ОС? Если да, то как мне сохранить только одну копию кода, независимого от платформы, который я разделяю между обоими проектами?

1 Ответ

14 голосов
/ 28 июня 2011

Я обычно кодирую параллельно, иногда начиная с Mac, иногда с iOS.Большинство основных функций (т.е. не-GUI) практически одинаковы на обеих платформах, но иногда некоторые функциональности отсутствуют в одной части.Затем я попытаюсь начать с более бедной платформы, чтобы код работал на обеих платформах.

Параллельная работа дает еще одно преимущество: вам нужно подумать о хорошей абстракции, иначе вас раздражает дублирующийся код.Несколько целей действительно помогают с хорошей структурой.

Что касается нескольких целей - да, теоретически это работает в Xcode.Это было настоящей болью (с потерей ссылок снова и снова), как только я поместил свой «основной код» в статические библиотеки и продолжал обновлять все автоматически.

Моя установка выглядит следующим образом:

MainWorkspace
   CoreFunctionsMacLibProject
   CoreFunctionsIOSLibProject
   TheApplicationMacProject
   TheApplicationIOSProject

Общий код для основной части находится в общей папке, обновления выполняются легко, если все находится в одной рабочей области.Было бы легко работать без отдельных библиотек, я просто использовал их в разных проектах / рабочих пространствах.

Пока все идет гладко.Разговор о 2-4 библиотеках и нескольких проектах приложений.Просто мой опыт, хотя.Рабочие пространства делают этот подход довольно гибким, поскольку вы можете поместить проект в более чем одно рабочее пространство.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...