• 等级
  • 3400195 访问
  • 220 原创
  • 28 转发
  • 201 排名
  • 2919 评论
  • 3883 获赞

十年磨一剑——《Java设计模式》正式出版

        十年磨一剑,《Java设计模式》于2018年3月正式出版,感谢清华大学出版社和各位的大力支持!笔者自认为该书是国内最好的Java设计模式图书之一!,低调!      本书内容丰富,实例完整,主要特点如下:● 内容丰富,详细讲解7个面向对象设计原则和24个常用设计模式● 实例驱动,提供24个模式应用实例的完整设计方案和程序代码● 学练结合,包含超过150道习题和3套设计模式模拟试题 ...

2018-03-18 17:07:48

《C#设计模式(第2版)》来袭——刘伟诚意之作

    《C#设计模式(第2版)》已正式出版,感谢清华大学出版社和各位的大力支持!      出版社: 清华大学出版社      书号:9787302485704            京东链接    当当链接          在新版中增加了不少设计模式练习题和综合模拟题,大家可以好好考查一下对设计模式的理解和掌握程度!    如果需要模拟题的参考答案,可以发送邮件至:weiliu_china@...

2018-03-18 16:51:39

软件重构过程中的思维转换: 遗留代码如何变废为宝

“我开始收到各式各样的邮件,人们都表示‘天呐!我也是这样!’。”她说,“我开始去传播这条信息,告诉大家重新建构遗留代码这件事其实非常有价值,凭此来吸引合适的人。”编者注:Andrea Goulet是Corgibytes的首席执行官,她的公司专注于处理、改进并精简企业现有的代码库。        Andrea Goulet和她的商业合作伙伴坐在起居室里,随意地聊着她们的战略计划方案。她们一直在试图寻

2016-09-15 20:36:02

历年系统架构设计师考试之设计模式试题-2012年

2012年系统架构设计师考试下午试题中出现了一道25分的设计模式大题,上午仍旧是5道选择题,可以说是从2009年开考以来设计模式试题量最多的一年。Sunny友情建议:建议大家先做做这些试题,看是否能够正确解答,如果在解答的同时能够拿出具体的设计和实现方案,我相信一定会受益匪浅!

2014-03-17 22:11:51

【Eclipse AST】AST的修改

AST的修改主要包括三个方面的内容:修改节点、移动节点和创建节点。本文将通过一个综合实例来说明如何修改AST,并通过修改AST来修改源代码。

2014-03-07 20:04:19

【Eclipse AST】AST的创建

对于源代码优化过程而言,借助前文所介绍的AST访问与解析,可以自动查找出哪些地方需要优化,或者说能够发现优化或重构“时机”。接下来要做的就是采取相应的优化措施,在AST中创建节点(包括创建新的AST)或修改原有节点。本文将介绍如何创建一棵AST,以及通过AST来创建Java源代码。

2014-03-02 23:28:43

【Eclipse AST】AST的获取与访问

从本文开始将由浅入深向大家介绍AST的使用。Eclipse中的Eclipse JDT提供了一组访问和操作Java源代码的API,Eclipse AST是其中一个重要组成部分,它提供了AST、ASTParser、ASTNode、ASTVisitor等类,通过这些类可以获取、创建、访问和修改抽象语法树。

2014-02-10 23:47:17

软件工程研究领域最顶级的两个期刊

本文将向大家介绍软件工程研究领域最顶级(最牛X)的两个期刊,分别是IEEE Transactions on Software Engineering (TSE)和ACM Transactions on Software Engineering Methodology (TOSEM)。TSE和TOSEM代表了当前软件工程领域国际最高研究水平,在这两个期刊上发文章非常难,其中很多论文都是软件工程领域的经典之作,具有极高的学术价值和实用价值。如果从事软件工程研究,TSE和TOSEM是非常重要的参考资料,会给软件工

2014-02-09 23:12:08

【Eclipse AST】AST与ASTView简介

要想自己设计并实现一个代码自动分析、优化和重构工具,得先理解代码;要想理解代码,得先用一个好的数据结构来存储和表示所读取的代码。基于程序代码本身的层次结构,用树状结构来表示是再好不过的了。抽象语法树(Abstract Syntax Tree, AST)使用树状结构来表示源代码的抽象语法结构,树上的每一个节点都对应源代码中的一种结构,它作为程序代码的一种中间表示形式,在代码分析、代码重构、语言翻译等领域得到广泛的应用。

2014-02-06 22:52:31

六种可定量分析的代码味道

传统的代码味道(Bad Smells in Code)识别主要依赖开发人员的经验,这将导致代码味道识别效率低,且容易漏掉很多代码味道。因此,设计和开发自动化的代码味道识别工具已成为软件工程研究的一个分支。国内外学者已经陆续提出了一些代码味道自动识别方法,其中有一类方法是基于软件度量和统计量的,可以通过定量分析和计算来探测代码中是否存在这些代码味道,而且很多商业和开源的代码分析和优化工具也使用了其中一些方法,例如iPlasma、inFusion、PMD、Checkstyle、JDeodorant等中,本文将介

2014-02-06 00:22:23

