В целом большинство «основных» фреймворков также присутствуют на Mac. Как правило, на рабочем столе будет присутствовать любой стартовый NS класса - NSString, NSArray и NSObject и т. Д. Это, надеюсь, означает, что весь ваш код двигателя будет просто перекомпилироваться и запущен.
То же самое относится к некоторым промежуточным программным средствам - все iPhone Quartz будет присутствовать - классы и типы, начинающиеся с CG ... Если вы используете 3D, на рабочем столе есть OpenGL, но это полный OpenGL, а не OpenGL ES для iPhone , Есть некоторые отличия, но ваш код будет довольно легко переносить.
Если вам определенно нужно перекодировать пользовательский интерфейс. Не только потому, что AppKit отсутствует, а потому, что дизайн пользовательского интерфейса, который вам нужен для iPhone, вообще не будет работать на рабочем столе. IPhone поддерживает мультитач и не имеет (значимых) перекрывающихся окон. Аналогичным образом, если вы используете какое-либо оборудование iPhone, которое вам нужно будет переопределить - на настольном компьютере, очевидно, не доступны акселерометр и GPS. В обоих случаях эмпирическое правило состоит в том, что классы, начинающие пользовательский интерфейс ... специфичны для iPhone.
Если вы следуете рекомендациям по дизайну MVC от Apple при написании приложения, если код, связанный с UI, будет хорошо отделяться от кода двигателя, и перенос должен быть проще.