奔跑的肥猪

导航

2012年1月17日 #

eclipse 光标变粗问题

摘要: 今天不知道到点了什么键,突然整个workspace的文件中光标变得很粗,而且一闪一闪的,更加痛苦的是输入都无效,搞得我想杀人。搞了一上午,最后发现vrapper这个插件,导致光标变粗,输入无效,解决很简单,再点击vrapper这个插件就可以了。 阅读全文

posted @ 2012-01-17 17:56 布兜兜 阅读(1527) 评论(0) 推荐(0) 编辑

2011年12月31日 #

解决输入log不一致的问题

摘要: 今天调试app时,发现在console 通过adb logcat 命令输出的日志和通过eclipse ddms输出的日志二者不一致,后来同时关掉eclipse和console,重启eclipse只用ddms查看输入就可以了,原因可能是如果有二个输出,数据可能会造成不一致,一个输出就没有这个问题了。 阅读全文

posted @ 2011-12-31 10:22 布兜兜 阅读(259) 评论(0) 推荐(0) 编辑

2011年12月28日 #

DI 注入的三种方式

摘要: 最近在看spring in action,提到di注入的三种方式,觉得挺有意思。1. set 注入2. 构造函数注入3. 方法注入相对来说1,2 比较容易,3因为用到反射,有一种偷梁换柱的感觉,很好很强大。--玩杂技public interface Juggler { void perform();}--诗人public interface Poem { void recite();}--会玩杂技的诗人public class PoeticJuggler implements Juggler {private Poem poem;public PoeticJuggler() { super() 阅读全文

posted @ 2011-12-28 18:11 布兜兜 阅读(1481) 评论(0) 推荐(0) 编辑

2011年12月26日 #

Composite Pattern

摘要: 将物件组织成数状结构,并且让客户端以一致性的方式对待个别物件或者组合public class Circle extends Graphics {@Overridepublic void draw() { DebugLog.log("draw circle");}}public abstract class Graphics { public abstract void draw();}public class Line extends Graphics {@Overridepublic void draw() { DebugLog.log("draw line&q 阅读全文

posted @ 2011-12-26 14:09 布兜兜 阅读(184) 评论(0) 推荐(0) 编辑

command 模式

摘要: 命令模式是对命令的封装。命令模式把发出命令的责任和执行命令的责任分割开,委派给不同的对象。命令模式第一版:public class vendor {public void bake_mutton(int number) {DebugLog.log("i am baking mutton");}public void bake_pork(int number) {DebugLog.log("i am baking pork");}public void bake_beef(int number) {DebugLog.log("i am bakin 阅读全文

posted @ 2011-12-26 14:07 布兜兜 阅读(197) 评论(0) 推荐(0) 编辑

facade & Mediator

摘要: 门面模式是将原有的复杂逻辑提取到一个统一的接口,简化客户对逻辑的使用。它是被客户所感知的,而原有的复杂逻辑则被隐藏了起来。对象相互作用的方式,使得这些对象不必互相明显引用。从而使它们可以较松中介者模式包装了一系列散地耦合.Facade模式组织相关逻辑,通过统一的接口暴露给客户端public class Alarm implements Triggerable {@Overridepublic void Activate() {DebugLog.log("activate the Alarm");}@Overridepublic void Deactiviate() {Deb 阅读全文

posted @ 2011-12-26 13:59 布兜兜 阅读(277) 评论(0) 推荐(0) 编辑

proxy 模式

摘要: Proxy 分二种,一种称之为静态代理,一种称为动态代理。public class Person { protected String name; protected String ID; public String getName() { return name; } public String getID() { return ID; } }public class Buyer extends Person { // 收入证明 private String income; // 婚否 private boolean married; public Stri... 阅读全文

posted @ 2011-12-26 13:44 布兜兜 阅读(373) 评论(0) 推荐(0) 编辑

2011年12月23日 #

Adapter pattern

摘要: 把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。具体例子来说,我们都用过充电器,有些充电器的接口是圆形的,有些是方形的, 那如果我要在圆形的插座上面使用方形的充电器,是应该买一个圆形的充电器还是买一个转换器将圆形变成方形?public class CylindricalPlug {public String supply(String cylinStem1, String cylinStem2) {String result = cylinStem1 + cylinStem2;DebugLog.log("the input 阅读全文

posted @ 2011-12-23 18:24 布兜兜 阅读(198) 评论(0) 推荐(0) 编辑

Observer pattern

摘要: 定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使它们能够相应的发生变化.那华尔街的例子举个例子:投资者关注股票,但他没有必要整天在证交所目不转睛的关注股票的涨落,而是应该如果股票有变化,告诉投资者就可以了。do not call me, i will call you.public class IBMStock extends Stock {}public interface IInvestor {void Update( Stock stock );}public class ShanghaiInvestor imp 阅读全文

posted @ 2011-12-23 18:15 布兜兜 阅读(142) 评论(0) 推荐(0) 编辑

Template Pattern && Strategy Pattern

摘要: Strategy将通用算法抽象为一个接口,算法用户和提供算法实现的类构成组合关系;Template Method将算法定义为一个抽象方法,让具体子类实现该抽象方法,它体现的是一种继承关系。Strategy比Template Method更灵活,适用于需要动态改变算法的情况。各位可以看这个二个模式的类图,可以发现template pattern其实是违反dip原则的,如果算法的过程本省不稳定,本人不推荐使用该模式。但是我需要指出的是template模式很强大,template pattern是我使用最为频繁的模式之一。public abstract class TestCase {protect 阅读全文

posted @ 2011-12-23 18:07 布兜兜 阅读(234) 评论(0) 推荐(0) 编辑