目录结构:
1.AppDelegate
  这个目录下放的是AppDelegate.h(.m)文件,是整个应用的入口文件,所以单独拿出来。

 
2.Models
  这个目录下放一些与数据相关的Model文件 里面大概是这样:

   Models
    |- BaseModel.h
    |- BaseModel.m
    |- CollectionModel.h
    |- CollectionModel.m
3.Macro

这个目录下放了整个应用会用到的宏定义,里面大概是这样:
Macro
    |- AppMacro.h
    |- NotificationMacro.h
    |- VendorMacro.h
    |- UtilsMacro.h
    ...
 
AppMacro.h 里放app相关的宏定义,如:
// 表情相关
#define EMOTION_CACHE_PATH @"cachedemotions"
#define EMOTION_RECENT_USED @"recentusedemotions"
#define EMOTION_CATEGORIES @"categoryemotions"
#define EMOTION_TOPICS @"emotiontopics"
 
// 收藏相关
#define COLLECT_CACHE_PATH @"collected"
 
// 配图相关
#define WATERFALL_ITEM_HEIGHT_MAX 300
#define WATERFALL_ITEM_WIDTH 146
 
NotificationMacro.h 里放的是通知相关的宏定义。
 
UtilsMacro.h 里放的是一些方便使用的宏定义,如:
#define UIColorFromRGB(r,g,b) [UIColor \
colorWithRed:r/255.0 \
green:g/255.0 \
blue:b/255.0 alpha:1]
 
#define NSStringFromInt(intValue) [NSString stringWithFormat:@"%d",intValue]
 
VendorMacro.h 里放一些第三方常量,如:
#define UMENG_KEY @"xxxxx"
#define UMENG_CHANNEL_ID @"xxx"
 
如果有新的类型的宏定义,可以再新建一个相关的Macro.h。
4.General

这个目录放会被重用的Views/Classes和Categories。里面大概是这样:
General
    |- Views
        |- TPKScollView
        |- TPKPullToRefresh
        ...
    |- Classes
        |- TPKBaseViewController
        |- TPKHorizontalView
        ...
    | - Categories
        |- UIViewController+Sizzle
        |- UIImageView+Downloader
        ...
这里的TPK是项目的首字母缩写。
5.Helpers

这个目录放一些助手类,文件名与功能挂钩。里面大概是这样:
Helpers
    |- TPKShareHelper
    |- TPDBHelper
    |- TPKEmotionHelper
    ...
 
助手类的主要作用是帮助Controller瘦身,也可以提供一定程度的复用。
6.Vendors
  这个目录放第三方的类库/SDK,如UMeng、WeiboSDK、WeixinSDK等等。
7.Sections
这个目录下面的文件对应的是app的具体单元,如导航、瀑布流等等。里面大概是这样:
Sections
    |- Menu
    |- Setting
    |- Collection
    ...
8.Resources
  这个目录下放的是app会用到的一些资源,主要是图片。

iOS项目开发中的目录结构的更多相关文章

  1. iOS项目开发中的知识点与问题收集整理①(Part 一)

    前言部分 注:本文并非绝对原创 大部分内容摘自 http://blog.csdn.net/hengshujiyi/article/details/20943045 文中有些方法可能已过时并不适用于现在 ...

  2. iOS项目开发中的知识点与问题收集整理①

    前言部分 注:本文并非绝对原创 大部分内容摘自 http://blog.csdn.net/hengshujiyi/article/details/20943045 文中有些方法可能已过时并不适用于现在 ...

  3. iOS项目开发中的知识点与问题收集整理②(Part 二)

    1.点击UIButton 无法产生触摸事件    如果在UIImageView中添加了一个按钮,你会发现在默认情况下这个按钮是无法被点击的,需要设置UIImageView的userInteractio ...

  4. iOS项目开发中的知识点与问题收集整理②

    1.点击UIButton 无法产生触摸事件    如果在UIImageView中添加了一个按钮,你会发现在默认情况下这个按钮是无法被点击的,需要设置UIImageView的userInteractio ...

  5. IOS项目开发中的文件和文件夹操作

    + (NSFileManager *)getNSFileManager { // iNSFileManager是一个静态变量 if (!iNSFileManager) { iNSFileManager ...

  6. IntelliJ和tomcat中的目录结构

    IntelliJ和tomcat中的目录结构   IntelliJ的官网帮助中心:http://www.jetbrains.com/idea/webhelp/getting-help.html   pr ...

  7. 聚合数据 iOS 项目开发实战:条码查询器

    记录下,聚合数据 iOS 项目开发实战:条码查询器:视频地址:http://www.jikexueyuan.com/course/324.html 条码查询API:https://www.juhe.c ...

  8. Vue项目搭建流程 以及 目录结构构建

    Vue项目搭建流程 以及 目录结构构建 一个小的Vue项目, 基于微信浏览器的移动端, 做了这么多的练习项目, 这一次准备记录下构建的过程, 以方便以后的调高效率 环境准备 操作系统 我的 windo ...

  9. iOS项目开发实战——学会使用TableView列表控件(四)plist读取与Section显示

    文本将会实现把数据存储到plist文件里.然后在程序中进行读取.在TableView控件中依据不同的类别显示Section. 有关TableView 的其它实现,请參考<iOS项目开发实战--学 ...

随机推荐

  1. 第三方框架之SDWebImage

    1. 下载SDWebImage,导入工程.github托管地址https://github.com/rs/SDWebImage 2. 在需要的地方导入头文件#import "UIImageV ...

  2. 在yii中使用gearman

    最近项目需要将利用gearman进行任务调度,目前所用框架为yii,在部署好gearman后,试图在yii中调用gearman,一直报错: 提示reverse函数没有定义,明明已经定义了啊!可能是当时 ...

  3. 【MySQL】mysql buffer pool结构分析

    转自:http://blog.csdn.net/wyzxg/article/details/7700394 MySQL官网配置说明地址:http://dev.mysql.com/doc/refman/ ...

  4. 移动端的头部标签和meta

    <!DOCTYPE html><!--HTML5 doctype--> <html> <head> <title>xxx</title ...

  5. leetcode 58

    58. Length of Last Word Given a string s consists of upper/lower-case alphabets and empty space char ...

  6. sqlca.sqlcode

    http://www.cppblog.com/prayer/archive/2009/06/03/86679.html        ======DB2 http://my.oschina.net/s ...

  7. EasyUI 后台管理系统

    基础功能版: 测试地址:http://dev.blueapp.cn/index.php/2014/07/03/101/ 用户名:admin密码:123456 有问题可一起探讨,源码后期将放出 一直未测 ...

  8. JAVA编程思想第一题出现错误

    //: object/E01_DefaultInitialization.java public class E01_DefaultInitialization{ int i ; char c ; p ...

  9. Vue.js学习 Item8 -- 方法与事件处理器

    方法处理器 可以用 v-on 指令监听 DOM 事件: <div id="example"> <button v-on:click="greet&quo ...

  10. Ajax的get请求向服务器请求数据五步骤?

    如下: ①创建ajax对象 ②建立http请求 ③发送http请求 ④设置ajax对象状态改变的回调函数 ⑤判断ajax状态是否等于4,做相应的业务逻辑