前端编程范式| 青训营笔记

54 阅读3分钟

这是我参与【第六届青训营】伴读笔记创作活动的第4天

为什么计算机可以使用我们的js:

因为我们的浏览器可以使用 JavaScript,是因为现代浏览器都内置了 JavaScript 引擎。JavaScript 是一种基于对象和事件驱动的脚本语言,它主要用于网页交互和动态效果的实现。当我们在浏览器中打开一个包含 JavaScript 代码的网页时,浏览器会自动将 JavaScript 代码解析并且运行它。JavaScript 引擎会逐行读取 JavaScript 代码,并且将其转换为计算机可以理解的机器语言,然后在浏览器中执行。值得注意的是,JavaScript 运行在浏览器的沙盒环境中,无法直接访问操作系统、文件系统等底层资源,这也保证了 JavaScript 在浏览器中的安全性。

编程范式可以根据语言的特性来分类。不同的编程范式有不同的特点和应用场景。下面是一些常见的编程范式:

屏幕截图 2023-04-22 221631.png

  • 面向过程编程(Procedural Programming)
  • 面向对象编程(Object-Oriented Programming)
  • 函数式编程(Functional Programming)
  • 声明式编程(Declarative Programming)
  • 并发编程(Concurrent Programming)
  • 异步编程(Asynchronous Programming)
  • 事件驱动编程(Event-driven Programming)
  • 元编程(Meta Programming)

屏幕截图 2023-04-22 222030.png 屏幕截图 2023-04-22 221458.png

面向对象和面向过程的区别:

一、面向过程编程是以过程为中心的编程思想,将程序看作是一系列步骤的集合,通过定义和调用不同的函数来完成特定任务。在面向过程编程中,数据和方法是分离的。

二、面向对象编程则是将程序看作是由不同的对象组成的,每个对象都有自己的属性和方法,对象之间通过消息传递进行交互。在面向对象编程中,数据和方法是封装在一个对象中的。

面向过程的优缺点:

优点:

  • 结构清晰简单,易于理解和实现。
  • 数据和控制分离,由于程序结构简单,所以我们使用代码的效率会较高。
  • 更加直观的处理方式,使代码更易于维护和调试。
  • 更好地支持底层硬件和嵌入式系统编程。

缺点:

  • 代码重用性差,因为函数之间无法共享数据,所以需要大量的复制和粘贴代码。
  • 可扩展性差,当需求变化时,需要重新设计整个过程,很难通过添加新的功能进行扩展。
  • 难以处理大型复杂问题,面向过程编程很难应对复杂的程序设计和软件系统开发,因此会导致代码的复杂性和难度增加。

当然,尽管面向对象编程和面向过程编程,官网还是推荐我们使用函数式编程;

函数式编程的主要思想是将计算过程尽量表示成一系列嵌套的函数调用。函数式编程强调函数的纯粹性和不可变性,避免或减少了副作用的产生,从而能够更好地处理复杂的程序逻辑和数据结构。常见的使用函数式编程的语言有Haskell、Lisp、Clojure和JavaScript等。