响应式编程,与面向对象编程有何联系,是否是一个更好的编程思想?

2019-07-16 15:49:56 +08:00
 maxxfire
面向对象 OOP 编程有很多优势,它是对现实世界的建模抽象,它有利于人类思维,有利于扩展和维护。

然而最近在看一些 rx 的响应式编程框架,它除了最核心的 rx 框架外,基本上把数据库 /网络请求 /UI 组件统统都进行了 rx 化的重构,企图建立一个完整的 rx 生态。完全有一种要颠覆 OOP 的趋势。

在实际的编码实践中,各位是如何应用 响应式编程呢,是完全替换掉 OOP,还是在 OOP 框架的基础上再加上响应式编程呢?
2262 次点击
所在节点    程序员
9 条回复
chendy
2019-07-16 16:07:38 +08:00
这俩是独立的,不冲突
maxxfire
2019-07-16 16:16:40 +08:00
@chendy 我觉得是从属关系,框架整体还是得用 OOP 来写,里面某些子模块可以用 rx 来写。
scalaer
2019-07-16 16:17:16 +08:00
响应式编程的的处理单元称为 actor, 一个 actor 就是一个对象, 这个对象由数据 + 行为 + 消息构成, 内部的状态由自己的行为维护
frandy
2019-07-16 18:26:52 +08:00
可以关注下这个 up 主: https://space.bilibili.com/2494318/dynamic
我认为是在 OOP 框架的基础上再加上响应式编程,具体可以了解下 spring5 的响应式相关
还有就是 Reactive 国内有的翻译成响应式,有的翻译成反应式,但不影响。
frandy
2019-07-16 18:28:11 +08:00
rx 系列是一个实现,其他还有 akka,vert.x。
crysislinux
2019-07-16 18:31:17 +08:00
这东西用起来感觉性能太不好预估了。要是跟 angular 这种一起用,很容易爆炸。。
troywinter
2019-07-16 22:10:13 +08:00
我觉得你的方向不对,没搞清楚 rx 的来龙去脉,可以看看 Erik Meijer 的一些演讲,rx 和 oo 还有 functional 不是对立的,他们不属于同一个方向的问题,没有可比性,如果不清楚它解决了什么问题就用,我觉得没有意义。
lhx2008
2019-07-16 22:56:10 +08:00
和 oop 并无关系,只是把代码编写的形式改变了,要说的话他应该是和异步,协程,多线程并列
reus
2019-07-17 11:35:10 +08:00
没有任何关系

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/583474

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX