golang项目代码重构(一)

栏目: Go · 发布时间: 6年前

刚入行,果断重构了第一个项目

  • 把功能匆匆忙忙地实现了,前后端分离的意思就是,得抓紧把接口功能实现了,以免影响别人的进度。回头一看,代码跟屎一样。果断重构!

重构

  1. 重新组织package,把功能抽象成三个主package,route --> service --> curds。路由层,处理请求参数层,数据库 curd层,使用elasticsearch,所以还有search。包之间的关系更加清晰了,也避免了之前包循环导入的问题
  2. 优化package内数据的可见性。golang根据名称首字母的大小写来控制可见性。在实现功能的过程中都是大写,以防别的包需要用到。写完之后自然需要将不导出的部分改成小写。
  3. 重命名。好的代码可以自己解释自己,注释是在代码无法解释自己的时候无奈的选择。《代码整洁之道》如是说。个人觉得该注释的时候还是得注释,有些时候最好能够将需求也注释上,比如因为 排序 的需求,需要改string类型为int类型。函数或变量命名太长很多时候跟包的设计,go文件的设计都有关系。良好的命名可以带来良好的可读性。
  4. 缩小函数,减少重复代码。Don't repeat yourself! 这个绝对是金科玉律!把若干函数中相同的部分抽离出来,作为一个函数。这是减少重复代码的有效途径。函数最好不要超过20行!单一职能原则,一个函数只做一件事情。
  5. 使用接口! interface有非常多的好处,解耦,面向“对象”等等。第二篇会上代码,详细阐述!

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

大话存储

大话存储

张冬 / 清华大学出版社 / 2008-11 / 58.00元

网络存储,是近二十年来的新兴行业。从纸带到硬盘再到大型磁盘阵列,存储系统经历了从简单到复杂,从单块硬盘到存储区域网络(SAN)。网络存储行业目前已经是一个步入正轨的IT行业了。. 网络存储是一个涉及计算机硬件以及网络协议/技术、操作系统以及专业软件等各方面综合知识的领域。目前国内阐述网络存储的书籍少之又少,大部分是国外作品,对存储系统底层细节的描述不够深入,加之术语太多,初学者很难真正理解网......一起来看看 《大话存储》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具