相关推荐
-
Refactoring - Improving the Design of Existing Code
经典的书籍,系统的讲授了软件重构。。。。 用Java语言描述。。。
-
Java How to Program学习笔记_第十七章_Java SE 8 Lambda及Stream——章节小结(Summary)
第一次正式学习Java的Lambda编程,感觉并不陌生,在Spotfire,PL/SQL, C语言、Excel等很多地方都用过函数式编程。 Summary Section 17.1 Introduction • Prior to Java SE 8, Java supported three programming paradigms—procedural program...
-
真专家其实是热情、厚道的
每次回杭州总能有很多收获,这次尤甚,感谢博文视点周筠老师在会议开始的前几天提供会议信息,使我得以成行。 见到“真正的技术大会” 参加过很多技术大会,但大都是由厂商主导,比如IBM的DW大会,MS的TechED,BEA的eWorld等,并不是说这些会议不好,而是说其内容难免会染上太多厂商的味道,失却些中立性。所以阿里巴巴这次能安排这么大、非盈利的大会,确实让人振奋。怀着一种美好的愿望来揣测马
-
用五年时间跨越鸿沟——“大学未毕业程序员”的流水帐
(本文发表于《程序员》2007年第2期,发表时有删节。) @page { size: 8.5in 11in; margin: 0.79in } P { margin-bottom: 0.08in } H1 { margin-bottom: 0.08in } H1.western { font-family: "A
-
重构模式4
refactoring Patterns:第四部分 内容:不应 Refactoring 的场合实施Refactoring可能碰到的阻碍以及解决方案学习Refactoring获得短期效益削减Refactoring的额外开销安全
-
敏捷中国史
内容亮点 敏捷发展亲历者与推动者、资深程序员熊节作品 2000 — 2019 中国软件工程 20 年发展关键脉络 敏捷方法如何从草根流派到备受青睐,再到存有争议 无数资深老程序员上下求索突破技术瓶颈的编程岁月 首次集中呈现 IT 巨头阿里、腾讯、华为的敏捷之路 专家推荐 在我看来,软件研发人员大概可以分为四类:知道自己正在变得敏捷的践行者、知道自己并不敏捷的鼓吹者、不知道自己其实已经很敏捷的草...
-
重构模式(一)---- 介绍
石一楹 (shiyiying@hotmail.com) 浙江大学灵峰科技开发公司技术总监 2001 年 12 月 这是关于refactoring思考的第一部分内容。本文将介绍refactoring的基本概念、定义,同时解释正确、安全进行refactoring需要坚持的几个原则。
-
参考函数
在前三课,你学到了传递的参数的值,参考函数,和地址。在本节中,我们将考虑返回值返回给调用者通过所有三个方法问题。 事实上,从一个函数的地址值,它的调用者返回值,或参考作品几乎完全相同的方式作为参数传递给一个函数是。所有的好处和缺点的每个方法都存在。两者之间的主要差别是,数据流的方向是相反的。然而,有一个更增添了几分复杂,因为在一个函数的局部变量超出范围的函数返回时,我们需要考虑这种效果在每个
-
Refactoring Improving The Design of Existing Code
Refactoring Improving The Design of Existing Code 重构已有代码
-
重构模式5
refactoring Patterns:第五部分 内容:增量迭代Moving Target拥抱变化-Refactoring和XP参考资料关于作者相关内容:该系列的其他部分
-
争议很大的问题
大家好,早上看到读者在群里讨论这些面试题:其中,第一个问题「在 4GB 物理内存的机器上,申请 8G 内存会怎么样?」存在比较大的争议,有人说会申请失败,有的人说可以申请成功。这个问题在没有前置条件下,就说出答案就是耍流氓。因为在 32 位操作系统和 64 位操作系统场景下,答案是不同的。另外,我们还要看申请完 8G 内存后会不会被使用,会被使用是一种情况,不会被使用又是...
-
杭州ERPTAO组织成功举办第一次技术讲座
2004年2月28日,在浙江大学软件学院和CSDN网站的大力支持下,ERPTAO组织在浙大成功地举办了第一次软件技术讲座。有上百名专业软件开发者及爱好者到场参加,两位主讲人熊节(也就是我本人)和石一楹为大家送上了关于重构思想及O/R mapping技术的演讲,现场气氛相当热烈。稍后我们会按照签到表上的email地址给到场听众发送今天的讲义及相关资料,并在网上提供下载。今后我们会不定期地经常举行
-
重构模式3
refactoring Patterns:第三部分 内容:应用Refactoring需要考虑的问题数据库接口改变和Published Interface用Refactoring思想武装自己的设计编程语言支持Refactori
-
Refactoring Improving the Design of Existing Code
重构—改善既有代码的设计,MartinFowler著 熊节译,北京:人民邮电出版社,2010.4
-
重构模式6
refactoring Patterns:第六部分 内容:简化设计设计模式关于作者相关内容:该系列的其他部分Refactoring和软件设计 石一楹 (shiyiy
-
Stream Pipelines
Stream Pipelines 首先回顾一下容器执行Lambda表达式的方式,以ArrayList.forEach()方法为例,具体代码如下: // ArrayList.forEach() public void forEach(Consumer<? super E> action) { … for (int i=0; modCount == expectedModCount && i < size; i++) { action.accept(elementData[i]
-
Java Stream流之BigDecimal求和
List<Entity> roleEdit = roleService.findAll(roleEntity); roleEdit.stream().map(re -> re.getNum() == null ? BigDecimal.ZERO : re.getNum()).reduce(BigDecimal.ZERO,BigDecimal::add);
-
Java8的Stream操作
Java8的Stream操作,集合处理很是方便 1. 写在前面 点击查看,Java8 的新特性 2. 创建 Stream 有许多方法可以创建不同源的流实例。一旦创建,实例将不会修改其源,因此允许从单个源创建多个实例 2.1. Empty Stream 如果创建空流,要使用empty()方法,避免为没有元素的流返回Null. Stream<String> streamEmpty = St...
-
软件开发 —— 重构(refactor)
0. 代码坏味道 Large Class,过大的类;Large method,过长的(成员)函数; 1. 基本内涵 在不改变代码外在行为的前提下对代码做出修改,以改进代码的内部结构的过程。 —— 《重构》(Martin Fowler) 只是为什么要修改已经能够工作的内部结构呢?代码模块的能够工作不是唯一要求。每一个软件模块都具有三种职责。 第一个职...
-
重构 改善既有代码的设计 第二版 - Bad Smells in Code
重构 改善既有代码的设计 第二版 - Bad Smells in Code 神秘的名字 Change Function Declaration Rename Variable Rename Field 重复的代码 Extract Function 代码类似但是不完全相同时Slide Statements 如果重复代码位于公共父类的子类中Pull Up Method 长函数 Extr...
3 楼 123003473 2010-01-25 17:04
2 楼 123003473 2010-01-25 17:04
1 楼 peacock 2009-05-06 10:32