Джобс объяснил отсутствие кросс-компилятора на iPhone
Глава Apple Стив Джобс обменялся парой электронных писем с программистом Грегом Слипаком (Greg Slepak) из Tao Effect, объяснив ему, почему в SDK iPhone 4.0 запрещена кросс-компиляция. Слипаку эта ситуация не нравится, он считает, что Apple ограничивает возможности разработчиков и мешает создавать программы одновременно для iPhone, Android и других платформ.
Джобс написал, что эту ситуацию хорошо разъясняет статья известного эксперта Джона Грубера (John Gruber). В частности, он пишет, что качественное нативное ПО для iPhone и Mac OS никогда не создавалось на кроссплатформенном инструментарии. Все кроссплатформенные приложения для любых платформ Apple, по мнению Грубера, всегда были второсортными. В качестве примера он приводит «убогий» клиент Kindle для Mac, написанный на Qt, и тот же клиент для iPhone, написанный на Cocoa Touch, который выглядит и работает, как нативное приложение iPhone.
Слипак с этой точкой зрения не согласился и написал, что сейчас есть много качественных кроссплатформенных инструментов. На это Джобс ответил, что у Apple только отрицательный опыт использования кроссплатформенных инструментов. Возможно, он имел в виду CodeWarrior для Mac OS X, который мешал разработчикам использовать весь функционал системы, да ещё и часто был несовместим с новейшей версией ОС.
«Мы это уже пробовали, но лишние уровни между платформой и разработчиком порождают посредственные приложения и тормозят развитие платформы», — написал глава Apple, ещё раз повторив главную мысль статьи Грубера.
Слипак снова возразил, что на Mac OS есть отличные программы, написанные в кроссплатформенных средах, например Firefox и Ableton Live, и что качество программы не связано напрямую со средой разработки. Правда, эту мысль Слипак озвучил уже не в переписке с Джобсом, а в собственном блоге.
«Паршивые разработчики будут создавать паршивые приложения вне зависимости от числа уровней, — написал он. — Нет никакого смысла запрещать инструменты для конверсии типа source-to-source, такие как Unity3D. В конце концов, все программы iPhone пишутся на его собственном SDK, поэтому эта ситуация несравнима с Mac, где можно полностью отказаться от фреймворков Apple и писать на других».
via Electronista