比特币是用什么语言写的?为什么比特币是用 C++ 编写的?
比特币 是用什么语言写的?比特币主要是用 C++ 编程的,C++ 被认为是一种高度可定制的编程语言。让我们在本文中进行更多探索。
比特币是用什么语言写的?
用于创建比特币的主要编程语言是 C++,它被认为具有极强的适应性。正因为如此,所谓的比特币发明者中本聪选择使用C++构建Bitcoin Core,它接受来自网络的合法交易并允许进入区块链。
为什么比特币是用 C++ 编写的?
原始的 Satoshi 代码库是用 C++ 创建的,这是关键因素。像比特币这样的系统对行为的一致性有非常严格的要求;否则,网络将会分叉。网络上的所有节点必须接受和拒绝完全相同的块。避免存在引入不一致风险的问题的第一个选择是避免从头开始编写代码。
所有编程语言都有缺点,C++ 也不例外,但有许多因素使其成为一个不错的选择。一个很容易被忽视的问题是它提供了对内存消耗的极其精确的控制。在许多现代语言(尤其是那些依赖垃圾收集的语言)中,推理出对内存使用的严格限制即使不是不可能,也是具有挑战性的。很难确保没有办法导致 Bitcoin Core 分配大量内存、堵塞机器的交换空间,或者更糟的是终止进程,因为它是直接暴露在互联网上的安全关键应用程序。
除了在需要的高层之间取得良好平衡之外,这也是性能优化的许多途径。性能比看起来更重要,因为网络的收敛取决于快速的块验证和传播。当区块验证速度比创建速度慢时,更大/更快的矿工开始从经济因素中不公平地受益(例如,参见自私挖矿攻击)。在极端条件下,如果区块需要几分钟的时间来验证,网络可能根本无法收敛,因为节点根本就不再及时听到区块的消息。