`
suigara
  • 浏览: 81971 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
从接触scrum到现在已经快一年了。 在这一年里,组内一直使用scrum的流程进行开发管理,虽说有些山寨,但看上去还是像那么回事的:blog分解、计划分解、立会、发布、回顾,该有的都有了,自己对于敏捷也从开始的新鲜到了现 ...
最近需要重构一个项目的代码。纯代码2.5W行。   质量就不多说了,看到这样的太多了。   就是开始的时候不知道怎么下手。   本来想通过大的架构的改变直接重构,但。。。风险太大。。。 比如,前台使用state模式进行重构,设计的业务有10几个,一来时间不允许,二来改完可能测试不到。   于是,找了一个统计代码圈复杂度、方法行数等质量参数的工具,挨个进行修改。。。按照业务逻辑提出小方法---把功能类似的代码放到单独的类中--这些都是工具做的,所以不存在什么风险。   经过几个类的修改之后,初步显现出一些效果: 1.每个类的行数变少了,职责单一了,比如一个2000行的类,经 ...
  对于工作一段时间的人来说,实现普通功能(90%以上)太容易了,google一下一大把。 如果你满足于此的话,会感觉工作是枯燥的、无趣的。   对于程序员来说,想混日子太容易了, 同样开着IDE,有良心(对工作抱着负责 ...
  看名字就知道这本书写的是重构和设计模式的关系,是连接两者的桥梁。 书一共不到300页,两周左右肯定能看完(每天看半个小时)   设计模式很早就看过,当初看的时候很激动,觉得代码太漂亮了,想怎么改就怎么改。 ...
内存升为4G,32位XP下只能识别出2.99G ,于是准备换64位win7系统,查了一下,貌似兼容性没有什么问题。 另外由于机器的光驱不太好使,所以准备从硬盘直接安装。     网上找到的方法,自己测试,完全可用:   ㈠、XP/Vista/7下准备工作 ①、解压Windows7 7600 X64位版本光盘镜像至X:\WIN7; 注:X为非32位XP/Vista/7安装所在盘且空间应不少于5GB
产品里需要包含一个文档(内容)管理的功能,找了一些开源的: KnowledgeTree,Alfresco,OpenKM。经过试用,相中了OpenKM的各种功能。但是--公司的产品前台是swing(已经好多年了,不是我能改变的),而OpenKM是web的,如果直接嵌入 ...
扁鹊三兄弟从医,魏文王问名医扁鹊说:“你们家兄弟三人,都精于医术,到底哪一位最好呢?” 扁鹊答说:“长兄最好,中兄次之,我最差。” 文王再问:“那么为什么你最出名呢?” 扁鹊答说:“ 我长兄治病,是治病于病 ...

djunit

今天分享了djunit工具的用法。 以后在开发中需要推进。 为什么要用djunit? 1.每次跑junit都需要连接数据库,而我们不关心实际数据,只要模拟就够了。 2.每次都要启动server,慢,我们也不关心server。 3.其他相关的系统(软件和硬件) 怎么办? 1.拷贝一份测试代码,去掉关联的代码,用模拟数据代替。 2.弄一个模拟的外部环境:比如不用orcale,用hsql内存数据库。 3.用流行的jmock。 上面的三个办法都有问题: 1.改动代码需要修改测试代码,对于一些要调用框架代码的业务,要拷贝出来的东西太多。 2.模拟的环境有差异,例子中提到的用hsql,如果我们用oracle ...

scrum问题记录

1.临时新增的任务导致燃尽图不准确 解决办法:少量任务不动,增加的任务较多时重新打印燃尽图 2.研究型任务需求不明确 解决办法:分配时间翻倍,多和需求人员沟通。 3.早会变成汇报 解决办法:某人说完后,随机问其他人对于此人的任务的想法,增加交流。(注意控制时间) 4.质量控制 解决办法:留出review时间,采取结对review,发现的问题全员发送。讲修改review结果作为一个单独的任务进行跟踪。 下个迭代后回来记录执行结果。

敏捷开发装备

SCM:svn/git(两个组,每个组不同)。 打包、部署:目前用ant,完全够用,如果不够的话会迁移到maven。 持续集成工具:hudson,配置简单功能强大 代码检查:checkStyle,findbugs;在hudson上每天检查一次,结果全员发邮件。 数据库版本控制:dbdeploy;还没开始 单元测试:djunit。;还没开始 集成测试:RFT(IBM测试套件,录操作脚本);还没开始,主要测试流程 JIRA:进度管理,bug跟踪;之前用过一段时间,暂时使用白板代替,比较直观,早会的时候移动。在适当的时候可能会切换回来。 WIKI:记录和分享遇到的问题及解决办法;效果还可以,已经很多内 ...
题目有点大。是在不知道该取什么标题。 这个问题属于哲学上的了。 作为普通人,相信每个人都有这样的思考:成天忙忙碌碌为了什么呢?应该怎么活才不枉此生呢? 没有答案吧。 我想比较一致的是:都想快乐、幸福的过下去。 那怎么才能快乐呢? 得到名誉、财富? 做自己喜欢的事? 还是安安稳稳的过一辈子? 不知道从哪看到--大概是这么说的: 只有学习和工作才能得到持续的快乐。 当时还不怎么认同,现在慢慢的相信了。 玩游戏、旅游、呆着,最初会感觉很好,但时间一长就感觉没意思了。 还记得大学成天打牌、游戏、睡觉的日子,现在想想,虽然谈不上后悔,但还是觉得可以有更好的打发时间的方式。 而学习知识后的 ...
泛型(generics) :带参数化类型的类或接口,比如最熟悉的List<E>。读做list of E。 原始类型(raw type):泛型中不包括尖括号的部分,上面的例子中的List  parameterized types :尖括号中的部分,例子中的E,可以是任何接口或者类。 从1 ...

自省20120302

我承认我浮躁了,大概从10年的时候就开始了。从东软出来,来到了帝都,可能是缘分,顺利的来到了这里。离开的原因,和大多数人一样,工作累、工资少、感觉自己NB了,在那学不到东西了。我希望从小希望做一个NB的人,工作后,希望在程序世界里,指挥成千上万(Kb)的代码从容不迫的完成客户的各种刁难、当出现别人解决不了的问题的时候,自己上去几分钟就给解决了,这多NB啊。所以我想做设计、做架构、直到CTO。我想这是一个热爱技术的人的终极目标。我想方向应该没有错,错就错在我太着急了。我以为自己会几个设计模式、知道点重构的皮毛、恬不知耻的认为自己看过几本架构的书就了不起了。实际上呢,回头看看自己的代码和设计,真的令 ...
  现在大多数的书籍或者思想都把软件和建筑行业做对比--这也是“工程”一词的由来。工程设计师不一定(基本上没有)从民工干起,就能推论出软件设计师不需要写好代码? 也有一些大师认为软件和艺术类似,出于自尊自己一直相信,自己是一个艺术家,代码是艺术,这也是我热爱写代码的原因。   而光从代码的角度来看,我更愿意以艺术的角度来看待它。   前两天看到一篇文章《软件开发如同木匠做桌子》:http://www.oschina.net/news/26198/it-should-only-take-you-a-few-hours   貌似有道理,然而看下他的背景,其实是木匠的“私活”,不适用于 ...
最近公司分享的,整理下备份。。。 内容节选: 目的: 不修改代码定位/解决问题 解决修改代码解决不了的问题 避免出现问题 安全(不影响正在运行程序) 复习一下知识: Jvm内存 大致分为 常量池(方法区、持久代)、堆、栈。 堆是我们最关心的,因为里面存储了对象。 GC是垃圾回收,自动处理。 分为老生代和新生代。 新生代分为伊甸园和两个空闲区。 Hotspot会运行时编译(jvm决定编译谁)。 Full gc需要stop the world 性能二八原则: 80%的问题集中在20%的因素上。 在代码中也就是80%的性能消耗在20%的代码里。 甚至95%的性能消耗在5%的代码里。 10个方 ...
Global site tag (gtag.js) - Google Analytics