iOS项目编码规范文档

作者: Larry萝卜 | 来源:发表于2016-11-14 19:06 被阅读193次

=================================

为了让代码更加整洁,团队配合更加顺畅,指定开发规范文档,请开发同学仔细阅读本文档,并在日常开发过程中遵守本文档中的约定.

1.代码目录结构

工程代码在 x 目录下, 每个单词的开头字母大写BT, 结构如下:

 ├── ABcd
 ├── Post
 ├── Topic
│      └── Contronller
│             ├── BTTopicViewController
│             ├── x
│             ├── x
│             └── x
 |
├── x
│      ├── x
│      ├── x
│      ├── x
│      ├── x
│      └── sx
 | 
├── Pods
 | 
├── Frameworks

逻辑代码核心模块介绍:

2.代码命名规范

2.1 类名或者协议名
  1. 类名

首字母大写且大小写混搭,跨应用的还要加前缀类应该包含一个名词,表达类代表的事物或干的事情,一般加前缀,

如系统的 NSString, NSDate;
自定义的控件 BTAlertView等;

  1. 协议名

协议名参照它的文件名,
如UIView-Hierarchy文件中的UIView(Hierarchy)命名

  1. 自定义视图View
   1. BTBannerView
   2. Button
       1. BTPriaseButton
   3. UIImageView
       1. BTTapImageView
   4. Gesture
   5. Delegate
  1. 自定义视图View

  2. 系统组件属性命名: 全部加全缩写

1. UILabel            xxxLabel
   2. UIButton           xxxButton
   3. UIImageView        xxxImageView
   4. UISwitch           xxxxSwitch
   5. UICollectionView   xxxxCollectionView
   6. UITableView        xxxTableView
   7. Array              xxxArray
   8. NSDictionary       xxxDictionary 
   9. BOOL               islike
   10. Float                           
   11. NSINteger
   12. Block             xxxBlock
  1. 资源文件命名 icon_cm_xxx_ (icon/bg/empty/line/dot/模块动作/名字_)
1.  icon_topic_addfollow  // 专题添加关注图标
2.  bg_article_cell
3.  empty_center_post  // 个人中心发布为空图
4.  icon_cm_xxxx        // CM 代表公共的模块
5.  line_xxx_xx // 间隔线
6.  dot_xx_xxx // 点图
  1. 配置文件命名
   a. Notifacation 
       1. Notification的格式:[Name of associated class] + [Did | Will] + [UniquePartOfName] + Notification
       2. NSApplicationDidBecomeActiveNotification
       3. NSTextViewDidChangeSelectionNotification

   b. Dictionary      KEY     

   c. NSUserDefault   KEY   k + 模块 + UDKey > BTUserNameUDKey / BTAppDeviceTokenUDKey

   d. 常量名字  使用const关键字的常量,统一加k: eg:NSString *const kDataComments = @"comments";

   e. 其他
   f. loading   startLoading ,endLoading
  1. 协议命名
    Category 统一后面添加 功能+Additions

  2. 集合命名
    为了管理集合中的元素,集合应该有这几个方法

    - (void)addElement:(elementType)anObj;
    - (void)removeElement:(elementType)anObj;
    - (NSArray *)elements;
  1. 命名常量( Constants )
    如果要定义一组相关的常量,尽量使用枚举类型( enumerations ),枚举类型的命名规则和函数的命名规则相同
2.2 函数名
  1. 全局的东西,也要带前缀。前缀后的第一个字母大写。后面大小写混搭。如:
    BTScreenHeight()
2.3 属性命名
//poperty表示为一个形容词,可省略 ”is” 前缀
@property (assign, getter=isEditable) BOOL editable; 
  1. 注释编写规范

可以直接使用 XCode中的 documents 的编译目标,就可以直接从注释中提取文档.(需要安装 appledoc)

这就要求在编写注释时符合特定的规范.

被提取的注释
  • 多行注释 /** */
  • 单行注释 ///
类声明

/**
在这里写类的说明,放在类定义的最前面,可以说的详细一点
*/

函数声明

要求尽量每个暴露给外面的接口都编写以下注释

/**
在这里写对函数的说明,可以说的详细一点

@brief 这个是一个简要说明
@param <参数1> 参数1说明
@param <参数2> 参数2说明
@return 返回值说明
@exception <异常1> 异常1说明
*/

==========把下面的注释拖到XCode右下角{}库中,可以设置快捷键============
/**
<#在这里写对函数的说明,可以说的详细一点#>

@brief <#这个是一个简要说明#>
@param <<#参数1#>> <#参数1说明#>
@param <<#参数2#>> <#参数2说明#>
@return <#返回值说明#>
*/

参考
https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/CodingGuidelines/Articles/NamingBasics.html#//apple_ref/doc/uid/20001281-1001751-BBCFECGB

http://www.cnblogs.com/496668219long/p/4488512.html

相关文章

  • iOS 代码规范文档

    iOS 代码规范文档 [toc] 修订 概述 制定目的:制定iOS 编码规范,主要是为了规范公司内部的iOS 代码...

  • 移动端iOS开发规范文档

    移动端iOS开发规范文档 序言 根据网上的一些OC编码规范整理归纳而成,为了利于项目维护以及规范开发,促进成员之间...

  • iOS项目编码规范文档

    ================================= 为了让代码更加整洁,团队配合更加顺畅,指定开发...

  • 3个经常被忽略的iOS编码规范

    对于编程开发来说,编码规范是不可或缺的一个环节。在iOS开发领域,苹果也有官方的编码规范文档:《Coding Gu...

  • 移动端iOS开发规范文档

    移动端iOS开发规范文档 目录 格式与换行 命名 Objective-C下的cocoa编码规范 注释要求 其他 参...

  • 汇图-iOS开发规范

    iOS开发规范 目录 格式与换行 命令 OC编码规范 注释要求 其他 序 此文档根据apple以及行业内比较知名的...

  • iOS开发 | 规范编码的四个意识

    iOS开发 | 规范编码的四个意识 iOS开发 | 规范编码的四个意识

  • iOS开发规范文档

    此文档根据apple,google以及行业中比较知名的OC编码规范整理归纳而成,旨在为大家的iOS开发规范提供一份...

  • iOS 编码规范

    Table of Contents iOS 编码规范1 文件规范1.1 文件编码1.2 文件命名2 编码格式2.1...

  • iOS(Objective-C)编码规范

    iOS(Objective-C)编码规范 本文件旨在统一****iOS方向编码规范。增强代码可读性,便于后期维护。...

网友评论

    本文标题:iOS项目编码规范文档

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