iOS 项目目录结构


概述:数据库

因为近期离职进行中,特整理目前负责的现有项目的目录结构和程序架构(MVC),程序架构后期整理。服务器


目的:架构

第一,方便现有同过后期开发;app

第二,方便后期本身开发;工具

第三,方便有这方面须要的开发人员参考。spa


内容:server

主要包括:blog

1. 项目目录结构:图片


  2. 项目目录结构说明: 资源

在 iOS 工程中我主要是经过添加文件夹,实现逻辑分包,这样有利于咱们组织和管理代码,使工程结构清晰和易于理解。  下面就说一说上图项目结构中,主要文件夹的做用:

Bms:这个文件夹下主要放的是与业务相关的文件;

Application:这个文件夹下主要放的是UI相关的文件、业务控制层相关的文件、数据模型、业务逻辑相关的文件等;

BaseServer:这个文件夹下主要放的是 UI 业务逻辑相关文件和业务数据逻辑相关的文件;

Controllers:这个文件夹下主要放的是业务相关控制类,例如:UIViewcontroller;

Dtabase:这个文件夹下主要放的是数据库相关的业务文件;

Models: 这个文件夹下主要放的是业务数据实体(数据模型);

View:这个文件夹下主要放的是UI窗口组件和UI 公共组件;

Config:这个文件夹下主要放的是一些自定义的配置文件,例如:宏定义文件、自定义 .plist文件、.pch文件等;

Helpers:这个文件夹下主要放的是一些辅助业务相关的辅助文件;

IM:这个文件夹下主要放的是即时聊天相关的业务文件;

Core:这个文件夹下主要放的是一些核心代码,好比一些三方包,工具类,底层代码等;

Database:这个文件夹下主要放的是一些数据库底层核心代码;

IM:这个文件夹下主要放的是即时聊天模块的核心代码;

Libs:这个文件夹下主要放的是三方包文件,例如:FMDB 三方包;

Network:这个文件下主要放的是与服务器交互的核心文件,例如:Https、Socket、Webserver等;

Utils:这个文件夹下主要放的是一些系统经常使用的工具类,例如:获取时间工具类,文件大小等;

Supporting Files :这个文件夹下主要放的是系统生成的文件,好比:AppDelegate文件、info.plist文件和 main.m文件;

  Resource:这个文件夹下主要放的是一些资源文件,好比:图片文件、音频文件等;

Frameworks: 这个文件夹下主要是将用到系统的 Frameworks,整理到这个文件夹下,好比:AVFoundation.framework

Products:这个文件夹是系统本身生成的,主要放的是 .app文件。


一个好的项目目录结构其实就能体现开发者的开发思想。

特别说明:若有不妥的地方请各位提出宝贵的意见,或者是有更好的项目目录结构烦请分享。