restful api: 创建接口用post类型 查询接口用get类型 更新接口用put类型 删除接口用delete类型 举个例子: url规范: 建议在postman里面调试接口
static 静态方法,只能console.log(Test.getFormatName())
建议统一异常处理,不仅要在日志中打印异常堆栈信息,还得给前端统一格式的响应信息,而不是前端页面直接提示给用户500
首发博客地址[1] 系列文章地址[2] ---- 引自《阿里规约》的开头片段: 现代软件架构的复杂性需要协同开发完成,如何高效地协同呢? 必须强制使用 ES6, ES7 的新语法,比如箭头函数、await/async , 解构, let , for...of 等等 1.5.6 括号 下列关键字后必须有大括号(即使代码块的内容只有一行) (一) Vue 编码基础 vue 项目规范以 Vue 官方规范(https://cn.vuejs.org/v2/style-guide/)[3] 中的 A 规范为基础,在其上面进行项目开发,故所有代码均遵守该规范 6) views 目录 命名要与后端、router、api 等保持一致。 components 中的组件应使用 PascalCase 规则。 首发博客地址: https://blog.zysicyj.top/ [2] 系列文章地址: https://blog.zysicyj.top/categories/技术文章/后端技术/系列文章/开发规范
该规范主要参考《谷歌的代码评审指南》 ? 一、开发者 不应该在 CI 内同时包含主要风格的改动与其他代码的修改,这样会导致难以看出 CI 到底做出什么改动 格式化 commit message 优势: 提供更多的历史信息,方便快速浏览; 可以过滤某些 commit 的详细描述,可以分成多行 footer 部分只用于两种情况:1、不兼容变动;2、关闭issue 扩展:如果你使用 IDEA 进行编码,可以是使用 git commit template 插件来规范每次提交的 未来其他开发者接手时,代码是否易于理解与易用? 测试:代码是否经过正确且设计良好的自动化测试 命名:开发人员是否为变量、类、方法等选择了明确的名称? 注释:注释是否清晰有效? 风格:代码是否遵循了代码开发规范 文档:开发人员是否也同步更新了相关文档 在评论前加上“nit:”这样的前缀,表明这是一个优化性的建议,可以不影响本次上线 应在一个工作日内完成评审,并给出意见 评价只针对代码和具体业务流程
, 比如ad_left01.gif || btn_submit.gif; 在保证视觉效果的情况下选择最小的图片格式与图片质量, 以减少加载时间; 尽量避免使用半透明的png图片(若使用, 请参考css规范相关说明 760X100,750X120,468X60,468X95,728X90,585X140 次级页的pip尺寸360X300,336X280 游标:100X100或120X120 LOGO的国际标准规范
6) 修改的方法用 update 做前缀。 二、变量定义 【推荐】不要使用一个常量类维护所有常量,按常量功能进行归类,分开维护。 ) { 3 String item = iterator.next(); 4 if (删除元素的条件) { 5 iterator.remove(); 6 >(); 2 list.add("1"); 3 list.add("2"); 4 for (String item : list) { 5 if ("1".equals(item)) { 6 七、注释规约 【强制】类、类属性、类方法的注释必须使用 Javadoc 规范,使用/*内容/ 格式,不得使用 // xxx 方式。
编写目的 本文描述了 JAVA 开发中的有关包、类、接口、方法、实例变量、变量和常量的命名规范,用于规范 JAVA 编程过程中的命名和代码书写规范。 1. 程序代码作为重要的核心内容,有必要遵循统一的书写和编码规范; 2. 在程序设计总体方向上,有必要遵循统一的规范要求进行设计; 3. 遵循规范的要求,能够有效的减少编码过程中的错误; 4. 为了有效的提高程序的可维护性,编码方式需要遵循统一的规范。 适用范围 适用于开发组基于 JAVA 开发的项目。 本文是开发手册,凡是本文内容都是与开发同学强相关的。 l 单元测试代码是多余的。汽车的整体功能与各单元部件的测试正常与否是强相关的。 l 单元测试代码不需要维护。 6.
那阅读起来就是苦不堪言,所以,一些基本的开发规范是必须的,是为了自己方便阅读代码,也方便他人阅读修改代码。 true:完全一样;false(默认):不完全一样 - [@return](/user/return) void - [@author](/user/author) polk6 2015/07/21 修改其它的内建对象比如 Function.prototype,虽危害没那么大,但始终还是会导致在开发过程中难以 debug 的问题,应当也要避免。 'valid' : 'invalid' ---- JSHint 在js规范中,有很多规范都是样式上的规范而不是逻辑上的规范,比如尽量使用=== 而不是==,我们可以使用JSHint或者JSLint,Javascript font-size: 1.5rem; text-transform: uppercase; } 原文地址: https://juejin.im/post/592d4a5b0ce463006b43b6da
会响应对应路由转发过来的 get 请求 func (c *Controller) Get() { ... } 大写字母开头的方法以为着是可供调用的公共方法,如果你的方法想只在本包内掉用,请以小写字母开发
ES6编码规范 let,const替代 var es6提出了新的变量声明,let,const.大部分情况下 let和const可以替代var. let 定义的变量不会被变量提升`` const 定义的常量不能被修改
如何规范你的Git commit? 约定式提交 1.0.0
private TextView mSelectCountryNameTv; private TextView mSelectCountryCodeTv; 暂时先写这些,后面补上,我写的不是标准规范 ,大家都可以自己制定一套 适合自己团队用的规范。
5、不建议过多使用Redis事务功能 Redis的事务功能较弱(不支持回滚),而且集群版本(自研和官方)要求一次事务操作的key必须在一个slot上(可以使用hashtag功能解决) 6、Redis集群版本在使用
这是近期在公司做的一次分享,这几年的互联网开发,算比较幸运,团队一直践行完善这套规范,没有太多的阻碍,得益于公司整体氛围,以及团队对规范和写文档的不排斥,形成了良好的开发习惯 在这次分享后,发现好些大 V也在谈规范,写文档,估计是前段时间阿里又发布了开发手册(华山版),借鉴于一下,对一些细节做些补充,整理出来 整体流程 ? 当然瀑布模型也有天生的缺点:每个阶段的严格性,缺乏灵活性,而现实需求却是经常变化的 所以单纯地选择哪个模型是不可取的,只能根据实际情况出发,为业务提供最大化服务 ---- 细则规范 很多人都在要规范,但好像从没思考过为什么需要规范 无规矩不成方圆,无规范难以协同,比如,制订交通法规表面上是要限制行车权,实际上是保障公众的人身安全,试想如果没有限速,没有红绿灯,谁还敢上路行驶? 有些任务可能有很多,需要指出任务功能,频率 5、存储变更 比如缓存,数据结构,过期时间,预计数据增长 DB表设计,表修改,索引信息,数据增长量;有新的业务场景,一定要请DBA帮忙评估索引或者其他信息 6、
使用不带BOM的UTF-8编码 在HTML中指定编码<meta charset="utf-8">; 无需使用@charset指定样式表编码,它默认为UTF-8(参考@charset);
Git 开发规范分支管理策略git flowVincent Driessen 于2010年提出的分支模型,可以说是最早、最全面的分支管理策略了,后续出现的分支管理策略基本都是基于 git flow 进行修改的 这里先要明确几个基本概念master/main:主分支,最终所有需要发布的有效代码都会合并到该分支develop:开发分支,所有开发内容都是基于 develop 分支创建 feature 分支feature hotfix:热修复分支,线上出了紧急 bug,需要专门分支处理从上图可以看出,使用 git flow 开发步骤还是比较多的:从 develop 创建一个 feature 分支开发并自测完 feature 其实,总结下来,一个健全的开发团队的分支管理应该满足以下条件:有一个永远有效、能反应生产部署代码的分支,可以随时发布有一个能持续集成、体现开发进度的分支,能够帮助提早发现集成问题Commit Message commit message 没有绝对的好坏,但是有相对的优劣,一个团队要遵守一致的填写规范。一个好的 commit message 应该要尽可能简洁、保留关键信息。
开发规范对象命名命名规范的对象,是指数据库SCHEMA、表TABLE、字段COLUMN、索引INDEX、约束CONSTRAINTS等【强制】凡是需要命名的对象,其标识符不能超过30个字符【强制】名称必须以英文字母开头 yyyymmdd为后缀,比如 tmp_order_20160425,正常业务用到的临时表、中间表,前后缀尽量不要包含 tmp 以免造成歧义库表设计【强制】生产/UAT环境建库建表,请参考《mysql建库建表规范 两种都保存日期和时间信息,毫秒部分最高精确度都是6位数。建议使用TIMESTAMP(3)。A. 禁止在程序端大批量更新或者删除数据,因为这样操作很可能造成复制的大量阻塞和延时,批量归档/删除,可以向dba发邮件提需求,由dba来处理【强制】禁止在生产/线上环境进行代码逻辑或SQL语句性能的测试,这类操作应在开发或者测试环境进行 )来判断是否为NULL值: SELECT IF(ISNULL(SUM(g)), 0, SUM(g)) FROM table;【建议】SQL合并,主要是指的DML时候多个value合并,减少和数据库交互开发行为规范
所有的数据库对象名称必须使用小写字母并用下划线分割(MySQL大小写敏感,名称要见名知意,最好不超过32字符)禁止在数据中存储图片,文件二进制数据(使用文件服务器)禁止在线上做数据库压力测试禁止从开发环境
组件命名规范: 组件名为多个单词,并且用连接线(-)连接,避免与 HTML 标签冲突,并且结构更加清晰。 data created mounted methods filter computed watch 引入组件components规范 default { name:"app", components:{part1,part2,part3}, data(){ return { } } } props规范 created 方法规范 created方法中,el并没有被初始化完成,而data已经被创建,这里可以进行一些数据处理 部分访问权限验证 页面级插件数据初始化 页面默认数据加载,数据初始化 methods 方法规范 命名规范 事件方法以on开头,例如(onNameChange,onUserClick) 使用驼峰命名 词意明确,见词知意 函数中统一使用_self=this来解决this的全局指向问题 部分写作规范