приложение для iPhone без использования Interface Builder - PullRequest
6 голосов
/ 18 марта 2010

Есть ли причина для не написания приложений для iphone без использования конструктора интерфейса?

(или, другими словами, нормально ли писать приложения без компоновщика?)

Ответы [ 4 ]

9 голосов
/ 19 марта 2010

Лично мои приложения в них не используют NIB, но это больше зависит от того, как я начал заниматься разработкой, чем от чего-либо еще. Я перешел от разработки Mac (где я использую Interface Builder почти каждый день) к iPhone с момента выпуска первых бета-версий SDK. Изначально не было никакого Интерфейсного Разработчика, и даже когда он появился, вы не могли многое сделать с ним, поэтому я никогда не тратил время, чтобы по-настоящему познакомиться с ним на iPhone. Это больше зависит от того, что я делаю, с чем я знаком.

Джефф Ламарч приводит убедительный аргумент в своей статье « Не бойтесь конструктора интерфейсов », чтобы вы использовали Интерфейсный конструктор везде, где могли, и я призываю новых разработчиков научиться использовать его, прежде чем бросить вплоть до генерации программного интерфейса пользователя. Это экономит вам огромное количество времени для интерфейсов, использующих стандартные элементы.

Некоторые люди утверждают, что при использовании чисто программных интерфейсов можно получить выигрыш в производительности, но Мэтт Галлахер провел ряд тестов и обнаружил, что это ускорение обычно составляет порядка 5-10. %. Если вы действительно хотите сбить этот последний бит времени запуска вашего приложения, вы можете получить лучшее из обоих миров с nib2objc Адриана Космачевского, который генерирует Objective-C из ваших файлов NIB.

Тем не менее, во многих случаях вам потребуется программно манипулировать интерфейсами, например, для пользовательских видов и анимации. Этот код может существовать параллельно с Interface Builder без особых затруднений. Опять же, на данный момент это больше вопрос личных предпочтений, но я рекомендую использовать Interface Builder из-за того, что он может вас спасти.

4 голосов
/ 18 марта 2010

Я никогда не писал приложение для iPhone, которое использует Interface Builder (файлы .xib), но это просто личный вкус: мне нравится, чтобы приложения были на 100% кодом.

Причина в том, что мне не нравятся приложения, которые требуют инструментов времени разработки, если вам нужно что-то изменить позже. Это создает зависимость, которая не может быть проблемой сегодня или в следующем месяце, но может стать проблемой через 3 года.

Итак, ответ таков: да, можно писать приложения для iPhone без использования Interface Builder.

1 голос
/ 18 марта 2010

Конечно, писать приложения без IB абсолютно нормально. Требуется немного больше настройки (я полагаю, что вы должны внести некоторые изменения в файл Info.plist), но это, безусловно, возможно, и люди делают это постоянно.

Лично я предпочитаю использовать Interface Builder для большинства задач, но обычно просто для того, чтобы получить базовый макет на месте (поэтому мне не приходится иметь дело с подсчетом расходов и т. Д.) Любую дальнейшую настройку я предпочитаю делать в коде.

0 голосов
/ 18 марта 2010

Вы можете редактировать файлы .XIB вручную, если хотите. В конце концов, они XML. Не могу не иметь хотя бы одного из них в проекте. Кроме того, вы можете создать все свои элементы управления из кода. Насколько я могу судить, последний печатает меньше.

Тогда есть некоторые приложения, в которых файл XIB будет бесполезен. Я говорю об играх, где художественные / дизайнерские соображения превосходят удобство наличия родных виджетов.

Так что да, все нормально как на уровне разработки (без встроенных виджетов), так и на уровне реализации (да, встроенные виджеты, но без IB).

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