Swift 中的面向协议编程是如何点亮我的人生的
面向对象编程至今已经使用了数十年了,并且成为了构建大型软件约定俗成的标准。作为iOS编程的中心思想,遵循面向对象规范来编写一个 iOS 的应用几乎不可能实现。虽然面向对象有很多优点比如封装性,访问控制和抽象性,但是它也自带有固有的缺点。
- 大多数类的情况下,当一个单继承的类需要更多不同类中的函数功能时,你会倾向于使用多继承来实现。 但是大部分的编程语言不支持这一特性,而且会导致类的继承关系变得复杂。
- 在多线程环境下,如果所有对象在函数中都是通过引用来传递会导致意想不到的问题。
- 因为类与类之间的高耦合性,为一个单独的类写测试单元会很困难。
下面是网上大量的对面向对象的抱怨