美文网首页
Swift面向协议的强大之处,相对于OC的面向对象的解耦

Swift面向协议的强大之处,相对于OC的面向对象的解耦

作者: Smile_Later | 来源:发表于2017-11-20 23:17 被阅读0次

感触之言

相信大家对于OC的面向对象的开发都已经了然于胸,不必多说.在Swift中的面向协议开发,进一步使代码块之间的耦合性更低,针对于不同的需要,你可以选择性的选择继承或者extension来选择为某一个类新增方法

正文

假设我现在有一个枚举值

登录的返回状态的枚举值

我下面为这个枚举值添加的二个属性值

获取枚举属性传入的字符串的值


为枚举值创建了一个颜色的属性

接下来我使用RXSwift进行实现的,我在控制器初始化了二个控件

一个是ViewModel,一个是RXSwift用到的属性

导入RXswift的podfile中的文件

pod 'RxSwift'

pod 'RxCocoa'

pod 'RxDataSources'

podfile中导入的第三方库

紧接着需要在viewModel定义属性来监听,同时获取输入的值

一个变量,一个监听者

LoginResult上面已经讲过了,是一个枚举值,增加了二个属性值

在viewModel中的监听者需要初始化

根据text的长度来返回不同值

上面全部完成以后,接下来最重要的工作是在控制器绑定和监听属性值并赋值

绑定viewModel中的变量,另一个是监听信号,并赋值

效果图如下(不能上传短视频,只能上传一张图了)

效果图

具体代码地址:代码

如有错误和需要改正的地方,请指出评论,谢谢各位看官

相关文章

  • Swift面向协议的强大之处,相对于OC的面向对象的解耦

    感触之言 相信大家对于OC的面向对象的开发都已经了然于胸,不必多说.在Swift中的面向协议开发,进一步使代码块之...

  • iOS - Swift 面向协议编程(一)

    OC无法做到面向协议开发,而Swift可以,因为Swift可以做到协议方法的具体实现,而OC不行 面向对象开发 传...

  • Swift-面向协议编程

    前言 OC无法做到面向协议开发,而Swift可以,因为Swift可以做到协议方法的具体实现,而OC不行 面向对象开...

  • Swift_2018-01-02

    OC: 面向对象。swift: 面向协议,struct 替代OC中类class。 资源: https://sw...

  • Swift 和 Objective-C的区别

    swift是静态语言 oc是动态语言 swift是面向协议编程 oc是面向对象编程 纯swift的函数派发方式是直...

  • swift和OC的比较

    swift ----OC比较 编程范式 Swift 可以面向协议编程、函数式编程、面向对象编程。Objective...

  • Swift和OC的区别

    一、编程范式 Swift可以面向协议编程、面向函数编程、面向对象编程。 OC主要是面向对象编程。 二、类型安全 S...

  • Swift比较

    1、Swift和OC的区别? 维度SwiftOC语言类型静态语言(有类型推断)动态语言面向类型面向协议编程面向对象...

  • Swift学习笔记1-oc与swift的区别

    编程范式Swift可以面向协议编程、函数式编程、面向对象编程OC以面向对象编程为主,当然你可以引入类似Reacti...

  • Swift 基本语法(一)— 值类型

    Swift 与 OC 语言的区别 1.Swift 面对协议编程、 面向函数编程、面向对象编程。 函数成了一等公民...

网友评论

      本文标题:Swift面向协议的强大之处,相对于OC的面向对象的解耦

      本文链接:https://www.haomeiwen.com/subject/drpbvxtx.html