文档章节

所谓重构

王小乖的王
 王小乖的王
发布于 2016/03/14 16:03
字数 352
阅读 5
收藏 0

真正做一个项目才发现其中重复的代码有多多,但是有时候会没有头绪如何才能让代码复用,切身体会是如果一个相似的方法要被重复写很多次,只需要改动少量数据的话,那么这些被改动的数据可以当作参数传给一个函数。

最近一个功能是页面打开时日期框默认显示数据库中有数据的日期,每个页面的日期框ID和获得数据的数据库都不同所以就把日期框ID和从数据库查询日期的方法作为参数穿给一个所有页面共用的函数。

或者是需要给Excel表某几列设置特别的数据格式时可以把这些列的下标当成参数。

这只是一些很小的功能点重用,其他的冗余的代码还有很多很多。如果不管这些每个团队成员都由着自己的性子写代码,倒是很轻松,可后期维护就头疼了,牵一发而动全身,一个小需求改,很多地方的代码都要改,甚至MVC每一层都要改,这样绝对是前期没有设计好结构。但是想要具备重构能力,只能多写多思考,来积累来提炼。

© 著作权归作者所有

共有 人打赏支持
王小乖的王
粉丝 1
博文 39
码字总数 4884
作品 0
深圳
闲谈简单设计(KISS)疑惑

忙碌了一年了项目又到了交付了,虽然项目能成功上线(因为还有维护支持的团队)。但是个人从技术上看,这是一个不那么成功的项目,因为后期艰难的修复bug,添加feature。这与简单设计有什么关...

zting科技
2017/01/10
0
0
重构之十六字心法

本文作者:伯乐在线 -ThoughtWorks 。未经作者许可,禁止转载! 欢迎加入伯乐在线专栏作者。 这篇文章是我写过的所有文章里最难产的一篇,前前后后斟酌酝酿了好几个月。因为重构对于我来讲真...

伯乐在线
2017/05/10
0
0
高效重构 C++ 代码(上)

本文作者:伯乐在线 -魔术大师 。未经作者许可,禁止转载! 欢迎加入伯乐在线专栏作者。 引言 Martin Fowler的《重构:改善既有代码的设计》一书从2003年问世至今已有十几年时间了,按照计算...

伯乐在线
2016/09/24
0
0
31天重构学习笔记19. 提取工厂类

摘要:由于最近在做重构的项目,所以对重构又重新进行了一遍学习和整理,对31天重构最早接触是在2009年10月份,由于当时没有订阅Sean Chambers的blog,所以是在国外的社区上闲逛的时候链接过...

晨曦之光
2012/03/09
0
0
重构的七宗罪

重构经过了十几年的发展和应用,可以说它是极限编程中程序员最爱的实践之一了,纷纷争相在项目里应用。重构工作坊、Codekata重构练习等各种提升能力的方式也屡见不鲜,帮助程序员们去追求优秀...

oschina
2016/03/29
8.8K
15

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Java IO类库之PrintStreamWriter

* A <code>PrintStream</code> adds functionality to another output stream, * namely the ability to print representations of various data values * conveniently. Two other fea......

老韭菜
50分钟前
0
0
qduoj~前端~二次开发~笔记

青岛大学qdu的onlinejudge是js的写的前端,框架是vue.js,在nodejs上部署运行,其实整体运行还是建立在docker的容器虚拟环境里,这里暂时不需要docker。安装环境是Ubuntu14-64bit 1.安装一大...

虚拟世界的懒猫
54分钟前
6
0
ConcurrentHashMap源码解读

部分内容转自:http://jiabinyuan.xyz/#/app/archive/detail/25 内部结构 内部采用了segment结构,每一个segment相当于一个hashtable。看下面的结构图: 从图的结构我们可以了解到,Concurr...

edwardGe
59分钟前
1
0
Ubuntu终端Tab键自动补全

打开 /etc/bash.bashrc,找到下列代码,取消注释。 #enable bash completion in interactive shells#if ! shopt -oq posix; then# if [-f /usr/share/bash-completion/bash_compl......

大熊猫
今天
0
0
polipo socks5代理转http代理

天朝的网络,哎~ 装个 yarn 都时而会卡 假设在SSlocal 已经装好运行的前提下,来安装设置 polipo sudo apt-get install polipo sudo vim /etc/polipo/config 追加下列配置内容,并保存 socksP...

纯洁徐
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部