We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
分为 Imperative Programming 命令式编程 和 Declarative Programming 声明式编程
OOP 使用 mutable 可变的数据结构,操作简单,缺点是不擅长处理并发。由于并发场景代码在任意时间执行任意指令,导致程序的顺序性无法保证,造成 bug,需要用到同步机制和加锁。 FP 追求纯函数无副作用,share nothing 无共享的设计,所以不依赖函数的执行顺序,擅长并发调用,完全没并发异常的问题
关注操作和响应,基于流程实现编码
关注数据和数据的变化,基于状态实现编码
编译性语言(C++\java)
在代码运行前编译器将代码转化为机器码,运行时候直接使用,不需要再次编译
解释性语言(JS)
在运行的时候将代码转化为机器码使用,弱类型语言=>在运行的时候才能确定其类型 目前的TS只是增加了编译时候的类型检测
The text was updated successfully, but these errors were encountered:
No branches or pull requests
编程范式
函数式编程之前比较小众,近些年来在前端圈开始流行,实际上它的历史比面向对象还要早。逻辑编程代表是 Prolog,使用逻辑学逻辑运算来做,写法有点像自然语言。诞生与 1972 年,历史悠久,在人工智能和数据库上有一些应用,目前已经不再流行。
OOP 和 FP 区别
驱动类型
事件驱动:
数据驱动:
语言类型
编译性语言(C++\java)
解释性语言(JS)
The text was updated successfully, but these errors were encountered: