2010-10-12 2 views
2

Для моей работы я пишу приложение iPad, в котором пользователь может вводить данные, просматривать некоторые изображения и т. Д. Меня раздражало, что я очень медленно записываю в Obj -C, и я нахожу себя увязшим в пользовательском интерфейсе (например, мне всегда нужно вставлять UITableView, который требует много времени ...) Я думаю, что у меня неплохая ручка на языке и Apple SDK.Советы по быстрому развитию iPhone/iPad

Есть ли у кого-нибудь советы относительно того, как ускорить процесс разработки с точки зрения пользовательского интерфейса? Существуют ли альтернативные инструменты для xCode и IB? Существуют ли библиотеки с классами, которые быстрее запускают w /? Все, что ценится,

MJ

+0

Я думаю, что часть моей проблемы заключается в том, что, поскольку экран недвижимости настолько ограничен, я нахожу, что создаю много экранов с небольшим количеством элементов управления. Я вообще не мог их отвлечь, потому что все они разные. –

ответ

5

Интерфейс Builder уже может значительно ускорить ваше развитие, если вы научитесь его использовать. Например, см. Это custom table cell with IB tutorial.

Например, у моего нынешнего работодателя я видел приложение Mac OS X Cocoa, где диалог настроек был полностью выполнен в IB ... не было никакого кода для изменения или синхронизации значений в NSUserDefaults с помощью интерфейсных элементов, все было сделано в IB.

Также см. Эту интересную статью: Striking the Balance: Interface Builder vs. Code.

+0

Согласен 10000%. Самое худшее, что вы можете сделать, это выйти из интерфейса Builder. Я видел приложения со всеми интерфейсами, написанными в коде. Общая трата времени, очень трудная для чтения, сложнее редактировать. –

+0

Вот вопрос, связанный с полу. Когда я реализую свои пользовательские интерфейсы, я сталкиваюсь с проблемами безопасности типов. Пример, который только что со мной произошел 5 минут назад, это то, что у меня был NSMutableArray, который я использовал для хранения объектов типа X. Я случайно поставил тип Y. Естественно, во время выполнения я разбился, потому что пытался сделать вызов функции на объект, который obj не поддерживал. Могу ли я использовать трюки, чтобы сделать мой код более безопасным? –

+0

Извините, но не забудьте «будьте осторожны» :-) Или, может быть, когда вы вытаскиваете что-то из массива, проверьте с помощью 'responsesToSelector:' действительно ли метод, который вы хотите вызвать, действительно существует на объекте. Возможно, попросите опытного разработчика Java или .NET, прежде чем у них появятся дженерики, они столкнулись с одной и той же проблемой. – DarkDust

2

Избегайте UITableViewController, если вы еще не.

Для ускорения работы TableView dev я всегда поддерживаю довольно общую реализацию TableView, которая может копировать и вставлять фрагменты.

Если вы постоянно используете TableView для разных типов объектов, попробуйте использовать протоколы, чтобы сделать реализации более однородными.

Не бойтесь UIViews как subviews, а не постоянного использования UIViewControllers. Иногда VC - это просто дополнительный уровень сложности, который вам не нужен.

Мой опыт в том, что самое большое, что вы можете сделать, как разработчик iPhone, чтобы стать более эффективным, - это знать, когда и когда не использовать контроллеры, а не Views при выполнении сложных интерфейсов.

Желание я мог быть более конкретным, но ваш вопрос немного расплывчатый ... нет ничего плохого в Interface Builder, это просто крутая кривая обучения.

Смежные вопросы