2013-05-04 Zhang zhengzheng
以前上学的时候其实大概读过这本书,但是那时没有什么项目经验,对于重构还很难理解其意义,最近因为又读了一遍这本书,发现确实是很棒的一本书,虽然现在写javascript,而这本书是以java为基础的,但仍然有很多值得参考的地方,尤其是一些常见的重构手法,让人看的时就会觉得对对对,确实经常这么干,比如Extract method还有Replace array with object等等都可以应用到其他环境中。 阅读这本书最重要的首先是需要理解的是什么是重构,以前也自诩会定期重构代码,但现在想想,其实真正算作重构的时候并不多,大部分时候我们其实只是在重写,只是因为项目规模较小,所以许多问题并没有暴露出来罢了。 先看看重构的定义:“对软 继续阅读 »
2016-03-12 浩阳
content {:toc} 本文主要说明对这个博客主题的改版和代码重构的过程。这个简洁高雅的博客主题受到了很多朋友的喜欢。在写第一版界面时,我对前端并不是很熟悉,对Jekyll也不熟悉。现在距离当时也一年了,对自己当时写的代码也不太满意了,同时Jekyll如今也已经升级了,目前最新版为3.1.2。因此我在临近毕业尚未入职前做一下博客主题的代码重构和改版吧。 主要想做这些事情有:添加归档,添加标签,添加分类页面,主页显示文章摘要,代码去除 jQuery 和 BootStrap,优化移动端显示,将所有变量写入配置文件_config.yml中等。再优化一些细节吧。希望更多人会喜欢。 继续阅读 »
2016-10-12 曹强
一些重构的建议: 提炼函数 * 避免出现超大函数 * 独立出来的函数有助于代码复用 * 独立出来的函数更容易被覆写 * 独立出来的函数如果拥有一个良好的命名, * 它本身就起到了注释的作用。 比如在一个负责取得用户信息的函数里面,我们还需要打印跟用户信息有关的log,那么打印log的语句就可以被封装在一个独立的函数里: var getUserInfo = function() { ajax('http://xxx.com/userInfo', function(data) { console.log('userId: ' + data.userId); console.log('u 继续阅读 »
2008-03-17 Klaus Ma
主要想法: 将作业与插件分离,通过定义新的作业融合各个插件。 实现细节: 客户端: 1.提供服务配置查询命令。 2.由客户端指定作业类型。 例如 csf-job-run -t workflow myjobs.xml 继续阅读 »
2016-06-25 ruki
随着xmake v2.0.1 版本的发布,这大半年的辛苦总算告一段落,这个版本我基本上重构整个项目的90%的代码,几乎算是重写了,但结果还算挺满意的。。 因为上个版本的架构设计的不是很好,不能很好进行扩展,也不支持插件模式,语法设计上也不严谨,容易出现各种隐患,这对于后期维护和发展来说,已经出现了不可逾越的瓶颈。。 每个项目到了一定阶段,都是要不断重构,重新构思整体架构,才能使得项目不断的向好的方向演进。。 (当然如果是公司项目就另当别论了,坑太多,历史负担较重,不是说要重构就能让你重构的。=。=) 回归正题,目前xmake基本上所有模块都是可扩展的: 插件扩展 工程模板扩展 平台架构扩展 action扩展 option选 继续阅读 »
2015-11-27 derekchan
前阵子重构部门业务框架,大部分代码转移到了Laravel,小部分代码遗留在旧框架中。在转移的过程中Nginx是无法通过通用配置来进行两个框架的Url重写切换的,Nginx需要对每个Module,甚至每个Action都进行配置,导致Nginx配置冗余巨大,参与的同事每上线一个功能就需要上服务器增加或修改Nginx配置,苦不堪言。 继续阅读 »
2016-12-07 朱晓辉
之前由于项目需要,写了一个开屏广告组件XHLaunchAd,主要自用,后来发现越来越多的开发者,有这个需求. 随着使用人数的增加,部分开发者使用者提出了一些需求和问题,XHLaunchAd并不能很好的解决. 于是决定最近抽时间,把这个组件优化重构一下,解决网友之前提出一些问题和需求,并增加一些新功能,发布v3.0.0版本. 该项目目前已经收到 700 多个 star ,目前已经更新到v3.0.1版本 继续阅读 »
2017-03-04 ruki
概述 此版本重构了整个xmake,使得xmake更加方便地进行多语言扩展,并且在之前原有的构建语言支持上,新增了对golang, dlang 和 rust 程序构建支持。 并且重写了所有文档,提供更加详细完整的接口手册和文档支持:新版文档 License也从之前的LGPLv2.1改为Apache License 2.0,更加详细的改进请看下面详细描述: 新特性 添加--links, --linkdirs and --includedirs 配置参数 添加app2ipa插件 为xmake.lua工程描述增加dictionay语法风格 提供智能扫描编译模式,在无任何xmake.lua等工程描述文件的情况下,也能直接快速编译 为 继续阅读 »
2017-02-20 高悦翔
本书第六章的读书笔记,也是我这个系列的最后一篇读书笔记。后面7、8、9章分别讲的“测试、调试与重构”、“设计和架构的原则”以及“使用Lambda表达式编写并发程序”,因为笔记不好整理,就不写了,感兴趣的同学自己买书来看吧。 并行化流操作 继续阅读 »
2016-12-10 Eric Wang
作者简介:Steve Yegge是一名程序员,也是博主,写了很多关于编程语言,生产力,和软件文化的文章。他拥有华盛顿大学计算机科学本科学位,20年的业界经验,开发领域涉及嵌入式操作系统、可扩展的电子商务系统、移动设备应用、提升软件生产力的工具等。他曾供职于亚马逊和Google等公司。 徐旭铭,编了十几年程,翻译过几本书,现在在亚马逊当码农。工作和兴趣都是写代码,喜欢看上去很麻烦的问题。住在西雅图,闲暇时喜欢看美剧。 这本书真是太有意思了,里面充斥了作者对各种语言以及开发现象和编程风格的吐槽,但是读来并不让人反感,也不觉得偏激,真是太有才了,真羡慕可以把吐槽文也写得这么棒的人。在书中,作者着重推荐了《重构》注意是Refactori 继续阅读 »