自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Paul_Huang的Footprint

学习足迹

  • 博客(35)
  • 资源 (1)
  • 收藏
  • 关注

原创 AngularJS__绑定变量HTML文本的显示

今天在绑定变量中使用了HTML标签,但是标签一直都作为纯文本显示。如: bb 几番搜索以后,发现:1. 要使用$sce, 需要导入var app=angular.module('myApp', ['ngSanitize']);2. 需要引入angular-sanitize.js3. HTML页面使用ng-bind-html,4. 定义一个to_trusted的f

2015-05-17 01:05:04 2908

翻译 设计模式(23)——Visitor(访问者)

访问者模式是什么?访问者模式表示一个作用于某对象结构中的每个元素的操作,而不需要关注每个元素的类型。访问者模式的适用范围:想定义一个新的操作,而不想改变被操作对象的类型。访问者模式的示例:下面用在汽车的部件上添加打印操作的示例来说明访问者模式:interface ICarElementVisitor { voi

2015-05-17 00:58:46 472

翻译 设计模式(22)——Template Method(模板方法)

模板方法是什么?模板方法定义了一个操作中的算法骨架,而将一些步骤延迟到子类中。这样的话,子类可以修改算法的某些步骤,而不会改变算法的结构。模板方法的适用范围1. 一次性实现算法的不变部分,将可变的行为留给子类实现2. 提出子类中的公共部分到公共父类中,以避免代码重复3. 控制子类扩展。模板方式的示例下面以商店的订单处理为例说明模板方式的使用:

2015-05-17 00:23:29 636

翻译 设计模式(21)——Strategy (策略)

什么是Strategy策略?Strategy策略是定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换。此模式使得算法可以独立于使用它们的客户而变化。策略模式的主要目的是隔离算法。Strategy策略的适用范围许多相关的类仅仅是行为有异。“策略”提供了一种用多个行为中的一个行为来配置一个类的方法需要使用一个算法的不同变体。算法使用了客户不应该知道的数据

2015-05-17 00:13:54 552

翻译 设计模式(20)—— State (状态)

状态模式是什么?状态模式允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。状态模式的适用范围状态模式的典型例子就是状态机,随着状态不同,选择的行为也不一样,具体的行为根据运行时的状态决定。采用状态模式后,可以省去一大堆条件判断语句。在状态模式中,把每种条件分支放入一个类中,处理更为灵活。状态模式的示例下面

2015-05-13 23:48:07 640

翻译 设计模式(19)—— Observer (观察者)

观察者模式是什么?观察者模式定义了对象间一种一对多的依赖关系。当一个对象的状态发生变化时,所有依赖于它的对象都得到通知并被自动更新。观察者模式的适用范围1. 一个抽象模型有两个方面,其中一个方面依赖于另一个方面,将这两者方庄在独立的对象中以使它们可以各自独立地改变和复用。2. 当对一个对象的改变需要同时改变其他对象,而不知道具体有多少对象有待改变时。3.

2015-05-13 23:34:18 502

翻译 设计模式(18)——Memento(备忘录)

备忘录是什么?备忘录模式是在不破坏封装性的前提下捕获一个对象的内部状态,并在对象之外保存这个状态。这样以后就可以将对象回复到原先保存的状态。备忘录模式示例下面的示例中,实现了undo功能,把状态暂时保存到Memento,然后再取回来。import java.util.List;import java.util.ArrayList;class Origin

2015-05-12 23:06:57 745

翻译 设计模式(17)——Mediator(中介者)

中介者模式是什么?中介者模式用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式封装了对象之间的通信。对象不再直接通信,而是通过中介者通信。中介者模式的示例下面以飞机着陆为例说明Mediator的应用,在例子中,飞机和跑道不直接通信,而是通过mediator处理。public inter

2015-05-12 22:59:45 495

原创 AngularJS——Filter (2)

Filter的用法选择包含Filter后字符串的内容,如 {{ ['苹果', '蛇果', '栗子', '葡萄', '香蕉', '柠檬'] | filter:'果' }}结果为:["苹果","蛇果"]limitTo 截取字符串,如  {{ "你是个好人" | limitTo:3 }}结果为:你是个还可以倒过来截取,如 {{ "你是个好人

2015-05-12 16:41:06 655

原创 AngularJS-Filter的用法(一)

AngularJS中,Filter实际完成的是变换的功能。Filter的用法如下:1. 通过“|”来使用Filter比如,下例中使用了uppercase的filter,会把name自动转换成大写字母,hbr会变成HBR也可以用lowercase全部转换成小写字母,HBR会变成hbr Simple app <script src="bo

2015-05-11 23:10:18 1316

翻译 设计模式(16)——Iterator(迭代器)

迭代器是什么?迭代器提供一种方法顺序访问一个聚合对象中的各个元素,且不需要暴露该对象的内部表示。迭代器的使用范围1、 访问一个聚合(collections)对象的内容二无需暴露它的内部表示2. 支持对聚合对象的多种遍历。3. 为遍历不同的聚合结构提供一个统一的接口。迭代器的示例interface IIterator{ public boolean h

2015-05-11 22:33:32 728

翻译 设计模式(15)——解释器(Interpreter)

解释器模式是什么?解释器模式简单来说就是用语法规则来解释一种语言。需要定义语法,以及一个解释器。解释器的适用范围解释器模式适用于有一个语言需要解释执行,而且可以将该语言中的句子表示为一个抽象语法树。在下列情况下,效果最好:1. 文法简单。2. 效率不是一个关键问题。示例加,减的文法解释示例:import java.util.Map; in

2015-05-11 22:28:13 589

翻译 设计模式(14)——Command(命令)

Command模式是什么?Command将一个请求封装为一个对象,从而使得可以用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。Command模式中,有几个关键角色:1. Command,声明执行操作的接口2. ConcreteCommand把一个接受者对象绑定于一个动作,调用接收者相应的操作,实现Execute3. Invoker

2015-05-11 22:15:05 663

翻译 设计模式(13)——责任链(Chain of Responsibility)

责任链是什么?责任链条模式使多个对象都有机会处理请求。打个比方说,责任就是得分,多个对象就是篮球队员,在三分线的远投的时候,球由投手投篮。带球突破则由后卫负责。。。责任链模式的适用范围1. 有多个对象可以处理一个请求,哪个对象处理该请求运行时刻自动确定。2. 在不明确指定接收者的情况下向多个对象中的一个提交一个请求。3. 可处理的一个请求对象集合应被动态指定。

2015-05-11 21:59:09 598

原创 AngularJS——Interpolate

Interpolate的作用Interpoloate的作用简单来说就是用变量值填充模板,实现根据Scope的情况实时更新字符串文本。 Interpolate的用法html文件: Angular Interpolate <input ng-model="to" placeholder="Reci

2015-05-11 11:04:10 1339

翻译 设计模式(12)——代理(Proxy)模式

什么是代理模式?代理模式为其他对象提供一个代理来控制对这个对象的访问。代理模式的适用范围代理模式的主要有几种用途:1. 远程代理2. 虚代理(根据需要创建开销很大的对象),比如某个对象的初始化开销很大,则使用虚代理暴露该对象的某些方法,不到万不得已不对开销大的对象进行初始化。3. 保护代理。控制对原始对象的访问。(比如在DoAction()之前和之后进行某些

2015-05-11 00:14:32 564

翻译 设计模式(11)——享元(Flyweight)模式

什么是享元模式?享元模式跟CACHE机制类似,它运用共享技术有效地支持大量细粒度的对象。Flyweight通过尽可能地与其他对象共享数据来减少对内存的使用。Flyweight的经典例子就是字符处理器中的字符图形。如果每个字符都用一个单独的图形表示,则会占用大量的空间。而采用字符表的形式,只保持对字符图形的引用关系,则能节省大量空间。另一个例子是字符串的驻留(String Interni

2015-05-10 23:56:55 685

翻译 设计模式(10)——Facade(外观)模式

什么是外观模式?外观模式是为子系统的一组接口提供一个一致的界面。让外界对子系统的操作更为简单。外观模式的适用范围外观模式适用于:1. 要为一个复杂的子系统提供一个简单的接口2. 子系统的抽象和实现部分紧耦合3. 为层次结构的子系统定义每层的入口点。外观模式的示例/* Complex parts */ class CPU {

2015-05-10 23:07:16 556

翻译 设计模式(9)——Decorator(装饰)模式

什么是装饰模式?装饰模式是动态地(在运行时)给一个对象添加一些额外的职责。装饰模式的适用范围1.在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责;2. 处理那些可以撤销的职责3. 当不能采用生成子类的方式进行扩充时。装饰模式的示例/** * Window Interface * * Component window

2015-05-10 22:58:03 491

翻译 设计模式(8)——Composite(组合)模式

public class Circle implements Shape { @Override public void draw(String fillColor) { System.out.println("Drawing Circle with color "+fillColor); }}什么是组合模式?组合模式把对象组合成树形结构以表示“部分-整体”的层次结构。它就

2015-05-10 22:44:43 636

原创 最大子段和

问题描述:给定由n个整数(包含负整数)组成的序列a1,a2,...,an,求该序列子段和的最大值。当所有整数均为负值时定义其最大子段和为0。依此定义,所求的最优值为: 例如,当(a1,a2 , a3 , a4 , a5 ,a6)=(-2,11,-4,13,-5,-2)时,最大子段和为:11+(-4)+13 =20一个最简单的算法是:int maxdata

2015-05-10 22:13:30 625

原创 Merge Sort (归并排序)

归并排序是分治法的例子。在归并排序中,会递归地把列表一分为2,然后进行排序,最后再合并。归并排序中,需要使用辅助空间O(n)。比如,要对3,5,4,9,2进行排序,我们有下图不断地把n/2,然后进行排序和合并,程序如下所列://// main.cpp// MergeSort//// Created by Paul Huang on 15/5/10.

2015-05-10 21:47:00 611

原创 数据库的1NF,2NF和3NF的区别

1NF(第一范式)1NF的限定条件如下:1. 每个列必须有一个唯一的名称2. 行和列的次序无关紧要3. 每一列都必须有单个数据类型4. 不允许包含相同值的两行5. 每一列都必须包含一个单值 (一个列不能保存多个数据值)6. 列不能包含重复的组第一范式会存在更新、删除和插入异常。2NF(第二范式)2NF的限定条件如下:1. 它符合第一范式2

2015-05-10 07:13:07 11901 1

翻译 设计模式(7)——Bridge模式(桥接)

Bridge模式的作用Bridge模式就是把抽象部分与其实现部分分离,使它们都可以独立地变化。Bridge模式的适用性1. 不希望在抽象和它的实现部分之间有一个固定的绑定关系。2. 类的抽象以及它的实现都应该可以通过生成子类的方法加以扩充。3. 对一个抽象的实现部分的修改应对客户不产生影响,即客户的代码不必重新编译4. 想在多个对象间共享实现,但同时

2015-05-10 01:35:24 570

翻译 设计模式(6)——适配器模式(Adapter)

Adapter是什么?出过国的朋友都知道,中国和外国的电源插头不同,出国前要买个适配器,用于适配插座。适配器的作用就是把一个类的接口转换成客户希望的另一个接口。Adapter的图如下,可以明显看出,对client的call进行了转换。Adaptee指已经存在,需要进行适配的接口。Adapter可以使用继承和组合两种方式实现。Adatper的应用举例

2015-05-10 01:14:36 798

翻译 设计模式(5)——单例模式

单例模式是什么?单例模式保证一个类只有一个示例,并提供一个访问它的全局访问点。单例模式的应用1. 日志类在日志类的设计中,使用了单例模式,保证全局只有一个日志类。2. 配置类配置类也需要保证全局只有一个配置类,并可以把它放到缓存中。3. 共享资源的访问比如打印机串口,用单例和Synchronize操作可以保证对打印机的操作不冲突。

2015-05-10 00:59:59 435

翻译 设计模式(4)——Factory method(工厂方法)

工厂方法的作用?工厂方法又称为虚拟构造器,它定义了一个用于创建对象的接口,让子类决定实例化哪一个类。它的UML图如下: 上图中,Product定义了一个接口用于Factory创建的各种对象,Factory声明了一个方法用于创建Product.ConcreteProduct和ConcreteFactory则是具体的实现工厂方法的示例动物的叫声,不同动物

2015-05-10 00:50:27 664

翻译 设计模式(3)—— Prototype(原型)

Prototype模式能干什么?原型(prototype)用于指定创建对象的种类,并且通过复制这些原型创建新的对象,典型的例子就是细胞分裂,一个细胞分裂成两个一模一样的细胞。Prototype模式的使用Implement了Cloneable接口类,实现Clone()。您可以根据业务需要进行Deep克隆或者shallow克隆颜色:public abst

2015-05-10 00:30:29 635

翻译 设计模式(2)—— 生成器 (Builder)

Builder解决的问题Builder(生成器)的模式用于用多个部件生成不同产品的问题:Builder模式适用于:当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时当构造过程必须允许被构造的对象有不同的表示时。Builder模式详解在该模式中,Builder定义了一个抽象接口,用于创建Product对象的各部分Concretebu

2015-05-09 23:56:38 716

原创 设计模式(1)——抽象工厂模式

抽象工厂模式是指创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。抽象工厂模式用于:1. 系统需要独立于产品创建、组合和表示时。2. 系统需要多个产品系列中的一个来配置时。3. 当要强调一系列相关的产品对象的设计以便进行联合使用时。3. 当提供一个产品类库,只想显示它们的接口而不是实现时。举例来说:1. 中国和美国的电话号码和地址规则不一样,AbstractFactory 可以创建一个电

2015-05-09 23:17:40 550

原创 Angular学习(4)——Controller

什么是Controller?简单来说,Controller就是控制页面显示的函数。Controller中变量的变化会导致页面自动刷新。Controller的示例让我们看下下面的代码: Angular 控制器 加减程序 加 减 当前结果: {{ counter }}div中,定义了ng

2015-05-09 23:10:32 546

原创 AngularJS学习(三)——Module和Scope

为什么使用Module?使用Module的原因是,把AngularJS的JS代码写到HTML文件内不好,要抽取出来成为独立的app.js文件。app里面可以定义一个或多个modules。   Module的写法 angular.module('myApp' , []);其中‘myApp’是module的名称, [  ]里面是module需要依赖的东西,在模块加载前自动加载。

2015-05-08 18:08:14 786

原创 AngularJS学习(二)——表达式,ng-bind,ng-app,ng-init,ng-repeat,ng-model

AngularJS的绑定:除了用{{ }}进行绑定外,还可以使用ng-bind,比如: <script src="bower_components/angular/angular.js"> 欢迎来到 HBR {{helloTo.title}} 的世界!输入您的名字: Hello ! angular.

2015-05-08 17:27:09 3525

原创 AngularJS学习(一)

网上找了一圈,少见学习angularJS的资料。在此记录学习过程中的体会,供大家参考:1. JS文件下载不知道是不是谷歌的原因,AngularJS的网站经常打不开,左找右找,最后发现用BOWER可以下载,但是过程比较复杂。希望了解bower的同学,可以访问http://bower.io/。BOWER和MAVEN类似,只是BOWER用于管理JS依赖。现在,特附上下载链接:http

2015-05-07 23:13:07 605

原创 SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”. in a Maven Project

在项目中MAVEN加入了  dependency>      groupId>org.slf4jgroupId>      artifactId>slf4j-apiartifactId>      version>1.7.5version>    dependency>,运行项目后出现红色提示SLF4J: Failed to load class "org.sl

2015-05-04 23:09:33 635

Cocoa Programming for OS X_ The Big Nerd Ranch Guide 2015最新版

Cocoa Programming for OS X_ The Big Nerd Ranch Guide, 5_e (Big Nerd Ranch Guides) ,2015最新版。Big Nerd Ranch的书一直很不错。

2015-05-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除