术业有专攻,闻道有先后。班门弄斧,请指教。
编程语言五花八门,在历史的洪流中,不断有新的编程语言、新的工具诞生。有的老牌语言依然是中流砥柱,有的新生代语言突飞猛进,后生可畏。
一个编程语言要想发展起来,包管理工具必不可少,包的数量与质量,决定着编程语言的周边生态的好坏。
编程语言与包管理
主流的编程语言
TIOBE 编程社区指数,是一个衡量编程语言受欢迎程度的指标,评判的依据来自世界范围内的工程师、课程、供应商及搜索引擎。
编程语言没有好坏优劣,只有合适与更合适。一个成熟的项目,也绝非只一种语言。
包管理工具
包管理工具是一种管理代码资源包的工具,用于自动配置、安装、更新、删除项目中所使用的资源包,核心是依赖管理
、版本控制
。
- 代码库的应用商店
- “轮子”的工厂
- 现代化开发的工具利器
包管理工具是现代化开发工具的利器。以前端为例,早期的技术主要是 Html/CSS/JS、JQuery、Ajax 等,后来 NodeJS
诞生,彻底改变了前端的开发模式,让前后端的关系更加清晰,让后端更加纯粹
,让前端大有可为
。
常用的包管理工具
每一种编程语言,基本上都有自己的一些常用的包管理工具。了解编程语言的包管理工具,避免重复造轮子
。
编程语言 | 包管理工具 |
---|---|
JavaScript (Node.js) | npm、yarn、pnpm |
Python | pip、conda |
PHP | composer |
JAVA/Kotlin | maven、gradle |
C/C++ | vcpkg、conan、apt/brew、self-complie |
C# | NuGet |
Objective-C/Swift | CocoaPods、Carthage/SwiftPM |
Golang | Go mod |
Ruby | Gem |
Rust | Cargo |
Lua | LuaRocks |
包仓库与镜像源
包仓库
包仓库,就是存放软件包的仓库。包管理工具就是从包仓库里获取包的版本等信息,从包仓库拉取软件包。
中央仓库,是包的源头仓库,是包管理工具获取包信息的主要途径。
镜像仓库,中央仓库的镜像,对其代理、缓存、加速等,解决了由于距离、网络等原因访问中央仓库受限、缓慢的问题。
常用的镜像源
国内大厂都有提供丰富的镜像仓库,为用户拉取软件包提供了极大的便利。
- 阿里巴巴开源镜像站(https://developer.aliyun.com/mirror/)
- 华为云开源镜像(https://mirrors.huaweicloud.com/home)
- 腾讯软件源(https://mirrors.tencent.com/)
- 清华大学开源软件镜像站(https://mirrors.tuna.tsinghua.edu.cn/legacy_index)
- 网易开源镜像站(https://mirrors.163.com/)
- …
最后
工欲善其事,必先利其器。做一个会善用工具的编程匠人,得其法
、尽其能
。
实践是检验真理的唯一标准,不能应用与实践,或不能被实际所应用的工具,终将被丢进历史的垃圾堆。
九万里悟道,终归诗酒田园。