四、聚焦于内容在iOS7里,强调的不是眼花缭乱的装饰效果,而是最重要的内容本身。下面我们来探讨这个主题:1.删除不必要的内容伟大的设计更多是减法和加法的组合。虽然很酷的想法是很重要,但还有更重要的
————杀死那些很酷的想法,以保持应用程序的重点。1.1.不再强调chromechrome是指您的应用...
分类:
移动开发 时间:
2014-05-09 18:03:29
阅读次数:
436
装饰模式是在不必改变原类文件和使用继承的情况下,动态地给一个对象添加一些额外的功能。它是通过创建一个包装对象来包裹真实的对象。装饰模式比生成子类更为灵活。
一.角色:
(1)抽象构件(Component)角色:定义一个对象接口,可以给这些对象动态地添加职责。
(2)具体构件(ConcreteComponent)角色:定义了一个具体的对象,也可以给这个对象添加一些职责。
(3)装饰(De...
分类:
其他好文 时间:
2014-05-09 14:13:22
阅读次数:
444
1、策略模式
主体主要是添加一个算法的基类,这样就可以通过创建不同的派生类算法,来达到运行时动态改变行为。
2、观察者模式
观察者 关键是要继承统一的监听接口。
通知者 主要是实现:观察者list、添加观察者、删除观察者、通知观察者等接口。
可分为:推送观察者模式,拉取观察者模式。
3、装饰模式
主要是通过装饰品替换装饰者来改变装饰者的行为。因此,装饰品要与装饰者有相...
分类:
其他好文 时间:
2014-05-09 09:10:18
阅读次数:
264
前言
装饰者模式在餐饮行业有着比较广泛的应用,网上大部分关于该模式的例子都和饮食相关,以前看译制片电影,每当看到老外们在咖啡店一口流利的点咖啡要加糖要加奶昔要加这加那的时候,感觉好有派~好高大上啊~,为啥我在小卖部都是“来瓶汽水”就没话说了呢~,难道是我不会“装”?
官方定义
动态的给一个对象添加一些职责,就增加功能来说,该模式比生成子类更为灵活——GOF...
分类:
其他好文 时间:
2014-05-09 00:28:37
阅读次数:
410
本文原文请见:http://www.raywenderlich.com/46988/ios-design-patterns.由
@krq_tiger(http://weibo.com/xmuzyq)翻译,如果你发现有什么错误,请与我联系谢谢。门面(Facade)模式(译者注:facade有些书籍译为...
分类:
移动开发 时间:
2014-05-08 23:07:24
阅读次数:
565
Python是一种强大的语言,即可浅尝辄止,也可深入挖掘。很适合做科学计算、数据挖掘等等。今天我将简单介绍一下Python的装饰器(Decorators)的用法 。
假设我们想要庆祝下生日,需要邀请一些朋友过来参加。但是你有个讨厌的朋友,叫Joe,必须不能让他来啊。可能首先你想到的是建一个list,然后迭代查找并移除所有的Joe童鞋。这当然是个好方法,但是这里为了介绍装饰器,我们会用@来完成...
分类:
编程语言 时间:
2014-05-06 23:19:53
阅读次数:
371
装饰模式(Decorator),动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活.Component定义一个对象接口,可以给这些对象动态的添加职责。ConcreteComponent是定义了一个具体的对象,也可以给这个对象添加一些职责。Decorator,装饰抽象类,继...
分类:
其他好文 时间:
2014-05-06 13:22:28
阅读次数:
338
实现一个类似QQavator功能的代码1、原始实现 1 //存在的问题: 2
//1、wear*方法出现重复代码,可以重构;实质上为代码结构一致,输出内容相同,可以通过在定义一个基类,在基类中定义抽象的Wear*,在子类中重写; 3
//2、倘若需求中新增某种服饰,需要修改Pers...
分类:
其他好文 时间:
2014-05-05 09:39:47
阅读次数:
315
常用的有创新型的设计模式:简单工厂、抽象工厂和单例模式;行为型的设计模式:模板设计模式、观察者模式和命令模式;结构性的设计模式:适配器设计模式、代理模式(静态和动态两种,典型的有在spring的AOP编程中使用)和装饰器设计模式。...
分类:
其他好文 时间:
2014-05-04 08:56:36
阅读次数:
313