`
shuofenglxy
  • 浏览: 194470 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
原作者:石伟。原文出处 http://ultimatearchitecture.net/index.php/2010/09/12/merkle-tree/   Merkle Tree, 又被称为Hash Tree ,是一种树状Hash结构,1979年由Ralph Merkle发明。 如前面的blog所述,Merkle Tree 首次在NoSQL存储系统中的应用是在Amazon ...
重构这个如今coding最时髦的词,在各个coder之间广泛流传。重构俨然已经成为了经验丰富的代名词。最近有机会开始重构一些东西,在这里回顾一下以前的重构基础吧。        重构的时机:什么时候重构? 重构绝非没事的时候改动下代码让代码更美观,这个意义真的不大,太浪费精力了。当发现以前书写的代码不满足目前的功能需求时,那么可以考虑重构;当以前的代码不满足目前的性能要求时,需要重构(甚至于重写,重写要慎重);当可预见的未来里,可能会出现功能性能瓶颈时,需要重构。总而言之,没有明确的有价值的目的期望,那还是let it alone比较好。 重构的方式:怎样开始重构? ...
最近又开始读重构这本书了,这次换成了原版。 同时最近也开始当小兵,在project里完成一些功能。 面对着基于遗留系统的设计,重构又要祭出来了。 这里边回顾,边总结,边学习,边理解下重构的时机哈。 进入项目的时候需求PK什么的并没有参加,只是一无所知的直接去参加需求确认会了。 然后就进入项目了。根据PM的分配,接手了一些系统交互的功能设计和数据处理,另外由于需求的变化重构一期的功能设计。         从数据库表格的重构开始,涉及了数据迁移,功能的变更,几乎是完整的重新实现了原有功能,这里可以看到设计的缺陷,一二期相差并不是很久远,却要完整的重构,对资源的浪费太那啥了。所以,重构并不 ...
  本文来自百度文库, http://wenku.baidu.com/view/424326270722192e4536f650.html 关于bean的作用域,还可以参见 http://blueram.iteye.com/blog/352846   Spring Bean 作用域介绍: singleton : Spring  Ioc 容器只会创建该 Bean 的唯一实例,所有的请求和引用都只使用这个实例 Property:  每次请求都创建一个新实例 request:    在一次 Http 请求中,容器 ...
  这是一篇转载,原文来自于 http://www.blogjava.net/huxiaowi/archive/2009/06/23/283775.html?opt=admin 作者是 Charleehu     在 spring 中,从 BeanFactory 或 ApplicationContext 取得的实例为 Singleton ,也就是预设为每一个 Bean 的别名只能维持一个实例,而不是每次都产生 一个新的对象 使用 Singleton 模式产生单一实例,对单线程的程序说并不会有什么问题,但对于多线程的程序,就必须注意 ...
汉诺塔是貌似递归入门的引导题目,把这个过程写下来,mark一下递归。没别的用处。 package hanoi; public class Hanoi { /** * 以A表示起始柱子,C表示结果柱,B表示中间柱 * * @param args */ public static void main(String[] args) { int n = 4; hanio(n, 'A', 'C', 'B'); } /** * 递归步骤如下: 先将前n-1块盘子挪到中间柱 然后将最后一块盘子挪到结果柱 最后将前n-1块柱子从中间柱挪想结 ...
全排列问题:这是描述数字的全部排列结果的一类问题。有时候经常参杂着一些限制条件。比如12345的全排列,其中34不能连着出现等等。本文以简单的全排列为对象,阐述递归的思想。 递归,要有终止条件,然后向终止条件靠 ...
这里是以前写的算法总结了。照搬过来而已。 package SortSet; import java.math.*; public class SortSetTest { // 插入排序 public static float[] InsertSort(float x[]) { float temp; int tag; for (int i = 0; i < x.length; i++) { temp = x[i]; tag = i; while (tag > 0 && x[tag - 1] >= t ...
二叉查找树代码大致如下:   二叉树节点类:   package RBTree; public class BSTreeNode { int data; BSTreeNode lchild; BSTreeNode rchild; }   二叉树的功能实现类: package RBTree; public class BSTree { BSTreeNode root = null; // 插入节点 public void InsertNode(BSTree T, int data) { BSTreeNode node = new BSTr ...
这里包含了三种求得递增子序列的算法。 是以前写的代码,这里就拖过来了。 import java.util.ArrayList; import java.util.Collections; public class LIS { public static void LIS(int[] L) { // 时间复杂度为O(n^3) Long sTime = System.nanoTime(); int n = L.length; int[] A = new int[n];// 用于存放前i个数值中的递增子序列数值个数; A[0] = 1;// 以第a1为末元素 ...
全员会议。 不超过两个小时为宜。 这个主要是组成团队,培养团队士气,了解项目背景等。   评估会议 不应超过4个小时。 根据产品负责人产出的产品backlog,由产品负责人推动,对产品backlog中的用例条目进行工作量估算,最终产出一个优先级明确的,已有初步估算结果的比较稳定的产品backlog.   sprint计划会议 一般时间不超过4个小时。如果超时过多,则应拆分为两个会议。 根据评估会议的产品backlog,产品负责人和团队master以及团队一起,进行产品backlog到sprint的划分,选取合适的用例条目生成每一个sprint合适的task(story),然后 ...

Pigs and chickens

      pigs and chickens 是scrum中的一个隐喻。用来比喻scrum每日晨会中与会人员的角色。         团队成员中,自己需要对story负责的人称为pigs ,必须在会中发言,说明完成的工作,将要的工作,遇到的barrier等。chickens指不直接对story完成负责的成员,为了保证晨会的有效简短,尽量避免此类成员负责。         团队master要合理控制每日晨会的时间和发言人,保证pigs都有发言,而chickens在晨会中主要以聆听为主,要控制chickens发言。  
  SCRUM是敏捷开发实践中团队管理和沟通交流,辅助项目开发的一个framework.这个framework指明了大方向,细节上需要团队经验的积累 和调整,以使得团队的产品开发更有效率。SCRUM和XP并不是两大门派,而是以不同的视角来看待软件开发的过程,前者侧重于管理,理论,沟通和进度控 制。后者侧重于编程实践。像后者中的测试用例驱动(TDD),结对编程都可以跟SCRUM结合来改进开发过程。     SCRUM团队中有这样三类角色, product owner( 产品经理) ,scrum master(团队master), team(团队成员). 产品经理负责产品的业务需求 ...
今天突然被人问 equal hashcode ==的区别。我支支吾吾的说 == 比较引用地址,equal比较值。hashcode相同不一定equal,equal一定hashcode相同。 说完觉得没底,就搞出来仔细研究下。 java 中有值类型和对象类型,对于值类型,那只能用==来比较了。对于对象,则可以用==来比较是否引用的为同一个对象;用equals来比较对象的值是否相同。这么看string的==和equal的区别就简单了吧? string就是对象嘛。另外注意,对于string,会放在常量池中,除非用特定的new来创建心字符串对象,其他情况都会看该池中存在不存在,如果存在,就复用。 ...
java util.regex正则表达式处理。更多正则表达式可以参见http://jakarta.apache.org/oro/   package pattern; import java.util.regex.Matcher; import java.util.regex.Pattern; public class PatternDemo { public static void main(String[] args){ //重复利用这个Pattern p Pattern p = Pattern.compile("a*b"); ...
Global site tag (gtag.js) - Google Analytics