代理模式

-首先回顾协议的概念

-协议的编写

     @protocol 协议名称

     // 方法声明列表

     @end

-某个类遵守协议

  @interface 类名 : 父类 <协议名称>

  @end

代理(委托)设计模式

•什么是设计模式

      设计模式描述了软件开发过程中诺干重复出现的问题的解决方案,目的使提高程序的可扩展性和维护性。

   即本类要做的事情交给另一个类来处理

代理模式案例1

•编程实现如下生活场景
•设计一个Person 需要去看电影
•设计Agent类作为Person的代理  实现
 
•// 返回票价
•- (double) ticketPrice;
•// 还剩多少张票
•- (int) leftTicketsNumber;
 
•考虑任意对象作为代理 进行扩展 所以采用id和协议实现代码模式
 

1).先创建一个电影票价MoviePriceDelegate的代理

 

2> 创建一个 Agent 模型

 

3>创建Pesron模型

 

 

4> main.m

5>最后运行结果

2016-12-23 14:59:22.170 11-代理设计模式[3104:285583] ticketPrice 大众点评的返回

2016-12-23 14:59:22.171 11-代理设计模式[3104:285583] 票价:30.000000

2016-12-23 14:59:22.172 11-代理设计模式[3104:285583] leftTickersNumber 大众点评的返回

2016-12-23 14:59:22.172 11-代理设计模式[3104:285583] 剩余票数量:20

Program ended with exit code: 0

原文地址:https://www.cnblogs.com/chenzq12/p/6214823.html