放弃动态链接库的梦想

主要观点:软件开发实践中存在长期困扰的紧张关系,如不同的软件分发方式及相关争论,包括静态与动态链接、稳定与不稳定的应用二进制接口等,且不能单独决定这些争论。实践中需在四种软件分发生态系统中选择,如基于 C/C++动态库的发行版、有自身库分发系统的编译语言、有自身库系统的解释或虚拟机语言、按需提供所需的系统等。作者曾在不同选择间徘徊,最终决定选择基于自身库分发系统的 Rust 等编译语言,虽有弱点但愿意接受,同时期待能改善这些弱点,如稳定的 crates.io 镜像等,并期待 Redox 的发展。
关键信息:提到多种软件开发中的具体情况及问题,如程序的大量依赖、单一域名下载等;介绍了四种软件分发生态系统的特点;阐述了作者从纠结到选择的过程及对未来的期待。
重要细节:如不同语言在 ABI 稳定性、库使用等方面的特点;各种生态系统中的具体例子,如 BSDs、Rust、Go 等;关于改善弱点的具体设想,如稳定镜像等。

阅读 7
0 条评论