资源描述:
《ios项目目录结构和开发流程》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、iOS项目目录结构和开发流程网上关于iOS项FI的资源不多,开源的「1.质S还不错的iOS项n也是少之又少,最近正好跟M事合作了一个iOS项F1,来说说自己的一些想法。目录结构AppDelegateModelsMacroGeneralHelpersVendorsSectionsResources一个合理的n录结构首先应该是清晰的,让人一眼看上去就能大概了解II录的职责,n.容易应对新的变化。AppDelegate这个FI录下放的是AppDelegate.h(.m)文件,是憋个应用的入口文件,所以单独拿
2、ili来。Models这个目录下放-•些与数据相关的Model文件,里而大概足这样:Models
3、-BaseModel.h
4、-BaseModel.m
5、-CollectionModel.h
6、-CollectionModel.mMacro这个EI录放了整个;、V:川会川到的宏定义,里面人概是这样:Macro
7、-AppMacro.h
8、-NotificationMacro.h
9、-VendorMacro.h
10、-UtilsMacro.hAppMacro.h里放app相关的宏定义,如://表情相关1•#define
11、EMOTION_CACHE_PATH@,'cachedemotions"2.#defineEMOTION_RECENT_USEDrecentusedemotions3•#defineEMOTION_CATEGORIES@ncategoryemotionsH4.#defineEMOTION_TOPICS®HemotiontopicsH//收藏相关#defineCOLLECT_CACHE_PATH©"collected"#defineWATERFALL_ITEM_HEIGHT_MAX300#defineW
12、ATERFALL_ITEM_WIDTH146NotificationMacro.h里放的是通知相关的宏定义。UtilsMacro.h里放的是一些方便使用的宏定义,如:1.#defineUIColorFromRGB(r,g,b)[UlColor2•colorWithRed:r/255.03.green:g/255.04.blue:b/255.0alpha:1]5.6•#defineNSStringFromlnt(intValue)[NSStringstringWithFormat:%d",intV
13、alue]VendorMacro.h里放一些第三方常量,如:1.#defineUMENG_KEY®11xxxxxH2.#defineUMENG_CHANNEL_ID@"xxx"如果有新的类型的宏定义,可以再新建一个相关的Macro.h0General这个tJ泉放会被重用的Views/Classes和Categories0里人概是这样:General
14、-Views
15、-TPKScollView
16、-TPKPullToRefresh
17、-Classes
18、-TPKBaseViewController
19、-TPKHo
20、rizontalView-Categories
21、-UlViewController+Sizzle
22、-UIImageView+Downloader•••这里的tpk是项n的首字母缩写。Helpers这个n录放一些助手类,文件名与功能挂钩。里谢大概是这样:Helpers
23、-TPKShareHelper
24、-TPDBHelper
25、-TPKEmotionHelper助手类的主要作用是帮助Controller瘦身,也可以提供一定程度的复用。Vendors这个目录放第三方的类库/SDK,如UMeng、WeiboSD
26、K、WeixinSDK等等。Sections这个H录卜'面的文件对应的是app的具体单元,如导航、瀑布流等等。里面人概足这样:Sections
27、-Menu
28、-Setting
29、-Collection•••Resources这个n录卜‘放的足app会川到的一些资源,主要足图片。Cocoapods业务无关的类座可以通过Cocoapods来方便地管理,如SDWeblmage,Reachability等等。还有一些是多个应用都会用到的基础模块,比如HBAP1、HBSNS、HBFoundation(HB为公司名首
30、字母)等等,可以建一个私有的gitrepo,然后加到podfilo巾,这样如果HBAPI有更新,只需要podupdate一下就行了。顺便说一下HBFoundation,这个git仓库中nJ以放一些ft己写的所有应用基本上都会用到的小模块。如很多app都会有隔一段时闽跳出一个求好评的alertView,就可以写一个HBRating类,这样需要使用该功能的app只需加上一句:[HBRatingchecklfShouldPopupWithAppID:(NSIn