我已经开始学习react,我对包的概念非常困惑。为什么我们不能使用一个简单的链接作为cdn,有一个模块,我不明白它,什么是npm,为什么我必须使用它与React
k3bvogb11#
我不想在这里给予明确的答案,而是尽可能简单地解释这三个术语:模块只是一个包含JavaScript代码行的文件。库使用一个或多个模块来提供一组功能。软件包是一个可下载的、有版本控制的库.想象一下,有人把它放在一个盒子里,然后把它运送给你,这样你就可以导入它,并与你自己的代码结合使用。
9rbhqvlz2#
所以我得出了结论,希望你告诉我,如果我得到它正确与否。
9gm1akwq3#
很可能使用一个简单的链接,如CDN。许多软件包也有可用的链接,例如材质UI。然而,当您的项目增长时,使用CDN链接很快就会变得难以管理,并且会影响网站的性能和加载时间。Npm是Node Package Manager的缩写。它处理Node的打包,在那里不适合使用简单的链接。事实证明,通过将其与一个编译器相结合,也可以将npm用于Web应用程序。编译器(如webpack)将你所有的模块(JavaScript文件和npm包)打包在一起,这样你就得到了一个可以在浏览器中运行的脚本。
v6ylcynt4#
库:库是代码资源(模块)的集合,为软件开发提供各种功能和工具。库被设计为可重用的,并通过为常见任务提供预构建的解决方案来保存开发人员的时间。它们可以包括用于各种目的的模块,例如数学计算,文件处理,网络等等。模块:模块是包含Python代码的单个文件,这些代码定义了函数、类和变量。它是一个独立的单元,可以导入并在其他Python程序中使用。模块促进代码组织、可重用性和关注点分离。例如,Python中的math模块提供了像sqrt()和sin()这样的数学函数,使它们可以通过模块的命名空间访问。包:包是一种将相关模块组织到目录层次结构中的方法。它通常包含一个__init__.py文件,该文件将目录表示为一个包,并允许将其作为一个整体导入。包有助于构建更大的代码项目,防止命名冲突,并提供代码模块的清晰组织。一个例子是numpy包,它包括各种用于数值计算的模块。
math
sqrt()
sin()
__init__.py
numpy
4条答案
按热度按时间k3bvogb11#
我不想在这里给予明确的答案,而是尽可能简单地解释这三个术语:
模块只是一个包含JavaScript代码行的文件。
库使用一个或多个模块来提供一组功能。
软件包是一个可下载的、有版本控制的库.想象一下,有人把它放在一个盒子里,然后把它运送给你,这样你就可以导入它,并与你自己的代码结合使用。
9rbhqvlz2#
所以我得出了结论,希望你告诉我,如果我得到它正确与否。
-package:可以是一个或多个库,但它也包含不处理功能的文件,但它的唯一作用是确保库和功能文件正常工作。
像react包一样,它带有react库处理功能,也有babel编译器,使浏览器阅读和理解react库。
9gm1akwq3#
很可能使用一个简单的链接,如CDN。许多软件包也有可用的链接,例如材质UI。然而,当您的项目增长时,使用CDN链接很快就会变得难以管理,并且会影响网站的性能和加载时间。
Npm是Node Package Manager的缩写。它处理Node的打包,在那里不适合使用简单的链接。
事实证明,通过将其与一个编译器相结合,也可以将npm用于Web应用程序。编译器(如webpack)将你所有的模块(JavaScript文件和npm包)打包在一起,这样你就得到了一个可以在浏览器中运行的脚本。
v6ylcynt4#
库:库是代码资源(模块)的集合,为软件开发提供各种功能和工具。库被设计为可重用的,并通过为常见任务提供预构建的解决方案来保存开发人员的时间。它们可以包括用于各种目的的模块,例如数学计算,文件处理,网络等等。
模块:模块是包含Python代码的单个文件,这些代码定义了函数、类和变量。它是一个独立的单元,可以导入并在其他Python程序中使用。模块促进代码组织、可重用性和关注点分离。例如,Python中的
math
模块提供了像sqrt()
和sin()
这样的数学函数,使它们可以通过模块的命名空间访问。包:包是一种将相关模块组织到目录层次结构中的方法。它通常包含一个
__init__.py
文件,该文件将目录表示为一个包,并允许将其作为一个整体导入。包有助于构建更大的代码项目,防止命名冲突,并提供代码模块的清晰组织。一个例子是numpy
包,它包括各种用于数值计算的模块。