Будучи новичком в программировании ios,
Я начал, разумеется, с раскадровки, тогда я прочитал, что у нее есть ограничение, когда несколько разработчиков приходят работать в одном приложении, поэтому я переключился на чистый код. Но я думаю, что xib/nib может быть хорошим компромиссом.
Можете ли вы дать мне более зрелую точку зрения?
Большое спасибо за ваши огниЛучшая пратица между раскадровкой xib/nib чистое программирование
ответ
Использование раскадровки предотвращает одновременное использование двух или более разработчиков из разных видов, если вы не используете несколько раскадровки.
Использование файлов .xib, один из контроллеров каждого представления позволяет одному разработчику работать с именем FirstViewController и связанным с ним .xib, в то время как другой разработчик работает на SecondViewController и связанном с ним .xib. Таким образом, нет совпадений в том, что делают разные разработчики, и изменения одного разработчика не уничтожат других.
Я бы порекомендовал использовать раскадровки ... при необходимости вы можете иметь несколько раскадровки в проекте, и они могут действительно сократить время, необходимое для создания пользовательского интерфейса. Кроме того, если вы хорошо разбираетесь в git, вы можете легко разрешить конфликты в большинстве случаев: http://blog.mugunthkumar.com/articles/avoiding-merge-conflicts-with-storyboards/
Что касается кодирования пользовательского интерфейса, есть несколько вещей, которые лучше всего выполнять в коде ... но для создания всего пользовательского интерфейса программным способом - это пробовать копать яму ложкой, когда вы можете использовать лопату.
Я голосовал против использования раскадровки. Они такие же, как и обычные вещи, которые выглядят симпатично с примерами игрушек в презентациях WWDC, но в реальных сценариях он редко делает правильные вещи ... Раскадровки заставляют вас делать неудачные архитектурные решения (см .: http://doing-it-wrong.mikeweller.com/2013/06/ios-app-architecture-and-tdd-1.html) и по мере того, как ваш проект продолжается, раскадровки быстро превращаются в ужасный беспорядок viewcontrollers и segues, не говоря уже о проблемах с слиянием раскадровки ... Был там, сделал это. С vim. Это было больно ...
Фактически, я работал над проектом в течение 6 месяцев, который начинался с раскадровки, и теперь разработка дошла до такой степени, что я бы подумал (если крайний срок не будет быть близким), разделяя весь материал на отдельные XIB, если не на чистый код.
Вы должны использовать только раскадровку, если:
- вы делаете доказательство концептуальных приложений/прототипы
- вы планируете не более чем 6 viewcontrollers
- вы будете использовать простая навигационная система на основе стека и ничего сложного
Как насчет использования нескольких раскадровки? Ошибочно вносить все это в один большой файл. Я всегда получаю смесь раскадровки целых потоков просмотров (например, шагов регистрации) xibs (для многоразовых viewcontrollers или представлений, которые я хочу добавить в различные раскадровки) и кода (если некоторые вещи нуждаются в дополнительной настройке) – yershuachu
В раскадровки нет минусов и всех преимуществ по сравнению с экранами на основе xib. Вы можете разделить их на односкатные раскадровки, если вы считаете, что вам нужен один файл на экране.Только для многократных элементов управления на нескольких экранах xib по-прежнему имеет значение. –
так чистый код предназначен только для обучения Предполагаю? – M4rty
Некоторые школьные программисты предпочитают делать все в коде. Это личное предпочтение. Я работал над проектом с двумя другими разработчиками, и все мы считали, что файлы .xib - это путь. – Steve
Вы когда-нибудь пробовали слить файлы Nib? Я думаю, что причина в том, что многие крупные компании используют только кодовые решения. У Сэма Соффеса есть блог об этом: http://blog.teamtreehouse.com/why-i-dont-use-interface-builder – Raspu