IOS Objective-C 协议,委托

  IOS开发使用的语言Objective-C(如下简称OBJ-C)是一种扩展自C语言的面向对象语言。在OBJ-C中有一个很重要概念:消息。在最近的学习当中逐渐对消息机制有了一些了解,逐渐体会到了OBJ-C的一些设计理念,同时也更加适应了使用它来编程。面向对象在不一样的编程语言的编程语言里面虽然实现的方式不一样,可是不少东西都是异曲同工的。之前我习惯用JAVA进行面向对象编程,因此在使用OBJ-C的时候我会用之前JAVA的一些概念来类比。今天主要想说一下本身对OBJ-C里面的一个协议@protocol。我本身的感受protocol和java里面的interface做用是同样的,用于限定一种特定类的“交流方式”。之前在课堂上看教材上面写的是interface是用来解决JAVA多重继承的问题。对于我来讲这不是一个很好的答案,我以为多重继承基本就是没有用处的(我的理解),由于这样大大增强了类之间的耦合性。而interface更好的用处是规定一组借口调用方式。java

  在接口里面只有方法的声明不用实现,须要使用这种通讯方式的类本身实现其中的方法。这样的话达到了使用统一,功能多样化的目的。而在OBJ-C里面,干脆把这个东西叫作协议了,这样就更直观了。编程

  OBJ-C里面还有一种叫作委托的机制,这是面向对象里面比较经常使用的一种设计模式。在我我的的理解,一个类有一个委托的话,这个类就能够给委托发送特定的消息。而这种特定的消息究竟是什么,通常都是经过协议来规定的。具体:我把发送消息的叫作sender,把消息的接受方叫作reciever,若是reciever要成sender的委托的话,他们之间要有一种发送消息的规范sender按照规范发送消息,而reciever也要按照规范的方式处理信息。消息的规范就是由协议protocol定义的。设计模式

  以上都属我的观点,谨以此记录本身的学习进程。编程语言

相关文章
相关标签/搜索