编译速度谁“最快”?25岁的 C++Builder 还能打!

2022 年 3 月 7 日 CSDN

作者 | David Millington

编译 | 张洁     责编 | 屠敏

出品 | CSDN(ID:CSDNnews)

25 年前,C++ 世界发生了一件令人高兴的事情,那就是 C++Builder 的到来,C++Builder 是一个用在 Windows 平台上撰写 C++ 语言的集成开发环境,它实现了可视化的编程环境和 C++ 的完美结合,引领着程序员走向美好的未来。到如今的 2022 年,C++Builder 迎来了它的第 25 个生日。

图片来源于 embarcadero


C++Builder 的发展


在 C++ 兴起的时候,Borland 公司的研究人员发现了 Delphi 的成功,取决于它完善的 UI 库、属性、方法和事件模型。当时,C++ 没有很好的 UI 库,它只能使用像 MFC 这样的库,并且使用旧的模式,同时也没有强大的视觉设计器。除此之外,C++ 还使用着 Borland 的 OWL 语言,虽然技术扎实,但在方法上已经落后了。

之后 Borland 的研究人员意识到,只需在 C++ 上增加几个功能,C++ 就可以使用与 Delphi 相同的模型,甚至可以与 Delphi 代码实现无缝互用。后经过研究人员的不断探索,Borland 公司于 1997 年 2 月 26 日发布 C++Builder 1 ,并取得了非常大的成功,销量达 6 位数。随着时代的进步,为了顺应时代的发展,相关研究人员对 C++Builder 进行了改版升级,于 2002 年发布了 C++Builder 6 ,这个版本在功能、可用性和流行度方面被广泛称为经典版本,至今仍享有盛誉。

但后来在 2003 年, C++Builder X 的出现让 C++ 产生了一个重大变化。研究人员想要C++Builder 成为一个通用的 C++ IDE,并且拥有 Windows VCL UI 库、能够快速创建应用程序的语言扩展,以及向前迁移应用程序的能力。经过不断地研究,该产品未能满足这些条件。直到两年后 Borland 发布了 C++Builder 2006,才重回经典代码库。

 

因速度闻名的编译器


C++Builder 编译器是业界使用的“最佳”编译器,因比其他编译器更快而闻名。它速度快的一个原因是它的架构:编译器解析源代码的整个翻译单元、构建 AST(抽象语法树)、生成中间体是表示可能对其执行许多转换,并将其提供给本身可能进行一些转换的后端。

今天的 C++Builder 拥有现代化的 High DPI IDE,包括 DPI 感知表单设计、数千个 UI 控件、现代 C++ 支持和现代 C++ 库的易用性、基于 LSP 的代码完成、LLVM 优化和多个平台。与此同时,C++Builder 仍然提供同样出色的构建速度。它建立在 Borland 公司久经考验的编译技术基础之上,提供了高度安全可靠快速的编译优化方法,完全编译出原始机器码而非中间码,软件执行速度大大提高。

在编译和连接过程中,C++ Builder 会自动忽略没有被修改过的原代码和未被使用的函数,从而来提高编译速度。此外,C++ Builder 还提供了一个专业开发环境所必需的命令行工具,目的是帮助建立 C++ 程序并对准备编译的程序进行更精细的控制。

 

强大的语言扩展和库


C++Builder 添加了小而强大的语言扩展,这样容易采用高效的编程模型。C++Builder 还开创了语言互操作的先河,通过它的类似产品 Delphi,人们可以使用两种语言编译成同一个二进制文件,并且共享同一个二进制接口。在 C++ 中,大多数语言采用翻译或包装的方法,而不是 ABI 兼容性的真正内置互操作性方法。

这就开启了 C++Builder 的一大势:利用更多的库,尤其是它所提供的核心库的力量。C++Builder 的开发者可以使用 Boost 、{ fmt }和其它 C++ 库。研究人员还可以使用 Delphi 一起构建的大量库,这包括核心用户界面库、被称为 VCL 的 Windows 本地 UI 库以及跨平台框架 FireMonkey。

 

应用范围广,速度快


从工程到科学研究、纺织品到绿色电力、博物馆到百货商店,使用 C++Builder 制作的日常实用应用程序数不胜数,甚至是部署在整个国家并被数百万人使用的工业级软件。现在越来越多的行业在使用 C++Builder 制作的软件,因为它的生产力和库可以帮助开发人员快速完成工作,并且做得很好。

随着时间的推移,它逐渐迁移了技术,例如现在使用 Clang,同时保留了多年的兼容性。研究表明,人们使用 C++Builder 构建应用程序的速度比使用其他 C++ 产品快五倍。总而言之,它是一个值得人们长期依赖的产品。

参考链接:

1.https://blogs.embarcadero.com/celebrating-25-years-of-cbuilder/

2.https://25.cppbuilder.dev/?page_id=117

END

 

《新程序员001-004》全面上市,对话世界级大师,报道中国IT行业创新创造



— 推荐阅读 —
  
  
    
Vue、GitHub 深陷漩涡,React、Node.js 站队乌克兰,开源“锅”从天上来
☞当开源奔向物流,阿里云 PolarDB-X 数据库与韵达携手的背后
☞苹果春季发布会前瞻:全新 iPhone SE 3 将揭晓,M2芯片来袭?
登录查看更多
0

相关内容

编译器(Compiler),是一种计算机程序,它会将用某种编程语言写成的源代码(原始语言),转换成另一种编程语言(目标语言)。
【干货书】C++实战编程指南,附549页pdf与Slides
专知会员服务
82+阅读 · 2021年4月23日
专知会员服务
91+阅读 · 2020年12月26日
专知会员服务
98+阅读 · 2020年12月19日
【2020新书】现代C++初学者指南,301页pdf
专知会员服务
159+阅读 · 2020年7月24日
【Manning2020新书】Elm 实战,344页pdf,Elm in Action
专知会员服务
49+阅读 · 2020年4月14日
【新书】Java企业微服务,Enterprise Java Microservices,272页pdf
“C 不再是一种编程语言!”
CSDN
0+阅读 · 2022年4月4日
「Hello World」中的「bug」
机器之心
0+阅读 · 2022年3月22日
2022年,Rust 将成为 Linux 内核第二官方语言?
AI前线
0+阅读 · 2021年12月20日
Flutter 2.8 正式发布
谷歌开发者
0+阅读 · 2021年12月15日
百闻不如一码!手把手教你用Python搭一个Transformer
大数据文摘
18+阅读 · 2019年4月22日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
5+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
2+阅读 · 2009年12月31日
Building Odia Shallow Parser
Arxiv
0+阅读 · 2022年4月19日
Arxiv
23+阅读 · 2020年9月16日
VIP会员
相关VIP内容
【干货书】C++实战编程指南,附549页pdf与Slides
专知会员服务
82+阅读 · 2021年4月23日
专知会员服务
91+阅读 · 2020年12月26日
专知会员服务
98+阅读 · 2020年12月19日
【2020新书】现代C++初学者指南,301页pdf
专知会员服务
159+阅读 · 2020年7月24日
【Manning2020新书】Elm 实战,344页pdf,Elm in Action
专知会员服务
49+阅读 · 2020年4月14日
【新书】Java企业微服务,Enterprise Java Microservices,272页pdf
相关基金
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
5+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
2+阅读 · 2009年12月31日
Top
微信扫码咨询专知VIP会员