当前位置: 首页 > news >正文

【大前端】【iOS】iOS 真实项目可落地目录结构方案

一套iOS 真实项目可落地目录结构方案,包含模块拆分、命名规范、协作约束、演进路线

目标:
✅ 新人 1 天能上手
✅ 3–10 人并行开发不冲突
✅ 支持后期组件化 / Swift Package


一、真实项目推荐总目录(MVVM + 模块化)

MyApp ├── App │ ├── AppDelegate.swift │ ├── SceneDelegate.swift │ ├── AppCoordinator.swift │ ├── AppConfig.swift │ └── Environment.swift │ ├── Modules # 业务模块(核心) │ ├── Home │ │ ├── HomeViewController.swift │ │ ├── HomeViewModel.swift │ │ ├── HomeModel.swift │ │ ├── HomeService.swift │ │ ├── HomeCoordinator.swift │ │ └── HomeContracts.swift │ │ │ ├── Login │ ├── Profile │ └── Settings │ ├── Base │ ├── BaseViewController.swift │ ├── BaseViewModel.swift │ ├── BaseTableViewCell.swift │ └── BaseCollectionViewCell.swift │ ├── Components # 通用 UI 组件 │ ├── Alert │ │ ├── AlertView.swift │ │ └── AlertConfig.swift │ │ │ ├── Loading │ └── EmptyState │ ├── Network │ ├── API │ │ ├── UserAPI.swift │ │ └── HomeAPI.swift │ │ │ ├── NetworkManager.swift │ ├── Request.swift │ ├── Response.swift │ └── NetworkError.swift │ ├── Storage │ ├── KeychainManager.swift │ ├── UserDefaultsStore.swift │ └── CacheManager.swift │ ├── Utils │ ├── Extensions │ │ ├── UIView+Layout.swift │ │ ├── String+Safe.swift │ │ └── UIColor+Hex.swift │ │ │ ├── Logger.swift │ └── Constants.swift │ ├── Resources (Folder Reference) │ ├── Assets.xcassets │ ├── Fonts │ ├── Localizable │ │ ├── zh-Hans.strings │ │ └── en.strings │ └── LaunchScreen.storyboard │ └── SupportingFiles ├── Info.plist └── PrivacyInfo.xcprivacy

二、模块内部「真实写法」详解(重点)

1️⃣ Home 模块拆解(真实项目)

Home ├── HomeViewController.swift # 只负责 UI & 事件 ├── HomeViewModel.swift # 状态、业务逻辑 ├── HomeModel.swift # 数据结构 ├── HomeService.swift # 网络 / 本地数据 ├── HomeCoordinator.swift # 页面跳转 └── HomeContracts.swift # 协议定义

职责边界(避免后期失控)

文件只允许做什么
VC渲染 UI、绑定 ViewModel
VM业务逻辑、状态管理
ServiceAPI / DB / Cache
Modelstruct / enum
Coordinatorpush / present
Contractsprotocol

👉绝不允许:

  • VC 里写网络请求

  • ViewModel 里 push 页面

  • Base 引入业务判断


三、命名规范(落地必备)

1️⃣ 文件命名

模块名 + 职责 HomeViewController HomeViewModel HomeService

2️⃣ 协议命名(面试 & 架构感)

protocol HomeViewModelInput protocol HomeViewModelOutput protocol HomeServiceProtocol

四、真实项目协作规则(非常重要)

1️⃣ 模块自治原则

  • 模块不允许互相 import

  • 只能通过:

    • Protocol

    • Coordinator

    • 公共组件

2️⃣ Git 冲突最小化

  • 每人一个模块

  • 不共享 VC

  • 公共修改走 PR


五、网络层真实封装示例

enum HomeAPI { case list } extension HomeAPI: APIProtocol { var path: String { "/home/list" } var method: HTTPMethod { .get } }
final class HomeService { func fetchList() async throws -> [HomeModel] { try await NetworkManager.request(HomeAPI.list) } }

六、Base & Components 的边界(真实踩坑总结)

Base 只做三件事:

  • 生命周期兜底

  • 通用能力(loading、toast)

  • 统一风格

Components:

  • 独立展示

  • 可单独测试

  • 可拆成 Pod / SPM


七、从单体到组件化的演进路线

阶段 1:单工程模块化

Modules/Home Modules/Login

阶段 2:内部组件化

Components/Alert Components/Loading

阶段 3:Swift Package

MyApp ├── Packages │ ├── HomeModule │ ├── NetworkKit │ └── UIComponents

👉目录设计不变,迁移成本极低


八、真实项目「一页总结版」

iOS 真实项目目录落地三原则:

  1. 业务一定进 Modules

  2. Base 只放能力,不放业务

  3. 能拆的迟早都会拆

http://www.rkmt.cn/news/122445.html

相关文章:

  • Apache FreeMarker在线测试器终极指南:零基础快速上手模板引擎
  • 终极免费用户引导神器:Intro.js 快速上手完整指南
  • 快速上手MFRC522-python:5步实现树莓派RFID读卡功能
  • macOS存储空间不足?3步解锁远程存储新方案
  • RestTemplate 封装 - RestUtils (1)
  • H3C MSR3620-DP系列路由器生产环境配置
  • 恶臭异味检测仪:金叶仪器实现异味精准识别与数据化管理
  • 服务器技术参数怎么写
  • 别花钱找中介,我留学生求职却靠它上岸了!
  • 关键操作:锁相环切换、逆变器控制模式切换
  • 前后端分离短流量数据分析与可视化abo系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程
  • 小团队如何1-2周快速搭建企业级外卖平台?
  • 快速掌握图表定制:新手友好的交互式数据可视化终极指南
  • Unity智能语音交互革命:从技术难题到离线解决方案的探索之旅
  • 踩过坑才懂:前端生成唯一 ID,别用 Date.now ()了!一行代码搞定
  • 用Dify搭建企业级知识库(详细教程)小白到精通,一篇全掌握!
  • 构建敏捷时代的高效能测试团队:理念、架构与实践路径
  • ESD9L5.0ST5G SOD923封装单向低容静电保护器件 DL0501D9 DL0301D9
  • 2025年12月呼和浩特交通事故/婚姻家庭纠纷/民间借贷律师口碑榜单 - 2025年品牌推荐榜
  • 2025十大可下载图片素材网站推荐,找图库素材必看! - 品牌2026
  • vue 甘特图 vxe-gantt table 依赖线的使用,配置连接线
  • 2025十大私藏图库!旅游金融大数据等行业高清素材图库推荐 - 品牌2026
  • OpenCV(二十七):中值滤波 - 详解
  • 【题解】Luogu P10289 [GESP样题 八级] 小杨的旅游
  • 2025年获客系统品牌排行榜,有了它商机线索不用愁 - 品牌策略主理人
  • KOReader完整指南:如何在Kindle等设备上打造完美的电子书阅读体验
  • 国产蒸馏水器/实验室蒸馏水器/全自动蒸馏水器推荐工厂/厂家/制造商 - 品牌推荐大师
  • 最新发布!2025年国内实心钢棒现货厂家TOP5榜单,实心钢棒/不锈钢无缝实心钢棒生产加工怎么选择 - 品牌推荐师
  • 2025年12月U型科氏质量流量计企业推荐:大连美天测控、三角型科氏质量流量计、微弯型科氏质量流量计、直管型科氏质量流量计、科氏质量流量计推荐指南 - 海棠依旧大
  • 群晖DSM系统入门:新手必看的10个设置