七款代码味道识别工具【简介】

代码味道识别工具 (Code Smell Detection Tools, CSDT)既可以应用于软件开发阶段,也可以应用于软件维护阶段。目前大部分IDE都集成了自动或者半自动重构工具,但是根据国外研究人员的调查发现,真正在软件开发和维护中使用这些工具的人并不多,其中有一个很重要的原因是不知道何时该重构,也就是说找不准重构时机,因此重构时机的自动识别具有很大的实用价值。

2014-01-18 23:50:19

【Java重构系列】重构31式之搬移方法

毋容置疑,搬移方法(Move Method)应该是最常用的重构手段之一,正因为太常用而且较为简单,以至于很多人并不认为它是一种很有价值的重构,但事实并非如此,在最初的代码诞生之后,有些方法可能会被放在一些不合适的地方,例如,一个方法被其他类使用比在它所在的类中的使用还要频繁或者一个方法本身就不应该放在某个类中时,我们应该考虑将它移到更合适的地方。搬移方法,顾名思义就是将方法搬移至合适的位置,如将方法搬移到更频繁地使用它的类中。

2014-01-11 00:41:34

【Java重构系列】重构31式之封装集合

2009年,Sean Chambers在其博客中发表了31 Days of Refactoring: Useful refactoring techniques you have to know系列文章,每天发布一篇,介绍一种重构手段,连续发文31篇,故得名“重构三十一天:你应该掌握的重构手段”。在英文原文中提供了C#版的重构实例,对重构手段的描述较为精简,Sunny将这些实例都改为了Java版本,并结合个人理解对代码实例和重构描述进行了适当的补充和完善。

2014-01-10 02:27:18

数据可视化:一张图胜过千言万语

本文转自:【云创存储】http://www.cstor.cn/textdetail_5768.html,特此说明!              信息爆炸时代,一组经过精心设计、形象生动的信息图往往要比一篇深度长文章更容易赢得眼球和青睐。在社交媒体上,你会发现,出色的可视化产品很容易就获得海量转发和分享。  “媒介即讯息”这是着名媒介理论家马歇尔·麦克卢汉在20世纪时就给出的结论。在他老人家看来,媒介

2014-01-08 22:07:26

Sunny谈重构

按照软件工程大神Martin Fowler的定义,重构就是在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。这是重构的定义,简单来说就是不改变软件的功能,优化软件设计和代码,让软件更易于扩展和维护,当然也包括易于复用。

2013-12-31 00:51:29

对模式的十大误解

葛子昂译 这些日子,模式引起了大家强烈的兴趣,同时还伴随着一些迷惑、诧异和误解。这在一定程度上体现了主流软件开发人员认为这个领域有多么新,虽然从严格意义上说,它并不是一个新领域。这个领域的快速发展,也造成了一些空白。作为模式的倡导者,我们对此负有一定的责任:我们虽然一直努力让大家理解和接受模式([BMR+96、Coplien96、CS95、GoF95、MRB98和VCK96]),但是工作并不彻底。

2013-12-29 22:06:51

史上最全设计模式导学目录(完整版)

圣诞献礼!          2012年-2013年,Sunny在CSDN技术博客中陆续发表了100多篇与设计模式相关的文章,涵盖了七个面向对象设计原则和24个设计模式(23个GoF设计模式 +  简单工厂模式),为了方便大家学习,现将所有与设计模式学习相关文章的链接进行了整理,希望能给各位带来帮助!

2013-12-24 23:15:16

创新教育实例之“三国人物关系模型”

最近与一位从事高校软件工程教育的同仁和挚友聊天,谈到如何提高学生的创新性思维,两人不免大肆吐槽一番,有谈到过目前高校教育体制、学校的培养方案等等等等,但是这些东东无论是作为我们老师还是学生,只有微不足道的建议权,没有任何决策权,而且有些东西根深蒂固,在短时间内根本无法解决。因此,我们只能从现实出发,看能否尽大的努力,从课堂和实训教育的角度来让学生的创新性思维有所提高。

2013-12-21 22:29:08

Sunny谈软件架构

软件架构是软件工程一个很重要的分支,随着软件规模的扩大和软件寿命的延长,软件架构也越发重要。就像建筑领域,盖一个狗窝不需要进行分析与设计,但是如果是要盖一座万人体育场或者摩天大楼,那一定会离不开设计师。软件工程与之同理,好的架构能够决定软件的成败。软件架构不只是简单的分层或者划分模块,它包括更多的内容。

2013-12-19 23:11:44

一道关于高朋网(Groupon)的设计模式题(英文版)

Groupon has already been called the “fastest growing company in history” by the Forbes magazine. In it’s second full year of business, 2010,  it pulled down $713.4 million in revenue. The revenue a ye

2013-12-18 23:05:31

博客专家

Liuwei-Sunny

刘伟,中南大学计算机应用技术博士,国家认证系统分析 师,国家认证系统架构设计师(全国第四名),高级程序员,数据库系统工程师,MCSE,MCDBA,希赛顾问团专业顾问。 ...展开 收起
关注
  • 中国
奖章
  • 博客专家