Существуют ли передовые практики или соглашения для структуры проекта ios? - PullRequest
19 голосов
/ 20 сентября 2011

Мне было интересно, есть ли лучшие практики или соглашения для структурирования ваших проектов iOS?

Спасибо.

Ответы [ 5 ]

9 голосов
/ 18 февраля 2013

Взято из Рекомендации по кодированию iOS Slideshare от Жан-Люка Дэвида:

enter image description here

4 голосов
/ 17 апреля 2014

Как по мне, Архитектура iOS Project Решение отлично работает.Я также добавил Cocoapods.

Теперь мой проект выглядит так:

enter image description here

1 голос
/ 09 мая 2016

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

Но, пройдя через эту ветку и некоторые другие статьи в Интернете, я решил классифицировать несколько типов в новом интерфейсе кода папки.

  • Приложение (файл конфигурации с константами, AppDelegate)
  • Модели
  • UI
    • Просмотры
    • Контроллеры
    • Если я использую Nib-файлы (.Xib) , они должны входить в эту или раскадровку (s)
  • Ресурсы (все ресурсы, такие как изображения, пользовательские шрифты, аудиофайлы с каждым в разных подпапках)
  • Сервисы
  • Помощники /Утилиты
  • Библиотеки

Но если вы используете архитектуру MVVM, настройте ее по своему усмотрению.

Cheers!

0 голосов
/ 04 февраля 2016

Мы следуем стандартной структуре проекта, чтобы команда могла лучше понять.

enter image description here

0 голосов
/ 02 февраля 2016

Хотя я согласен с тем, что наиболее распространенной практикой является группирование файлов по типам (например, ViewControllers, Models и т. Д.), Я бы добавил, что в некоторых бизнес-случаях полезнее организовывать код с помощью предоставленных функций. Например, если вы работаете в компании, которая предлагает несколько комбинаций услуг, обычно упакованных в разные приложения, которые совместно используют некоторые элементы, например, - Адресную книгу, Сообщения, Управление документами и т. Д. *

В моих проектах у меня обычно есть папка Common, в которую я помещаю вещи, которые я часто использую, например, помощники по дате, писатели ввода-вывода и т. Д. Другие вещи я разделяю по функциональности.

...