2013年7月11日

简化问题的模式

摘要: 简化问题的模式 门面(Facade)模式把一组复杂的接口隐藏在一个简单且特定的接口后面。 中介者(Mediator)模式把对象之间的引用关系包装在一个特定的容器里面。 组合(Composite)模式描述了整体与部分的结构关系,并且允许用一致的方式处理这个结构。外观模式:中介者模式组合模式来自为知笔记(Wiz) 阅读全文

posted @ 2013-07-11 13:56 蓝风笨笨 阅读(200) 评论(0) 推荐(0) 编辑

模板模式和策略模式

摘要: 模板模式和策略模式的应用情景类似,但实现方式不同,前者使用继承,后者使用委托。 模板模式有可能是最“古老”的模式之一,在使用面向对象技术的早期,“继承”大行其道,很多设计人员可能不自觉地使用过模板模式。模板模式的缺点是把具体实现和通用算法紧密地耦合起来,使得具体实现只能被一个通用算法操纵。然而在继承关系中,父类的信息可以更多地暴露给子类,这种(违背面向对象设计原则的)微妙的沟通在一些特定应用中显得更加灵活和方便。 策略模式是委托的经典用法。策略模式消除了通用算法和具体实现的耦合,使得具体实现可以被多个通用算法操纵。策略模式也增加了类层次,比模板模式复杂。 模板模式和策略模式通常可以互相替... 阅读全文

posted @ 2013-07-11 13:53 蓝风笨笨 阅读(1369) 评论(0) 推荐(0) 编辑

2013年7月10日

为什么要优先使用组合而不是继承

摘要: 继承具有如下优点:实现新的类非常容易,因为基类的大部分功能都可以通过继承关系自动赋予派生类;修改或者扩展继承来的实现非常容易;只要修改父类,派生的类的行为就同时被修改了。初学面向对象编程的人会认为继承真是一个好东西,是实现复用的最好手段。但是随着应用的深入就会发现继承有很多缺点:继承破坏封装性。基类的很多内部细节都是对派生类可见的,因此这种复用是“白箱复用”;如果基类的实现发生改变,那么派生类的实现也将随之改变。这样就导致了子类行为的不可预知性;从基类继承来的实现是无法在运行期动态改变的,因此降低了应用的灵活性。 继承关系有很多缺点,如果合理使用组合则可以有效的避免这些缺点,使用组合关系将系统 阅读全文

posted @ 2013-07-10 12:47 蓝风笨笨 阅读(1456) 评论(0) 推荐(0) 编辑

2012年11月9日

SequenceFile介绍

摘要: SequeceFile是Hadoop API提供的一种二进制文件支持。这种二进制文件直接将<key, value>对序列化到文件中。一般对小文件可以使用这种文件合并,即将文件名作为key,文件内容作为value序列化到大文件中。这种文件格式有以下好处:1)支持压缩,且可定制为基于Record或Block压缩(Block级压缩性能较优) 2)本地化任务支持:因为文件可以被切分,因此MapReduce... 阅读全文

posted @ 2012-11-09 13:00 蓝风笨笨 阅读(609) 评论(0) 推荐(0) 编辑

基于Hadoop Sequencefile的小文件解决方案

摘要: 一、 概述 小文件是指文件size小于HDFS上block大小的文件。这样的文件会给Hadoop的扩展性和性能带来严重问题。首先,在HDFS中,任何block,文件或者目录在内存中均以对象的形式存储,每个对象约占150byte,如果有1000 0000个小文件,每个文件占用一个block,则namenode大约需要2G空间。如果存储1亿个文件,则namenode需要20G空间。这样namenode... 阅读全文

posted @ 2012-11-09 12:18 蓝风笨笨 阅读(1719) 评论(0) 推荐(0) 编辑

2012年11月1日

Hadoop命令解释

摘要: hadoop命令 阅读全文

posted @ 2012-11-01 11:10 蓝风笨笨 阅读(305) 评论(0) 推荐(0) 编辑

2012年10月19日

Hadoop源代码分析之Configuration

摘要: 分析Hadoop的Configuration类 阅读全文

posted @ 2012-10-19 10:50 蓝风笨笨 阅读(107) 评论(0) 推荐(0) 编辑

2012年1月31日

onSaveInstanceState和onRestoreInstanceState触发的时机

摘要: 当某个activity变得“容易”被系统销毁时,该activity的onSaveInstanceState就会被执行,除非该activity是被用户主动销毁的,例如当用户按BACK键的时候。 何为“容易”?言下之意就是该activity还没有被销毁,而仅仅是一种可能性。这种可能性有哪些?通过重写一个activity的所有生命周期的onXXX方法,包括onSaveInstanceState和onR... 阅读全文

posted @ 2012-01-31 12:50 蓝风笨笨 阅读(221) 评论(0) 推荐(1) 编辑

2012年1月29日

Android 获取AndroidManifest.xml文件versionCode,versionName属性 .

摘要: 1 try {2 3 packagemanager pm = getPackageManager();4 5 PackageInfo pinfo = pm.getPackageInfo(gerPackageName(), PackageManager.GET_CONFIGURATIONS);6 String versionCode = pinfo.versionName;7 Strint versionName = pinfo.versionCode;8 } catch (NameNotFoundException e) {9 }A... 阅读全文

posted @ 2012-01-29 12:52 蓝风笨笨 阅读(8456) 评论(0) 推荐(1) 编辑

2012年1月19日

术语解释

摘要: PX px就是pixel的缩写啦,pixel即像素,它不是自然界的长度单位。px是就是一张图片中最小的点,一张位图就是由这些点构成的。1024px就是1024像素,最简单的你可以在windows桌面属性里的“设置”看到,如果是1024×768,也就是说水平方向上有1024个点,垂直方向上有768个点。谁能说出一个“点”有多长多大么?可以画的很小,也可以很大。如果点很小,那画面就清晰,我们称它为“分辨率高”,反之,就是“分辨率低”。所以,像素的大小是会“变”的,也称为“相对长度”。 阅读全文

posted @ 2012-01-19 10:36 蓝风笨笨 阅读(315) 评论(0) 推荐(0) 编辑

导航