11个针对Web开发人员的依赖管理工具

依赖关系是现代Web开发的基石。 这些是构建高级Web应用程序所需的必需工具,插件,库和框架。

在过去的几年中,依赖的数量激增。 随着时间的流逝,开发人员已经采用了依赖项管理工具,这些工具减轻了保持依赖项组织和最新状态的压力 。 这些工具为开发人员和项目经理带来了优化的工作流程。

我在这里列出了最好的依赖工具,包括完善的和新兴的平台。 专业的Web开发需要不断学习,我认为依赖性管理是一个值得学习的技能。

1. NPM

如果不感谢Node Package Manager的话,我不能写这本指南。 该系统基于Node.js构建,可为100,000多个软件包和模块的庞大存储库提供支持。

npm js库

每个项目都可以通过NPM使用package.json文件设置,甚至可以通过Gulp (在Node上)进行管理。 依赖关系可以直接从终端进行更新和优化 。 您可以使用从package.json文件中自动提取的依赖项文件和版本号来构建新项目。

NPM不仅对依赖管理很有用,而且对于现代Web开发而言,它实际上是必不可少的工具。 如果您感到困惑,请查看此Reddit主题以获取初学者的解释。

2.凉亭

软件包管理系统Bower在NPM上运行,这似乎有点多余,但是两者之间有区别,特别是NPM提供了更多功能, 而Bower的目的是减少前端依赖项的文件大小和加载时间

查看此Stack问题,以了解有关细微差异的更多信息。

凉亭包装经理

一些开发人员认为Bower基本上已经过时,因为它运行在NPM上,该服务几乎可以完成Bower可以做的所有事情。 一般来说,这没错。

但是开发人员应该意识到Bower可以专门针对前端依赖项优化工作流程 。 我建议Ben McCormick的文章Is Bower有用,以了解有关这两种软件包管理工具所提供价值的更多信息。

3. RubyGems

RubyGems是Ruby的软件包管理器,在Web开发人员中非常流行。 该项目是开源的 ,包括所有免费的Ruby gem。

为了给初学者简要概述 ,“ gem”只是在Ruby环境中运行的一些代码 。 这可能导致诸如Bundler之类的程序可以管理gem版本并保持所有内容的更新。

rubygems网站宝石管理

Rails开发人员会喜欢这个功能,但是前端软件包呢? 由于Ruby是开源的,因此开发人员可以构建Bower for Rails之类的项目。 只需很少的学习,就可以将前端包管理带到Ruby平台。

4. RequireJS

RequireJS有一些特殊之处,它主要是一个JS工具集。 它可用于快速加载JS模块(包括Node模块)

RequireJS可以根据您所使用的内容自动检测所需的依赖项 ,因此这可能类似于C / C ++中的经典软件编程,在C / C ++中经典的软件编程包含在其他库中。

requirejs网络应用

您将找到有关此主题的有趣的GitHub讨论及其对现代Web开发人员的价值。 尽管已经出现了诸如webpack之类的其他JS管理工具,但RequireJS仍然可以在生产环境中使用。 如果它对您有用,那就很重要。

5.果酱

JamJS提供了一种基于浏览器的软件包管理新形式。 这是一个JavaScript包管理器,具有类似于RequireJS的自动管理功能。

您所有的依赖项都放入一个JS文件中,可让您快速添加和删​​除项目。 另外,无论您使用什么其他工具(例如RequireJS),都可以在浏览器中更新这些文件。

jamjs网站

通过终端根据最新版本更新库。 每个项目都可以根据您的需要 使用优化的组件自动创建 。 Jam 在GitHub上免费如果有时间,值得一看。

6. Browserify

大多数开发人员都知道Browserify,即使它不是其典型工作流程的一部分。 这是另一个依赖管理工具,它通过将所需的模块和库捆绑在一起来优化它们。

这些捆绑软件在浏览器受支持,这意味着您可以使用纯JavaScript包含和合并模块 。 您只需要NPM即可开始,然后使用Browserify即可开始。

browserify徽标

查看此入门教程,以了解如何在浏览器中直接管理Node。 GitHub上还免费提供一本冗长的Browserify手册 。 想法是将所有这些Node工具引入浏览器,并通过使用Browserify自动化过程来节省时间。

7. Mantri

MantriJS仍处于增长的早期阶段, 是一个用于中高级Web应用程序的依赖系统。 依赖关系通过名称空间进行管理,并在功能上进行组织,以避免冲突并减少混乱

mantri js依赖管理器

撰写本文时,Mantri当前为v0.2.2。 它是完全开源的针对需要大量依赖项的更复杂的Web应用程序构建 。 Mantri旨在遵循模块化编程实践,并希望鼓励开发人员走同样的道路。

8.沃洛

项目管理工具volo是一个开源NPM存储库,可以创建项目,添加库和自动化工作流。

Volo 在Node内部运行,并依靠JavaScript进行项目管理 。 可以在GitHub上找到简短的介绍性指南,以说明安装过程和常用用法。 例如,如果您运行命令volo create ,则可以附加任何库,例如HTML5 Boilerplate。

volo js网站

但是除了创建新项目之外,您还可以为旧项目添加/更新库 。 Volo结合了前端开发所需的一切。 查看volo的设计目标,以了解其在实际项目中的运作方式。

9.恩德

Ender是“无库图书馆”,是您在网上可以找到的最轻便的软件包管理器之一。 它允许开发人员搜索JS软件包并直接从命令行安装/编译它们 。 开发团队将Ender视为“ NPM的妹妹”。

ender js illustration网站

自然,整个Ender框架可在GitHub上免费获得 。 它只是安装的一种工具,可帮助管理本地项目的前端JavaScript框架的使用 。 一切旨在让前端开发人员的工作流程轻松发挥最大潜力。

Ender主网站上有质量文档,因此如果您感兴趣的话,值得一眼。

10.点

推荐的安装Python依赖项的方法是通过pip 。 该工具是由Python Packaging Authority创建的,就像Python一样,它是完全开源的。

pip python软件包管理器

大多数Python开发人员建议使用pip作为依赖项,包括Django团队 。 无论您是刚开始使用Python还是已经在后端开发中始终使用它,这都是一个程序包管理器,您将很高兴在工具箱中拥有它。

11.作曲家

Composer是与NPM非常相似的软件包管理器,但它仅专注于PHP库。 您可以在Packagist上找到依赖项列表,其中包括大型PHP框架(如Laravel)

如果您是任何类型PHP开发人员 ,我都建议您认真研究Composer。 它很容易上手,但很难适应您的工作流程。 但是,随着实践的发展,它将成为PHP开发项目的主要内容。

作曲家PHP依赖管理器

这是一种多功能工具,具有随着时间增长甚至更大的潜力。 另外,NPM可以与Composer结合使用 ,为您的所有PHP / JS项目创建一个前端+后端依赖管理系统。

结语

显然,这些依赖管理器中有许多具有相似的特性和相似的品质。 有些是为解决其他问题而构建的,甚至可以相互串联运行(即Composer和NPM)。

对于新开发人员而言,依赖管理的主题可能很难。 我建议选择其中一种工具,并进行深入研究以尽可能多地学习。 尝试构建小型Web应用程序,并了解为什么依赖管理很有用。

一旦您了解了如何将这些工具应用到您的工作流程中,您将永远不会再考虑返回。


翻译自: https://www.hongkiat.com/blog/manage-dependencies-tools-webdev/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值