ios 之闲谈项目搭建结构以及代码规范

作者: flowerflower | 来源:发表于2017-07-20 12:47 被阅读1432次

最近公司换了个产品经理,该公司以产品线为主,无项目经理,无疑便是产品当道,所谓新官上任三把火,推翻之前的迭代了3次的项目,故辛辛苦苦大半年,一夜又回到了解放前,用粗俗的话来说就是在老板面前会拍马屁,而且还能拍的一套一套的,马屁成精的他成为boss身边的红人,那嘚瑟的呦 !!!谁怼了他,那就不得了!实在是无力再吐槽了。
而作为程序猿的我们,代码质量以及效率才是我们该追求的,不多说了,上demo才是硬道理!!!

IMG_0440.JPG

<一>项目搭建

首先先看

12345.gif

AppDelegate

放的是AppDelegate.h(.m)文件,是整个应用的入口文件,所以单独拿出来。

Base

工程主体类, 日常大部分开发代码均在这里,又细分了好多次级目录。
Base( 基类 (整个框架的基类))包括:

  • ControllerView
    • BaseNavViewController(通过appearance统一设置nav的相关设置)
    • BaseTabBarViewController(设置TabBarVC)
    • BaseUIViewController(主要分三块需子类重写:setupNav ,loadDataFromNetwork,setupUI)
    • BaseWebViewController(加载网页)
    • BaseTableViewController(设置tableView和刷新)
  • Model公共BaseModel (将第三方的进行封装,子类继承于BaseModel)
  • Views公共View (封装的一些常用的View)

Classes

以TabBar名字命名(一般是大概在3,4,5个左右,主要看产品需求),这里只拿其中一例作为说明。

例如其中首页部分:


Snip20170720_18.png
123456.gif

补充
作为一个程序猿不管是刚入门也好,是大神也罢,代码规范是一定有的,并让这种规范成为你的习惯,这样有利于其他同事查看,也方便自己看,别自己下次看的时候,自己都看不懂了,那就😓了。

Public

主要放一些通用的东西,包括公用的cell和控制器、数据库等等

Expand

  • Category(UIKit和UI)
  • Macros(所有的接口(ConstUrl)、枚举以及通知名称(Const)、配置友盟账号、主题颜色、打印、环境(开发、测试、预发布、正式) Macros)
  • Network(网络请求包括配置公共参数)
  • Tools(MD5加密等等)

SDKFile

第三方的类库/SDK(Wechatpay/Alipay/UMSocial等等)

Vender

第三方的类(Reachability/FLAnimatedImage/SDCycleScrollView等等)

Resourse

主要包括(Image和plist文件)

Supporting Files

放XX.pch文件

补充
之所以把所有的接口写都在ConstUrl中,是因为之前吃过这么一次亏,后台之前很乱,之前都是以.方式进行拼接,后面改成以/的方式进行拼接。
例如

之前
doindex.getIndexlbt
之后
index/getIndexlbt

<二>代码规范

  • 命名规范(驼峰式)

  • Url统一命名规范
    ConstUrl.h

UIKIT_EXTERN NSString  * const kGetActivityInfoUrl;

ConstUrl.m

NSString  * const kGetActivityInfoUrl = @"activity/getActivityInfo";
  • 枚举和通知统一在Const中写
    Const.h
/********************通知**************/
//登陆成功
UIKIT_EXTERN NSString  * const kLoginSuccessNotification;

/*----------------------------------枚举----------------------------------*/
//国家 0中国  1美国 2泰国  3越南
typedef NS_ENUM(NSUInteger,LYCountryType){
    LYCountryTypeChina = 0, //中国
    LYCountryTypeUSA = 1, //美国
    LYCountryTypeThailand = 2, //泰国
    LYCountryTypeVietnam = 3, //越南
    
    
};

Const.m

/********************通知**************/
//登陆成功
NSString  * const kLoginSuccessNotification = @"kLoginSuccessNotification";

相关文章

  • ios 之闲谈项目搭建结构以及代码规范

    最近公司换了个产品经理,该公司以产品线为主,无项目经理,无疑便是产品当道,所谓新官上任三把火,推翻之前的迭代了3次...

  • 乐乎-代码规范概述

    参考: 1、iOS中书写代码规范35条小建议 2、iOS开发总结之代码规范 3、iOS代码编程规范-根据项目经验汇...

  • 收藏整理(持续更新)

    项目搭建 优雅快速的搭建一个IOS项目,让你的项目结构不再混乱!(纯代码) 手把手教你如何搭建iOS项目基本框架 ...

  • iOS开发规范

    iOS代码编写规范Git的使用iOS进阶开发 目的 了利于项目维护以及规范开发,促进成员之间Code Review...

  • iOS项目结构和代码规范

    说两句项目结构和代码风格的重要性对于一个团队和项目来说不言而喻。首先项目结构清晰合理,方便产品的快速迭代以及提高团...

  • iOS开发总结之代码规范

    iOS开发总结之代码规范

  • swift代码开发规范

    目录 工程结构 模块代码结构 代码书写规范 一、工程结构 当前swift项目工程还在整合中,这里以旧项目结构进行展...

  • iOS 代码规范篇

    为了增加代码的可读性和可维护性,我们今天准备拟一篇代码规范博客。本博客分两部分来说:项目结构规范 以及 代码风格规...

  • 项目搭建基本配置与规范

    项目搭建规范 来源于coderwhy 一. 代码规范 1.1. 集成editorconfig配置 EditorCo...

  • Vue3+TS Day31 项目搭建、常用插件

    项目搭建规范 一. 代码规范 1.1. 集成editorconfig配置 EditorConfig 有助于为不同 ...

网友评论

    本文标题:ios 之闲谈项目搭建结构以及代码规范

    本文链接:https://www.haomeiwen.com/subject/iludkxtx.html