05 2013 档案

摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229 今天我们学习一下如何利用CheckBox实现对联系人记录的多选删除,多选删除功能在平时工作中经常会遇到,通常有两种解决方案:CheckBox实现和ActonBar实现。本人偏爱CheckBox样式的多选模式,因为它实现起来比较灵活多变,样式变换也很容易。而ActionBar的多选样式变换相对而言工作量会大很多。1案例技术要点(待整理)2案例代码陈列工程包目录AndroidManifest.xml ... 阅读全文
posted @ 2013-05-31 12:27 Innosight 阅读(390) 评论(0) 推荐(0) 编辑
摘要:一、概述 为其他对象提供一种代理以控制对这个对象的访问。二、适用性1.远程代理(RemoteProxy):为一个对象在不同的地址空间土工局部代表。2.虚代理(VirtualProxy):根据需要创建开销很大的对象。3.保护代理(ProtectionProxy):控制对原始对象的访问。4.智能代理(SmartReference):取代简单的指针,在访问对象时执行一些附加操作。三、参与者1.Proxy:保存一个引用使得代理可以访问实体。若RealSubject和Subject的接口相同,Proxy会引用Subject。提供一个与Subject的接口相同的接口,这样代理就可以用来替代实体。控制... 阅读全文
posted @ 2013-05-31 12:13 Innosight 阅读(216) 评论(0) 推荐(0) 编辑
摘要:一、概述 为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。二、适用性1.当你要为一个复杂子系统提供一个简单接口的时候。子系统往往因为不断演化而变得越来越复杂。大多数模式使用时都会产生更多更小的类。这使得子系统更具可重用性,也更容易对子系统进行定制,但这也给那些不需要定制子系统的用户带来一些使用上的困难。外观模式可以提供一个简单的缺省视图,这一视图对大多数用户来说已经足够,而那些需要更多的可定制性的用户可以越过外观层。2.客户程序与抽象类的实现部分之间存在着很大的依赖性的时候。引入外观模式将这个子系统与客户以及其他的子系统分离,可以提高.. 阅读全文
posted @ 2013-05-31 12:11 Innosight 阅读(275) 评论(0) 推荐(0) 编辑
摘要:一、概述 动态地给一个对象添加一些额外的职责。装饰模式比生成子类更为灵活。二、适用性1.在不影响其他对象的情况下,以动态、透明的方式给但个对象添加职责。2.处理那些可以撤销的职责。3.当不能采用生成子类的方式进行扩展的时候。三、参与者1.Component:定义一个对象接口,可以给这些对象动态地添加职责。2.ConcreteComponent:定义一个对象,可以给这个对象添加一些职责。3.Decorator:维持一个指向Component对象的指针,并且定义一个与Component接口一致的接口。4.ConcreteDecorator:向组件添加职责。四、类图五、示例Componentp... 阅读全文
posted @ 2013-05-31 12:10 Innosight 阅读(190) 评论(0) 推荐(0) 编辑
摘要:一、概述 将对象组合成树型结构以表示“部分--整体”的层次关系。组合模式使得用户对单个对象和组合对象的使用具有一致性。二、适用性1.你想表示对象的部分--整体层次结构的时候。2.你希望用户忽略组合对象与单个对象的不同的时候,用户将统一地使用组合结构中的所有对象。三、参与者1.Component:为组合中的对象声明接口。在适当的情况下,实现所有类共有接口的缺省行为。声明一个接口用于访问和管理Component的子组件。在递归结构中定义一个接口,用于访问一个父部件,并且在适当的情况下实现它。2.Leaf:在组合中表示叶节点对象,叶节点没有子节点。在组合中定义节点对象的行为。3.Composi... 阅读全文
posted @ 2013-05-31 12:09 Innosight 阅读(211) 评论(0) 推荐(0) 编辑
摘要:一、概述 将类的抽象部分与实现分部分离开来,使它们都可以独立地变化。二、适用性1.你不希望在抽象和实现之间有一个固定的绑定关系的时候。例如:在程序运行时实现部分应可以被选择或切换。2.类的抽象以及实现都应该可以通过生成子类的方法加以扩充的时候。桥接模式使你可以对不同的抽象接口和实现进行组合,并且分别对它们进行扩充。3.对一个抽象的实现部分的修改应对客户不产生影响的时候,即客户的代码不必重新编译。4.你必须将一个对象分解成两个部分的时候。5.你想在多个对象间共享实现(可能使用引用计数),但是同时要求客户并不知情的时候。三、参与者1.Abstraction:定义抽象类的接口。维护一个指向Im... 阅读全文
posted @ 2013-05-31 12:08 Innosight 阅读(193) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229MultiSelectDeleteActivity.javapackage cn.lynn.multisel; import java.util.HashMap; import java.util.HashSet; import java.util.Map; import android.app.Activity; import android.app.AlertDialog; import android.app.ProgressDialog; import android.content.. 阅读全文
posted @ 2013-05-31 04:33 Innosight 阅读(270) 评论(0) 推荐(0) 编辑
摘要:一、概述 将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。二、适用性1.你想使用一个已经存在的类,但是它的接口不符合你的要求的时候。2.你想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(即那些接口肯不一定兼容的类)协同工作的时候。3.你想使用一些已经存在的子类,但是不可能对每一个都进行子类化以匹配它们的接口的时候。对象适配器可以适配它的父类接口。三、参与者1.Target:定义Client使用的与特定领域相关的接口。2.Adaptee:定义一个已经存在的接口,该接口需要适配。3.Adapter:对Adapte... 阅读全文
posted @ 2013-05-31 04:07 Innosight 阅读(172) 评论(0) 推荐(0) 编辑
摘要:一、概述 运用共享技术有效地支持大量细粒度的对象。二、适用性1.当一个应用程序使用了大量的对象的时候。2.由于使用大量的独享而造成很大的存储开销的时候。3.对象的大多数状态都可变为外部状态的时候。4.如果删除对象的外部状态,那么可以用相对较少的共享独享取代很对组对象的时候。5.应用程序不依赖于对象标识的时候。由于享元模式对象可以被共享,对于概念上明显有别的对象,标识测试将返回真值。三、参与者1.Flyweight:描述一个接口,通过这个接口Flyweight可以接受和作用于对象外部状态。2.ConcreteFlyweight:实现Flyweight接口,并为内部状态(如果有)增加存储空间... 阅读全文
posted @ 2013-05-30 20:12 Innosight 阅读(198) 评论(0) 推荐(0) 编辑
摘要:1概述 保证一个类仅有一个实例,并提供一个访问它的全局访问点。2适用性1.当类只能有一个实例而且客户可以从一个总所周知的访问点访问它的时候。2.当这个唯一实例应该是通过子类化可扩展的,并且客户应该无需更改代码就能使用一个扩展的实例的时候。3参与者Singleton:定义一个Instance操作,允许客户访问它的唯一实例。Instance是一个类的操作,可能复杂创建它自己的唯一实例。4类图5示例Singletonpackage cn.lynn.singleton; public class Singleton { private static Singleton instanc... 阅读全文
posted @ 2013-05-30 16:09 Innosight 阅读(161) 评论(0) 推荐(0) 编辑
摘要:在UML类图中,常见的有以下几种关系: 泛化(Generalization)、实现(Realization)、关联(Association)、聚合(Aggregation)、组合(Composition)、依赖(Dependency)。一、 泛化(Generalization)【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。例如:老虎是动物的一种,即有老虎的特性也有动物的共性。【箭头指向】:带三角箭头的实线,箭头指向父类。二、实现(Realization)【实现关系】:是一种类与接口的关系,表示类是接口所有特征和行为的实现。【箭头指向】:带... 阅读全文
posted @ 2013-05-30 15:42 Innosight 阅读(441) 评论(0) 推荐(0) 编辑
摘要:一、概述 提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。二、适用性1.一个系统要独立于它的产品的创建、组合和表示的时候。2.一个系统要由多个产品系列中的一个来配置的时候。3.当你要强调一系列相关的产品对象的设计以便进行联合使用的时候。4.当你提供一个产品类库,而只想显示它们的接口而不是实现的时候。三、参与者1.AbstractFactory:声明一个创建抽象产品对象的操作接口。2.ConcreteFactory:实现创建具体产品对象的操作。3.AbstractProduct:为一类产品对象声明一个接口。4.ConcreteProduct:定义一个将被相应地具体工程创... 阅读全文
posted @ 2013-05-30 13:55 Innosight 阅读(216) 评论(0) 推荐(0) 编辑
摘要:一、概述 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。二、适用性1.当一个系统应该独立于它的产品创建、构成和表示的时候。2.当要实例化的类是在运行时刻指定的时候,例如:通过动态装载。3.为了避免创建一个与产品类层次平行的工厂类层次的时候。4.当一个类的实例只能有几个不同状态组合中的一种的时候。 建立相应数目的原型并克隆它们可能要比每次用合适的状态手工实例化该类更方便一些。三、参与者1.Prototype:声明一个克隆自身的接口。2.ConcretePrototype:实现一个克隆自身的操作。3.Client:让一个原型克隆自身从而创建一个新的对象。四、类图五、示... 阅读全文
posted @ 2013-05-30 12:59 Innosight 阅读(189) 评论(0) 推荐(0) 编辑
摘要:一、概述 将一个复杂对象的构建与其表示分离开来,使得同样的构建过程可以创建不同的表示。二、适用性1.当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式的时候。2.当构造过程必须允许被构造的对象有不同的表示的时候。三、参与者1.Builder:为创建一个Product对象的各个部件指定抽象接口。2.ConcreteBuilder:实现Builder接口以构造和装配该产品的各个部件。3.Director:构造一个使用Builder接口的对象。4.Product:表示被构造的复杂对象。ConcreteBuilder创建该产品的内部表示并定义它的装配过程。包括定义组成部件的类,以及... 阅读全文
posted @ 2013-05-30 07:19 Innosight 阅读(218) 评论(0) 推荐(0) 编辑
摘要:一、概述 定义一个用于创建对象的接口,让子类去决定实例化哪个类。工厂方法将一个类的实例化延迟至其子类。二、适用性1.当一个类不知道它所必须创建的对象的类的时候。2.当一个类希望由其子类来指定它所创建的对象的时候。3.当类将创建对象的职责委托给多个帮助子类的某一个,并且你希望将哪一个帮助子类是代理者这一信息局部化的时候。三、参与者1.Product:定义工厂方法所创建的对象的接口。2.ConcreteProduct:实现Product接口。3.Creator:声明工厂方法,该方法返回一个Product类型的对象。Creator也可以定义一个工厂方法的缺省实现,它返回一个缺省的Concret... 阅读全文
posted @ 2013-05-30 04:41 Innosight 阅读(205) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_1229 供应链管理柔性(Supply Chain Mangement Flexibility) 是指供应链对于需求变化的敏捷性,或者叫做对于需求变化的适应能力。需求的变化也可以称之为不确定性或者风险,这是供应链上的各个环节都客观存在的一种现象,企业与企业之间或者企业与最终消费者之间。需求的不确定性程度提高会导致加大了供应链管理难度和成本。 简单的理解供应链的柔性是指快速而经济地处理企业生产经营活动中环境或由环境引起的不确定性的能力,它一般由缓冲、适应和创新三种能力构成。缓冲能力:... 阅读全文
posted @ 2013-05-30 02:02 Innosight 阅读(385) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229雁翎刀 《白马啸西风》一强盗:虬髯大汉挥动手中雁翎刀,喝道:“李三,你当真是个硬汉!”呼的一刀向他头顶砍落。 今天我们学习如何利用Android平台“雁翎刀”ImageView来实现图片旋转功能。像市面上的一些比较出名的图像编辑软件ACDSee、3DMAX、PhotoShop都提供了旋转图像的功能。下面给出该情景的案例:1案例技术要点(1)使用DisplayMetrics对象的widthPixels属性获取屏幕宽度。(2)使用SeekBar来操作图像旋转,并监听滑竿值的变化。(3)使... 阅读全文
posted @ 2013-05-29 23:55 Innosight 阅读(189) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229雁翎刀 《飞狐外传》鹰爪雁行门弟子:门中大弟子周铁鹪、二弟子曾铁鸥在江湖上成名已久。程灵素曾听师父说起过,知道他门中这一代的弟子,取名第三字多用“鸟”旁,这时听汪铁鹗一报名,又见他使的是雁翎刀,自然一猜便中。 今天我们学习如何利用Android平台“雁翎刀”ImageView实现图片适屏裁剪功能。在实际生活中,我们常常会为了设置来电人的大头贴而对接收到的图片进行局部裁剪和缩放,并存储到联系人应用中去。下面给出该情景的案例:1案例技术要点(1)使用BitmapFactory.Optio... 阅读全文
posted @ 2013-05-29 23:09 Innosight 阅读(238) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229雁翎刀 《书剑恩仇录》“俏李逵”周绮:周绮第一个就忍不住,跳出圈子,喝道:“好,咱们来比划比划。”雁翎刀一摆,便要上前。 今天我们学习如何利用Android平台“雁翎刀”ImageView来实现图片缩放功能,下面给出该情景的案例:1案例技术要点(1)android:scaleType="center":标示图片不缩放,放置在View的中心(2)android:scaleType="fitCenter":表示图片按缩放比例显示,并且放置在View的中心2案例 阅读全文
posted @ 2013-05-29 21:59 Innosight 阅读(239) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229雁翎刀 《鹿鼎记》神龙教无根道人:许雪亭一对判官笔向洪教主背心连递两招,同时无根道人的雁翎刀也已砍向他腰间。 今天我们学习如何利用Android平台“雁翎刀”ImageView来异步显示从网络下载的图片。像我们在浏览网页中的图片时,经常会遇到图片刷新的情景,尤其是在网络状况不给力的情况下。实质上对于这些图片的加载通常都是以异步方式实现的。下面给出该情景的案例:1案例技术要点(1)编写HTTP协议工具类HttpUtils,并提供如下两个方法:getInputStream():获取网络中... 阅读全文
posted @ 2013-05-29 16:54 Innosight 阅读(224) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_1229 本文取自《你必须知道的261个Java语言问题》一书的目录,前段时间在书城快速地浏览了一下,该书的作者总结了很多Java经典问题,注重讲解技术细节和知识扩展,其中的很多问题在业内日渐成熟的架构设计和层出不穷的框架技术面前,显得不是那么的重要,但它们却是Java立足之根本所在。本文仅以此目录抛砖引玉,有兴趣的朋友可以自行查阅答案。第1章 Java基本概念及环境配置 .1 FAQ1.01 什么是面向对象程序设计? 1 FAQ1.02 面向对象程序设计的基本特征有哪些? 2 FAQ1... 阅读全文
posted @ 2013-05-29 15:30 Innosight 阅读(425) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_1229一、实验参数列表二、MATLAB脚本(balanced job bounds.m)clear; N = input('Simultaneous browser connections N = '); %model M/M/1 Z = 0.003; %host E1 = 1/(64*33/8)+0.0002; for n = 1 : N u(n) = (sqrt(n*n+4*n)-n)/2; %utilization in percent rate(1,n) =... 阅读全文
posted @ 2013-05-29 14:44 Innosight 阅读(196) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_1229一、实验参数列表二、MATLAB脚本(balanced job bounds.m)clear; % input N = input('Simultaneous browser connections N = '); %initializtion %Interarrival Times in Seconds z1 = 30.0; z2 = 96.1; z3 = 246.7; z4 = 735.7; %Average * T... 阅读全文
posted @ 2013-05-29 14:36 Innosight 阅读(211) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_1229一、实验参数列表二、MATLAB脚本(balanced job bounds.m)clear; % input N = input('Simultaneous browser connections N = '); Z = input('Think time Z = '); Tmpro = input('Tmpro = '); Sm = input('Sm = '); STUm = input('STUm = &# 阅读全文
posted @ 2013-05-29 14:28 Innosight 阅读(208) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_12290Abstract Many Internet applications employ 3-tiersoftware architecture such as e-commerce system. Starting from analyze thearchitecture of an e-commerce development platform model based on 3-tiered Web,We present by using queuing network theory 阅读全文
posted @ 2013-05-29 13:33 Innosight 阅读(350) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229真武剑 那二人还没走近,冲虚便见一只盘于中横放着一柄长剑,待二人走近时凝神看去,只见长剑剑鞘铜绿斑斓,以铜丝嵌着两个篆文:“真武”。冲虚忍不住“啊”的一声,武当派创派之祖张三丰先师所用佩剑名叫“真武剑”,向来是武当派镇山之宝,八十余年前,日月教几名高手长老夜袭武当山,将宝剑连同张三丰手书的一部《太极拳经》一并盗了去。当时一场恶斗,武当派死了三名一等一的好手,虽然也杀了日月教四名长老,但一经一剑却未能夺回。这是武当派的奇耻大辱,八十余年来,每一代掌门临终时留下遗训,必定是夺还此经此剑。 ... 阅读全文
posted @ 2013-05-29 08:47 Innosight 阅读(277) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_1229一、实验参数列表二、MATLAB脚本(balanced job bounds.m)clear; N = input('SAN Performance N = '); L = input('Queue length L = '); Z = input('Thinking time Z = '); %testing a group of data % N = 60; % L = 32; % Z = 0.24; %model M/M/1 %ho 阅读全文
posted @ 2013-05-29 06:59 Innosight 阅读(192) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_1229一、实验参数列表二、MATLAB脚本(balanced job bounds.m)clear; N = input('SAN Performance N = '); L = input('Queue length L = '); Z = input('Thinking time Z = '); %testing a group of datas % N = 60; % L = 32; % Z = 0.23; %model M/M/1 %h 阅读全文
posted @ 2013-05-29 06:49 Innosight 阅读(196) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_1229一、实验参数列表二、MATLAB脚本(appr_mva_bounds.m)clear; % input N1 = input('Number of customers of class 1 N1 = '); % number of customers of class 1 N2 = input('Number of customers of class 2 N2 = '); % number of customers of class 2 M = inp 阅读全文
posted @ 2013-05-29 06:08 Innosight 阅读(171) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229 有关Android应用性能优化的议题,在互联网上可以说是众说纷纭,没有一个统一的标准和规范可循。本文主要是结合作者的实际项目情况以及项目前期的知识储备,对这一议题加以总结和概括,本文不会涉及太多代码的细节。仅以解决方案抛砖引玉,欢迎大家指正和补充。1优化日程篇(1)通过分析代码细化优化点;(2)优化启动加载项;(3)数据库处理方式优化;(4)优化常用操作的性能;(5)内存占用优化以及性能提升交付。2优化代码篇(1)避免创建不必要的对象;(2)如果方法用不到成员变量,可以把方法声明为sta... 阅读全文
posted @ 2013-05-28 23:57 Innosight 阅读(147) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_1229碧水剑 岳灵珊转头向山谷瞧了一眼,叫道:“这把剑,这把剑!”令狐冲又是一惊,知道小师妹的长剑是一口断金削铁的利器,叫做“碧水剑”,三年前师父在浙江龙泉得来,小师妹一见之下爱不释手,向师父连求数次,师父始终不给,直至今年她十八岁生日,师父才给了她当生日礼物,这一下堕入了深谷,再也难以取回,今次当真是铸成大错了。 今天我们学习如何利用Android平台“碧水剑”DatePickerDialog、TimePickerDialog来显示日期时间对话框,下面给出该情景的案例:一、案例... 阅读全文
posted @ 2013-05-28 23:06 Innosight 阅读(284) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_1229鸳鸯刀 鸳鸯刀中藏有大秘密:仁者无敌! 今天我们学习如何利用Android平台“鸳鸯刀”DatePicker、TimePicker来设置日期和时间,下面给出该情景的案例:一、案例技术要点1.为DatePicker、TimePicker所在的Activity实现OnDateChangedListener、OnTimeChangedListener两类监听,并且为它们引入这两个监听。2.datePicker.init(...):初始化日期。3.timePicker.setIs2... 阅读全文
posted @ 2013-05-28 22:38 Innosight 阅读(235) 评论(0) 推荐(0) 编辑
摘要:一、概述 定义对象之间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。二、适用性1.一个对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的行为。2.一个操作中含有庞大的多分支的条件语句,且这些分支依赖于该对象的状态。这个状态通常用一个或多个枚举常量表示。通常有多个操作包含这一相同的条件结构。状态模式将每一个条件分支放入一个独立的类中。使得你可以根据对象自身的情况将对象的状态作为一个对象,这一对象可以不依赖于其他对象而独立变化。三、参与者1.Context:定义客户感兴趣的接口。维护一个ConcreteState子类的实例,这个实例... 阅读全文
posted @ 2013-05-28 21:42 Innosight 阅读(181) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229 TraceView是Android平台下的性能测试工具,它以图形化的方式向我们展现待跟踪程序的性能,并且能具体到method。TraceView包含两个部分,一部分用于程序执行过程中采集数据,另一部分用于在程序执行完毕后对数据进行分析。1采集数据 用户可以选择激活或者取消实时数据采集功能。当该功能激活以后,TraceView进程就会记录下用户程序每一次的方法调用和耗时。并将数据保存到SDCard上的一个二进制文件中。 在程序中调用android.os.Debug.startM... 阅读全文
posted @ 2013-05-28 16:45 Innosight 阅读(224) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229金背大刀 《书剑恩仇录》老英雄周仲英:安健刚把周仲英的金背大刀递给师父。。。周仲英斜刺里窜出,拦在当路,金背大刀一立,喝道:“你这小子竟敢到铁胆庄拿人,不把老夫放在眼里,这笔帐咱们今日来算算!”张召重见他白发飘动,精神矍铄,听他言语,知是西北武林的领袖人物铁胆周仲英,不敢怠慢,挺剑疾刺。 今天我们学习如何利用Android平台“金背大刀”ToggleButton来演示带有“开/关”功能的按钮用来控制一组普通按钮的布局方向,下面给出该情景的案例:1案例技术要点(1)ToggleButt... 阅读全文
posted @ 2013-05-28 16:15 Innosight 阅读(259) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229柳叶刀 穆念慈眼见势危,从腰间拔出柳叶刀,刷刷两刀,向他迎头砍去。 完颜萍年纪甚轻,但刀法狠辣,手中柳叶刀锋利异常,连砍数刀,已将板凳的四只凳脚砍去。 陆无双的银弧弯刀失去以后:敌对的两女一个手持柳叶刀,另一个兵刃似是一管洞萧,两人身形婀娜,步法迅捷,武功也自不弱,但和李莫愁相抗总是不及。……陆无双伸手拔出柳叶刀,转过身来,见说话的正是郭芙。 今天我们观察Android平台“柳叶刀”Button焦点的变化情况,在点击、触摸、键盘按键等事件触发时,按钮都会随之发生焦点的改变... 阅读全文
posted @ 2013-05-28 14:57 Innosight 阅读(214) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229 在应用程序中添加程序日志记录可以跟踪代码运行时轨迹,作为日后审计的依据;并且担当集成开发环境中的调试器的作用,向文件打印代码的调试信息。本规定Jave EE项目必须使用Commons-Logging作为日志接口封装,选用Apache提供的可重用组件Log4j作为底层实现。1日志命名规范 根日志(root logger)位于日志层次的最顶层,它的日志级别不能指派为空;不能通过使用它的名字直接得到它,而应该通过类的静态方法Logger.getRootLogger得到它(指root lo... 阅读全文
posted @ 2013-05-28 13:00 Innosight 阅读(422) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229血刀 《连城诀》血刀老祖的血刀,削铁如泥的,刀身软,血刀刀法奥妙无比,后为狄云所得。 今天我们学习如何利用Android平台“血刀”CheckBox来实现问卷调查,与RadioButton不同,CheckBox可以实现多选(复选)。在收集和整理用户兴趣和社会关系时,使用非常广泛。下面给出该情景的案例:1案例技术要点(1)getLayoutInflater():获取当前Activity的布局填充器;inflate(...):进行布局填充。(2)为CheckBox所在的Activity实... 阅读全文
posted @ 2013-05-28 08:55 Innosight 阅读(206) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229虎头金刀 金刀驸马郭靖“他于大汗所赐金珠一介不取,连同那柄虎头金刀都留在帐中,除下元帅服色,换上了寻常皮裘。” 今天我们学习如何利用Android平台“虎头金刀”RadioButton、RadioGroup来实现性别选择(多选一)。在实际生活中,用户填写注册信息、问卷调查等都会使用到。下面给出该情景的案例:1案例技术要点android.widget.RadioGroup:提供一组单选选项,实现各个选项状态的统一管理。radioGroup.getChildCount():获取按钮组中子... 阅读全文
posted @ 2013-05-28 08:34 Innosight 阅读(223) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229柳叶刀 使刀的正是那蓝衫女郎阿珂,她见澄观缩手,柳叶刀疾翻,向他腰间横扫。便在这时,绿衫女郎也已从松林中窜出,挥刀向韦小宝砍去。 今天我们学习如何利用Android平台“柳叶刀”Button实现图文混搭的风格,下面给出该情景的案例:1案例技术要点(1)android.text.SpannableString:提供一个总体文本是不可变的,但是支持局部对象(它所标记的)可以附加或分离。(2)android.text.style.ImageSpan:为SpannableString附加Bi... 阅读全文
posted @ 2013-05-28 07:52 Innosight 阅读(244) 评论(0) 推荐(0) 编辑
摘要:一、概述 定义对象之间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。二、适用性1.当一个抽象模型有两个方面,其中一个方面依赖于另一方面的时候。将这二者封装在独立的对象中以使它们可以各自独立地改变和复用。2.当对一个对象的改变需要同时改变其它对象,而且不知道具体有多少对象需要改变的时候。3.当一个对象必须通知其它对象,而它又不能假定其它对象是谁的时候。三、参与者1.Subject(目标):目标知道它的观察者。可以有任意多个观察者观察同一个目标。提供注册和删除观察者对象的接口。2.Observer(观察者):为那些在目标发生改变时需要获得通知的... 阅读全文
posted @ 2013-05-28 05:17 Innosight 阅读(213) 评论(0) 推荐(0) 编辑
摘要:一、概述 在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象的外部保存这个状态。以便以后可以将该对象恢复到原先保存的状态。二、适用性1.当需要保存一个对象在某个时刻的状态(部分)的时候,以便需要时可以恢复到先前保存的状态。2.当不愿意暴露对象的实现细节和破坏对象的封装性,又需要让其他对象得到该对象的状态的时候。 三、参与者1.Memento:备忘录。用于存储原发器对象的内部状态。2.Originator:原发器。为原发器创建一个备忘录,用于记录当前时刻它的内部状态,以便日后使用备忘录恢复状态。3.Caretaker:看守者。负责保存备忘录。不能对备忘录的内容进行操作或检查。四、类... 阅读全文
posted @ 2013-05-28 01:52 Innosight 阅读(174) 评论(0) 推荐(0) 编辑
摘要:一、概述 使用一个中介对象来封装一系列的对象交互。中介者让各个对象无需显式地相互引用,从而达到解耦的效果。并且可以独立地改变它们之间的交互。二、适用性1.当一组对象以定义良好但复杂通信的时候。产生的相互依赖关系结构混乱且难以理解。2.当一个对象引用其他许多对象并且直接与这些对象通信的时候。会导致难以复用该对象。3.当需要定制一个分布在多个类中的行为,而又不想生成过多的子类的时候。 三、参与者1.Mediator:中介者定义一个接口用于与各个同事(Colleague)对象通信。2.ConcreteMediator:具体中介者通过协调各同事对象实现协作行为。了解并维护它的各个同事。3.Col... 阅读全文
posted @ 2013-05-28 01:34 Innosight 阅读(153) 评论(0) 推荐(0) 编辑
摘要:一、概述 给定一种语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。二、适用性1.当访问一个聚合对象的内容而无需暴露它的内部表示的时候。2.当对聚合对象的多种遍历提供支持的时候。3.当为了遍历不同的聚合结构提供一个统一的接口的时候(多态迭代)。 三、参与者1.Iterator:迭代器定义访问和遍历元素的接口。2.ConcreteIterator:具体迭代器实现迭代器接口。对该聚合遍历时跟踪当前位置。3.Aggregate:聚合定义创建相应迭代器对象的接口。4.ConcreteAggregate:具体聚合实现创建相应迭代器的接口,该操作返回Concrete. 阅读全文
posted @ 2013-05-28 01:02 Innosight 阅读(180) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229 今天我们学习如何为Activity、Service、BroadcastReceiver等组件设置MetaData元数据,下面给出该场景的案例:1案例技术要点(待整理)2案例代码陈列2.1AndroidManifest.xml ... 阅读全文
posted @ 2013-05-28 00:36 Innosight 阅读(674) 评论(0) 推荐(0) 编辑
摘要:数组是应用最广泛的数据存储结构。它被植入到大部分编程语言中。由于数组十分易懂,所以它被用来作为介绍数据结构的起步点,并展示面向对象编程和数据结构之间的相互关系。一、数组的基础知识1.创建数组 Java中有两种数据类型:基本类型(如int和double)和对象类型。在许多编程语言中(甚至有些面向对象语言,如C++),数组也是基本类型,但在Java中把它们当作对象来对待,因此在创建数组时必须使用new操作符: int[] intArray; // defines a reference to an array intArray = new int[100]; //... 阅读全文
posted @ 2013-05-27 23:37 Innosight 阅读(406) 评论(0) 推荐(0) 编辑
摘要:假设让棒球队队员在运动场上排列成一队。九个正式的队员加一个替补已经站好,准备练习。现在需要按身高从低到高为队员们排队(最矮的站在左边),给他们照一张集体照。应该怎样排序呢? 在排序这件事上,人与计算机程序相比有以下优势:我们可以同时看到所有的队员,并且可以立刻找出最高的一个,而不用费力地测量和比较每个人的身高。而且,队员们不一定要固守特定的空间,他们可以相互推推搡搡就腾出了位置,还能互相前后站立。经过一些具体的调整,就可以毫不费力地给队员们拍好队。 计算机程序却不能像人这样通览所有的数据。它只能根据计算机的“比较”操作原理,在同一时间内对两个队员进行比较。算法的这种“管视”... 阅读全文
posted @ 2013-05-27 23:27 Innosight 阅读(196) 评论(0) 推荐(0) 编辑
摘要:何谓绑定? 绑定是指将一个方法的调用和该方法所在的方法主体(类)关联起来。对于java而言,绑定分为静态(前期)绑定和动态(后期)绑定。静态绑定:在程序执行前方法已经被绑定,此时由编译器或其它连接程序实现。如:C语言动态绑定:在程序运行时根据具体对象的类型进行绑定。 如果一种语言实现了动态绑定,同时必须提供一些机制,可在运行期间判断对象的类型,并分别调用适当的方法。也就是说,编译器此时依然不知道对象的具体类型,但方法调用机制能自行去调查,找到正确的方法主体。不同的语言对动态绑定的实现方法也是不同的。但至少可以这样认为:它们都要在对象中安插某些特殊类型的信息。动态绑定过程:1. 虚拟... 阅读全文
posted @ 2013-05-27 23:19 Innosight 阅读(170) 评论(0) 推荐(0) 编辑
摘要:垃圾回收包含的内容不少,但顺着下面的顺序捋清知识也并不难。首先要搞清垃圾回收的范围(栈需要GC去回收吗?),然后就是回收的前提条件如何判断一个对象已经可以被回收(这里只重点学习根搜索算法就行了),之后便是建立在根搜索基础上的三种回收策略,最后便是JVM中对这三种策略的具体实现。一、范围(要回收哪些区域?) Java方法栈、本地方法栈以及PC计数器随方法或线程的结束而自然被回收,所以这些区域不需要考虑回收问题。Java堆和方法区是GC回收的重点区域,因为一个接口的多个实现类需要的内存不一样,一个方法的多个分支需要的内存可能也不一样,而这两个区域又对立于栈可能随时都会有对象不再被引用... 阅读全文
posted @ 2013-05-27 23:14 Innosight 阅读(262) 评论(0) 推荐(0) 编辑
摘要:一、DNS轮循 DNS轮循是指将相同的域名解释到不同的IP,随机使用其中某台主机的技术。但其具有明显的缺点:一旦某个服务器出现故障,即使及时修改了DNS设置,还是要等待足够的时间(刷新时间)才能发挥作用,在此期间,保存了故障服务器地址的客户计算机将不能正常访问服务器。DNS负载均衡采用的是简单的轮循负载算法,不能区分服务器的差异,不能反映服务器的当前运行状态,不能做到为性能较好的服务器多分配请求,甚至会出现客户请求集中在某一台服务器上的情况。二、F5 BIG-IP 简介:F5 Networks 公司的著名硬件负载均衡交换机。支持硬件四层、七层交换。不同的型号性能不同,BIG-IP 6400.. 阅读全文
posted @ 2013-05-27 22:37 Innosight 阅读(170) 评论(0) 推荐(0) 编辑
摘要:前言:最近一直在对比测试F5 BIG-IP和Citrix NetScaler负载均衡器的各项性能,于是写下此篇文章,记录F5 BIG-IP的常见应用配置方法。 目前,许多厂商推出了专用于平衡服务器负载的负载均衡器,如F5 Network公司的BIG-IP,Citrix公司的NetScaler。F5 BIG-IP LTM 的官方名称叫做本地流量管理器,可以做4-7层负载均衡,具有负载均衡、应用交换、会话交换、状态监控、智能网络地址转换、通用持续性、响应错误处理、IPv6网关、高级路由、智能端口镜像、SSL加速、智能HTTP压缩、TCP优化、第7层速率整形、内容缓冲、内容转换、连接加速、高速... 阅读全文
posted @ 2013-05-27 22:23 Innosight 阅读(858) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229黑剑 黄蓉见那汉子左手使柄金光闪闪的大刀,右手使柄又细又长的黑剑,招数奇幻,生平未见,自己若不出手,武氏兄弟便要遭逢奇险,向李莫愁道:“那两个少年是我徒儿。”李莫愁涩然一笑,心想:“他们母亲是我杀的,我岂不知?”见那中年汉子武功高得出奇,江湖上却从未听说有这号人物,心下暗自惊异,微微一笑,道:“下场罢!”拔出拂尘一拂,黄蓉也已持竹棒在手。两人左右齐上,李莫愁拂尘攻那人黑剑,黄蓉的竹棒便缠向他金刀。 今天我们学习如何利用Android平台“黑剑”AutoCompleteTextView... 阅读全文
posted @ 2013-05-27 22:22 Innosight 阅读(214) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229 本节我们学习XML解析,在Android程序中,Xml解析与Java中几乎相同,最常用的有SAX,DOM,Pull三种解析方式。Android中内置的是Pull解析方式,因此Pull解析也就成为Android推荐的解析方式。接下来我们分别针对这三种XML解析方式进行讲解。1SAX(Simple API for XML) SAX是基于事件驱动的模型。通俗的讲就是XML文件在加载的过程中,加载到不同节点会相应地触发不同方法来处理。它属于一次加载,可以处理任意大小的XML文件,它对内存的... 阅读全文
posted @ 2013-05-27 22:01 Innosight 阅读(219) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_12291布局(Layout) 简单的说,Activity就是布满整个窗口或者悬浮于其他窗口上的交互界面。在一个应用程序中通常由多个Activity构成,都会在AndroidManifest.xml中指定一个主的Activity,如下设置: 为了适应各种界面风格,Android提供了5种布局,这5种布局分别是:FrameLayout(框架布局)、LinearLayout(线性布局)、RelativeLayout(相对布局)、TableLayout(表格布局)、Absol... 阅读全文
posted @ 2013-05-27 21:46 Innosight 阅读(829) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_12291异常抛出与捕捉规则1.1任何抛出异常的方法必须先声明异常{ // Constructor public MyClass( String name ) throws NullPointerException, llegalArgumentException { ... } }1.2异常声明后,调用异常对象的构造器抛出异常public MyClass( String name ) throws NullPointerException, IllegalArg... 阅读全文
posted @ 2013-05-27 21:40 Innosight 阅读(594) 评论(0) 推荐(0) 编辑
摘要:传送门☞Android兵器谱☞转载请注明☞http://blog.csdn.net/leverage_1229 Android应用至少是运行在内存限制为16MB的G1手机上。这些内存对手机来说已经足够了,但对某些开发者来说还远远不够。尽管不打算耗尽这些内存,但应该尽可能少地使用内存,以免把其他运行中的程序杀死(由于内存不足)。对用户来说,内存中保留的程序越多,在应用之间切换的速度就越快。在工作中,我遇到过很多的Android应用中都存在内存泄露,这些问题大多数都是出自于相同的原因:保持一个Context(上下文)的长期引用。 在Android平台上,一个Context(上下文)能够... 阅读全文
posted @ 2013-05-27 21:22 Innosight 阅读(183) 评论(0) 推荐(0) 编辑
摘要:已知关系模式: S (SNO,SNAME) 学生关系。SNO 为学号,SNAME 为姓名 C (CNO,CNAME,CTEACHER) 课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER 为任课教师 SC (SNO,CNO,SCGRADE) 选课关系。SCGRADE 为成绩1.找出没有选修过“李明”老师讲授课程的所有学生姓名。 SELECT SNAME FROM S WHERE NOT EXISTS( SELECT * FROM SC, C WHERE SC.CNO=C... 阅读全文
posted @ 2013-05-27 21:17 Innosight 阅读(149) 评论(0) 推荐(0) 编辑
摘要:为了管理岗位业务培训信息,建立三张表: S (S#,SN,SD,SA) S#,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄 C (C#,CN ) C#,CN 分别代表课程编号、课程名称 SC ( S#,C#,G ) S#,C#,G 分别代表学号、所选修的课程编号、学习成绩1.使用标准SQL嵌套语句查询选修课程名称为“税收基础”的学员学号和姓名。 SELECT SN, SD FROM S WHERE [S#] IN (SELECT [S#] FROM C, SC WHERE C.[C#]=SC.[C#] AND CN=N'税收基础')... 阅读全文
posted @ 2013-05-27 21:14 Innosight 阅读(360) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_12294MyXmlParser案例4.1案例代码陈列待解析的xml格式数据:source.xml 1.5 Cupcake 1.6 Donut 2.1 Eclair 2.2 Froyo 2.3 Gingerbread 3... 阅读全文
posted @ 2013-05-27 06:14 Innosight 阅读(175) 评论(0) 推荐(0) 编辑
摘要:传送门☞轮子的专栏☞转载请注明☞http://blog.csdn.net/leverage_1229 Log4j是Apache软件基金会的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。 本文我们测试一下Log4j在用来输出某大型银行深化系统中的日志时,所表现出来的执行性能。... 阅读全文
posted @ 2013-05-27 05:02 Innosight 阅读(187) 评论(0) 推荐(0) 编辑