Подтвердить что ты не робот

Как вы структурируете проект iPhone XCode?

Каковы хорошие способы создания групп/папок?

Я пробовал функцию (интерфейс для функции плюс модель и т.д.) с общей группой. Я также пробовал пользовательский интерфейс, модель и т.д.

Бывший держит все вместе, что прекрасно подходит для iPhone-парадигмы. Последнее означает, что я прыгаю немного больше.

Как вы думаете?

4b9b3361

Ответ 1

Стандартная структура каталогов Xcode MVC выглядит следующим образом.

  • CoreData​​strong > : содержит классы DataModel и Entity.

  • Расширение. Содержит один класс (расширения класса Java по умолчанию + расширения класса проекта.)

  • Помощник. Содержит классы сторонних разработчиков /Framework (например, SWRevealController) + классы Bridging (например, класс Obj C в проекте Swift)

  • Модель. Создайте класс singleton (например,.AppModel - NSArray, NSDictionary, String и т.д.) для сохранения данных. Здесь также выполняются синтаксический анализ и сохранение данных веб-службы.

  • Услуги. Содержит процессы веб-службы (например, проверка входа, HTTP-запрос/ответ)

  • Просмотр. Содержит раскадровку, LaunchScreen.XIB и классы просмотра. Создание подпапки Ячейки - содержат UITableViewCell, UICollectionViewCell и т.д.

  • Контроллер. Содержит логику или код, связанные с UIElements (например, ссылка UIButtons + щелкнуло действие)

Ответ 2

Это будет очень зависимым от проекта. В моем последнем проекте у меня были в основном виды, и поэтому я организовал представления по типу вида.

Ответ 3

Хотя у Джона есть точка, я на самом деле создал проект, чтобы продемонстрировать, что я считаю своей общей структурой проекта Xcode для небольшой или средней базы кода. Вы можете найти здесь.

Вот его схема:

  • Источник - весь исходный код
    • Учетная запись - связанные с учетной записью классы (классы, связанные с сеансом, логика учетной записи и т.д.)
    • Приложение - классы, связанные с приложением. Делегат приложения, классы конфигурации и т.д.
    • Основные дополнения - Расширения и подклассы, связанные с классами apple
      • Утилиты - общие классы полезности. Полезные расширения, утилиты форматирования, классы удобства и т.д.
      • Папки с элементами Element - папка для UIView, UITableViewCell и т.д.
    • Локальное сохранение - локальный уровень сохранения. Все взаимодействия с локальной базой данных (область, основные данные)
      • Репозитории - все связанные с моделью локальные логические константы
    • Константы - все константы. URL, шрифты, цвета, ошибки и т.д.
    • Модели - все модели (представление на стороне сервера). Мы также будем вводить здесь любую логику отображения объектов
    • Модули. Здесь мы можем найти каждую часть приложения, деленную по функциональности
      • Папки, основанные на модуле. Каждая папка содержит все контроллеры представлений, представления, делегаты и связанные с ними классы.
    • Networking - Сетевой уровень приложения (например, классы, ответственные за взаимодействие с веб-службами)
      • Услуги - Все связанные с моделью веб-логики
  • Раскадровка - содержит все файлы раскадровки
  • Ресурсы - любые дополнительные ресурсы, такие как носители, документы, файлы локализации и т.д.