总结PHP代码规范、流程规范、git规范
代码规范、git规范、teambition规范、yii规范
1.命名规范
(1).变量命名规范
1.变量使用驼峰命名法禁止使用拼音或者拼音加数字
2.变量也应具有描述性,杜绝一切拼音、或拼音英文混杂的命名方式
3.变量包数字、字母和下划线字符,不允许使用其他字符,变量命名最好使用项目中有据可查的英文缩写方式,尽可以要使用一目了然容易理解的形式;
4.变量以字母开头,如果变量包多个单词,首字母小写,当包多个单词时,后面的每个单词的首字母大写.例如:$itSports
5.变量使用有效命名
例如评论:$commentArr
6.变量属性标记清楚
例如数组变量后加Arr:$commentArr,数值:$commentInt
7.变量除了在循环体(for,foreach,while)中,其他位置允许但不鼓励使用没有描述意义的字母作为变量名。
例如:$i,$j。
(2).常量命名规范
1.常量名应具有描述性,杜绝一切拼音、或拼音英文混杂的命名方式
2.常量名包字母字符和下划线,不允许使用数字和其他字符。
3.PHP的内建值TRUE、FALSE和NULL必须全部采用大写字母书写。
4.常量名所有字母必须大写,少数特必要的情况下,可使用划线来分隔单词。
例如:define(‘AAA_BBB_CCC',‘true');(如果常量名由aaa,bbb,ccc三个单词组成的)
define('NAME','root')
(3).类名命名规范
1.一个文件中声明一个类,文件名中必须包类名字符串,这些不仅容易查找,也有利于实现在程序中自动加载类。
2.类名应有描述性,杜绝一切拼音、或拼音英文混杂的命名方式
3.类名包括字母字符,不允许使用数字和其他字符
4.如果类名包括多个单词,应使用驼峰式命名方式,每个单词的第一个字母必须大写,不允许连续大写。
类首字母大写如:classComment{}
AaaBbbCcc(如果类名由aaa,bbb,ccc三个单词组成的)
(4).方法命名规范
1.函数名应具有描述性,杜绝一切拼音、或拼音英文混杂的命名方式
2.函数名包括字母字符,不允许使用数字和其他字符。
3.函数名首字母小写,当包多个单词时,后面的每个单词的首字母大写.
例如:aaaBbbCcc(如果函数名由aaa,bbb,ccc三个单词组成的)
4.函数名应带有get,set等动作性描述。
functiongetUser(){//函数内容}方法,函数有效命名:functiongetCommentIdByTableName(){}
5.可以声明像函数名前带有下划线的形式,表示该函数为该类的私有方法,外部不允许进行访问。
例如:function_func(){}
2.代码注释
1.注释格式
/**
模块-大功能-功能点或方法作用
*@author作者<邮箱>
*@create创建时间
*@param$name
*@returnarray
*/
注释必须按照规范注释
2.行注释
//1.行注释前标清1、2、3...
//2.简短说明该行代码的作用。
3.需求明确
1.逻辑清晰
2.目标明确
4.代码语句规范
2.保存数据规范
1.初始化默认属性
2.load加载属性save保存或修改
3.逻辑问题必须在beforeSave中处理
5.代码提交规范
1.新建工作流(代码必须在工作流上面修改)
2.提交时先提交代码,在切换到dev,拉取dev然后进入工作流合并到工作流
3.进入dev,将工作流合并到dev
4.推送到测试环境
5.代码提交格式
【自己的现在的职务】系统功能-大功能-详细功能
例如:[开发]云系统-前台首页-编辑轮播图
详细步骤
1.打开自己sourceTree,在dev拉取最新代码
2.点击顶部菜单“Git工作流”->创建新功能->创建到以自己姓名名称命名的文件夹内便于区分,功能名称是自己做的功能的名称
3.创建完成,比如是feature/lihuien/首页轮播图管理
4.代码完成后,首先点击顶部菜单“提交”->然后切换分支到dev->dev拉取最新代码->在切换到工作流
5.单击dev,然后右键,会出现“合并dev至当前分支”->点击
6.然后切换到dev->单击工作流右键->出现“合并工作流feature/lihuien/首页轮播图管理代码至当前分支”,点击确定
7.最后点击顶部菜单“推送”->选择dev->确定->切换到自己工作流或者在创建新的工作流进行下一个功能开发
提示:如果提交出现冲突,请找冲突文件中相应的开发一起及时解决,不得擅自解决,以防会往代码库传入垃圾代码或者破坏队友的功能完整性
6.Teambition任务卡片规范
1.自己每天的任务,如果完成就及时点掉
2.如果任务延期标清延期原因
3.如果需要别人合作就添加任务关联
4.自己每天上班必须填写自己任务卡片
5.如果任务需要挂起写清楚挂起原因
6.写清楚备注,填写子任务,如果有需要就添加图片描述
任务具体格式:
【自己的现在的职务】系统功能-大功能-详细功能
[开发]云系统-后台-员工列表
备注:
1.修改员工信息
2.列表搜索等...
子任务1【开发】员工列表-删除员工-js返回提示
等
7.提示返回值
1.true时返回格式
`returnjson_encode(['status'=>'success','message'='提示信息','data'=>'需求数据'])`
2.false时返回格式
`returnjson_encode(['status'=>'error','message'='提示信息','data'=>'修改失败(或者错误信息)'])`
二.云运动环境规范
1.安装软件
2.服务器:xampp需要安装
3.数据库:mysql5.7版本需要安装
4.版本控制:Git需要安装
5.git客户端:sourceTree需要安装
6.编辑器:phpStorm需要安装带注册码
7.包管理工具:composer需要安装
8.浏览器:chrome需要安装
2.开发使用环境
1.编辑器:phpStorm
2.服务器:xampp(php7.0版本)
3.数据库:mysql5.7版本
4.代码仓库:coding
5.版本控制:Git
6.git客户端:sourceTree
7.包管理工具:composer
8.浏览器:chrome
3.团队工具
1.聊天工具:bearyChat
2.任务工具:teambition
3.代码托管:coding/gitlab
4.需求账号
1.腾讯企业邮箱账号
2.coding账号
3.gitHub账号
4.bearyChat账号
5.teambition账号
5.需求,原型,开发
1.如果在了解需求或原型时遇到不懂或逻辑不通的需求请及时跟对应的原型进行沟通,保持开发和原一致性
2.如果遇到问题不能及时解决请及时跟对应的开发人员沟通
6.sourceTree规范
1.Master
1.Master分支为线上环境分支
2.该分支只能管理员提交或合并
3.除管理员,禁止开发人员私自操作Master
4.永远不要将代码直接提交到该分支
2.Dev
1.Dev分支为系统测试分支
2.提交到Dev分支一定是完成的完整功能模块
3.代码需要自己测试通过及管理员审核后再提交
4.切记不能提交半成品或者垃圾代码
5.切记不能直接在Dev分支上面修改代码,否则视为无效代码
6.需要开发自己的任务功能时,创建自己的feature工作流
3.Feature
1.Feature分支为个人的开发分支
2.该分支为任务、功能、修改bug的分支
3.分支命名必须规范如:feature/lihuien/公共分页类
4.上班第一件事就是拉取Dev代码合并到自己的工作流,预防代码合并冲突
注意:
(1).代码未完成千万不能直接提交到Dev、提交代码一定按照规范
(2).每隔一个小时必须更新一次代码,如果有未提交并且自己功能未开发完整,切记一定要推到自己远程功能分支上
7.数据迁移
1.数据迁移一定要按照规范来写
2.数据属性一定要问明白,在增加
3.迁移一定要写回滚文件
4.迁移后一定要测试无误后在提交到Dev
注意:一定要迁移及回滚测试无误后在提交代码到代码库,否则重新写
8.Yii中Form表单
1.Form表单验证时定义的属性如果重复请使用常量定义后,使用常量,避免重复使用