喜欢就关注我们吧!
诞生于1995年的 Delphi 现在已经 26 岁了。1995年2月14日,Borland 公司推出了面向开发者的新工具——Delphi,旨在接替 DOS 时代盛行一时的 Turbo Pascal。
说到这两款产品必然离不开它们的灵魂人物——Anders Hejlsberg,他编写了 Turbo Pascal 第一个版本的编译器,加入 Borland 后继续开发 Turbo Pascal,并带领小组设计了 Turbo Pascal 的继任产品 Delphi。Anders Hejlsberg 还担任了 Turbo Pascal 所有版本与 Delphi 前 3 个大版本的架构师。
▲ 左为 Anders Hejlsberg(另外两位也是大牛,猜猜是谁 )
为庆祝 Delphi 诞生 26 周年,Delphi 产品经理 Marco Cantu 发表了一篇回顾 Delphi 的文章,文章选取了 13 组图片,每组图片包含 26 年前和现在的对比。
- Windows in 1995 Delphi 于1995年发布时,最常用的 PC 操作系统是 Windows 3.1(以及支持网络的 Windows 3.11),下面是在虚拟机运行 Windows 3.1 的截图。
- Windows in 2021 下图是 Windows 10,也是 Marco Cantu 主力使用的桌面 PC 当前安装的版本。可以看到,无论是系统界面,还是计算机的硬件功能都发生了巨大变化。
- Delphi 1 界面外观 26年前发布的初代 Delphi IDE 用户界面。
- Delphi 10.4.1 IDE 今天的 Delphi 用户界面(使用了怀旧风格的样式)。
- 互联网起步阶段 互联网刚刚兴起的时候,最受 Delphi 开发者欢迎的论坛是 Compuserve,当然这是“资深”程序员才会感同身受的体验。
- 互联网现在无处不在 下面这些数据足以看出我们对互联网和网络的依赖,数据来自 https://www.internetlivestats.com/。
- 手机打来的电话还有很多 Marco Cantu 表示自己在1995年的时候好像还没有手机。当时的手机长这样(爱立信 GH688):
- 现在智能手机比我们拥有的计算机功能更强大 现代人缺少手机几乎不能生活,目前的手机大多数都是多核电脑,内存比当年的 PC 还大,而且它们可以运行 Delphi 应用程序。
- Delphi 1 的窗口是一个 TForm 早期的时候,Delphi TForm(和其他 TWinControl 类一样)封装了来自 user.dll 的 Windows 句柄,表单操作调用 Windows API 并触发系统消息。Delphi 是可视化的(见下图),但具有核心的 OOP 结构——应用程序表单继承自基础 TForm 类。
- 窗口仍然是 TForm(或者 VCL + FMX) 如今,表单仍然是应用程序的基础,无论是 VCL(见下面最开始的基类定义)还是 FireMonkey,在这种情况下,表单都映射到 Windows、macOS、iOS、Android 或 Linux 的 UI 元素。
- 电子游戏起步阶段 1995年,电子游戏处于起步阶段。
- 现在电子和在线游戏拥有巨大的市场 下图是一款用 Delphi 编写的手机游戏。
详情查看此博客:https://blogs.embarcadero.com/fun-ranch-mobile-game-is-developed-with-delphi/
- 在 Delphi 1 中编写计数到 26 的程序 下面是可以在1995年编写的用于在 Delphi 中对数字进行计数的代码,以及由此产生的简单应用程序。
- 与现在用 Delphi 编写同样的程序并无二致 现在可以用 VCL 或 FireMonkey 编写和编译相同的代码,但也可以利用 Delphi 语言的新特性来编写,如下图所示。
- 曾经使用的数据库是 Paradox, DBase, Clipper, FoxPro Delphi 曾因其与数据库具备通信功能而被人熟知 (Oracle + Delphi),它有一个向导,可以轻易地创建数据库应用程序。
-
现在的数据是 Oracle, SQL Server, Azure, AWS, REST API…… 现在可以使用 FireDAC 和许多其他库来访问 Delphi 中的数据,但是数据不再仅存在于数据库中。查看通过 Delphi 的 REST Debugger 获取 rest API 数据的博客。
-
Marco Cantu 在1995年拍摄的照片(Delphi 发布后几天)
-
Marco Cantu 一个月前拍摄的照片
-
RAD 是一场革命 Delphi 提供了(现在仍提供)快速可视化设计(如之前的 VB)和强大的 OOP 框架的独特组合,从而允许在同一环境中以无缝的方式调用和编写组件。下面是早期的广告:
- Delphi 依旧提升开发效率 尽管诞生了许多其他的编程风格,开发者仍可在 Delphi 中使用任何高级模式(MVVM、IoC 等),Delphi 继续提升开发者的生产力。
- 26年前技术书籍非常重要,因为开发者无法通过 Google 搜索课程名称或在 Stack Overflow 上进行查找 下面是早期的 Delphi 技术书籍:
- 现在技术书籍仍然十分重要,无论是电子书或是纸质书 技术类书籍的市场小了很多,也跟之前大有不同,不过书籍仍在印刷。
- VCL 是 WinAPI 最优秀的库 当时没有其他类库与 Windows API 很好地集成,微软的 MFC 和 WinForms 也从未达到 VCL 的质量和完整性。下面是 VCL 库的层次结构。
- VCL 是 WinAPI, COM integration, WinRT 以及即将到来的 Project Reunion 最优秀的库 VCL 库不断扩展,截至目前封装了 Windows APIs、COM 和 shell 对象、以及 WinRT platform API。开发团队也一直在添加新的组件并映射到新的 API。VCL 已经拥抱微软 Project Reunion,未来将会提供更加丰富的功能。下面是 VCL 风格的应用程序。
- 26年前的 Delphi 使用起来很有趣 对于开发者来说,Delphi 具有很多使用乐趣,让人乐于其中。下面是 Delphi 架构师 Anders Hejlsberg 在 Delphi1 埋下的复活节彩蛋。
- 现在 Delphi 使用起来仍然很有趣 今天的 Delphi 也仍然很有趣,它拥有有一个活跃的社区,以及许多才华横溢的 MVP。上一个版本的 Delphi 也埋了一个彩蛋来庆祝 25 周年纪念。
最后回顾一下 Delphi 的历史: