编程语言的标准库是该语言的每种实现中都按例提供的函式庫。在某些情况下,编程语言规格说明中会直接提及该函式庫;另一些情况下,标准库的内容由编程社区中的非正式惯例决定。
根据宿主语言构成要素的不同,标准库可包含如下要素:
- 子程序
- 巨集定义
- 全局变量
- 類別定义
- 模板
大多数标准库都至少含有如下常用组件的定义:
- 算法(例如排序算法)
- 数据结构(例如 表、 树、哈希表)
- 与宿主平台的交互,包括输入输出和操作系统调用
哲学
标准库设计的哲学多种多样。比如,C++的设计者 Bjarne Stroustrup 写道:
这就是相对较小的标准库,只包含“每一个程序员”在构建多种软件时都实际可能需要的要素。这就是 C和C++标准库中的哲学。
相对的,Python 的设计者 Guido van Rossum 对标准库的看法要更倾向于包容,他在 Python 教程中写道:
Van Rossum 于是列举了处理 XML、XML-RPC、电子邮件信息、和本地化的库,这些都是被 C++ 标准库所忽略的。这种哲学经常可以在脚本语言(如 Python 和 Ruby)和使用虚拟机的语言(如 Java 和 .NET框架 语言)中找到。
标准库举例
- C标准库,C语言用
- C++标准库, C++语言用
- 标准模板库(STL),C++标准库的一部分
- Java类库(JCL), Java语言 和 Java平台 用
- 基础类库(BCL),for the .NET框架
- [http://docs.factorcode.org/content/article-handbook-library-reference.html Factor标准库] , for the Factor语言
参考
评论 (0)