前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >第二章 X# 的历史渊源及其理念

第二章 X# 的历史渊源及其理念

作者头像
firstxinjie
发布2024-12-06 14:41:13
发布2024-12-06 14:41:13
1280
举报
文章被收录于专栏:X#(XSharp)X#(XSharp)

如果你是 80 后,你就已经完全错过了“PC 数据库的黄金时代”,这可能始于Wayne Ratliff帕萨迪纳 喷气推进实验室 无聊的一天,帕萨迪纳是一个非常靠近洛杉矶的城市(我曾希望我也能在那里工作, 但至少我去过那里一次)。

在这短短的一章中,我将概述最终导致X# 发展的重要事件。如果你对 X# 很熟悉,并且没有使用过VO 或 FoxPro ,你可能会惊讶地发现 X# 的根源可以追溯到上世纪80 年代初。

X# 简史

一切始于上世纪 80 年代。 那是我们大多数人开始编程的年代。 那是软件开发的快乐时光,前途一片光明(而且那时我们都很年轻)。

免责声明:我并不是表中所列每个事件的亲历者。 我在 dBase 刚问世时玩过它,在一个小型应用程序中使用过dBase III(但从未完成它),除此之外,我只是作为一个旁观者目睹了Clipper 的发展及其向 Visual Objects 的演变,以及后来 X# 的第一个化身。 因此,如果表中有任何不正确的地方,请告诉我,以便我尽可能保持表中内容的准确性。

年份

事件

1978

Wayne Ratliff 在美国喷气推进实验室开发了一种名为 Vulcan 的数据库编程语言供自己使用。后来,他开始将 Vulcan 作为产品销售。

1980

George Tate 和 Hal LashleeWayne 在发现 Vulcan 的同年8月成立了 Ashton Tate 公司,并从 Wayne Ratliff 手中购得 Vulcan 的版权。

1982

Ashton Tate 发布了针对 IBM PC 的 dBase II

1984

Ashton Tate 在德国发布了 dBase III

1984

随着 FoxBase (后来的 FoxPro) 的发布,市场上出现了第一个dBase的克隆版本。

1984

Nantucket 由 Brian Russel 和 Berry George ReBell 在加利福尼亚马里布一家名为 Nantucket Inn 的餐厅创办。

1985

Nantucket 发布第一款 dBase 编译器 Clipper 1.0(85 年冬)

1987

Burak Kozan 博士等人在科隆成立了 Nantucket GmbH 公司,作为 Nantucket 的德国子公司。

1988

Ashton Tate 几经推迟后发布 dBase IV

1990

第一个 Clipper 编译器的测试版在科隆 Clipper 会议上亮相。

1990

由德国南塔基特开发人员发起了阿斯彭(Aspen)项目(后来成为 CA-Visual Objects)。

1991

Ashton Tate 被 Borland 收购(该公司主要以 Paradox 数据库和 Turbo Pascal 编程语言而闻名)。

1991

Borland 发布了 dBase IV 1.1

1992

Nantucket 被 Computer Associates (CA) 以 8000 万美元(估计)收购。

1994

CA 发布Visual Objects 的第一个版本,作为一种先进的 DMBS 开发系统,其中包含一个先进的 Clipper OOP 版本(源自 Aspen 项目)。

1997

CA-Visual Objects 2.5 发布

1998

Borland 公司更名为 Inprise 公司

1999

Inprise 公司将 dBase 的所有权出售给 Ksoft 公司。该公司后来更名为 dBase LLC

1999

Harbour 项目是 Clipper 的开源版本。Harbour 开发人员表示,它与 Clipper 具有 100% 的向后兼容性。

2001

Inprise公司更名为Borland软件公司

2002

CA 将 Visual Objects 的开发和分销权出售给 GrafX(总部位于佛罗里达州西棕榈滩)。

2002

经过数年的开发,微软发布了 .Net Framework 1.0

2003

GrafX 开始开发 Vulcan.Net,作为新 Microsoft .Net Framework 的 Visual Objects 后续产品

2007

GrafX 发布 Vulcan.Net 1.0。它是.Net 框架下第一个 xBase 语言

2009

Borland 被 MicroFocus 收购

2015

GrafX 的前员工和其他开发人员通过使用 Roslyn 编译器平台(该平台为 .Net 编译器的内部服务提供 API),创建了 X#,作为 Vulcan .Net 的开源继承者。

2015

XSharp BV 于荷兰成立,旨在继续开发和销售 X# 。

2017

GrafX 公司年终倒闭

2017

XSharp BV 发布 X# 1.0.1

2023

XSharp BV 于8月发布了最新的 X# 2.17

2024

预计发布支持 .Net 7 的 X# 3.0

表 2.1: 包含所有与 X# 相关的历史事件的关键时间表

X# 的理念

根据我自己的经验,X# 的理念是提供一种大多数 XBase、VO和 FoxPro 开发人员以及 C# 和Visual Basic 开发人员所熟悉的编程语言,以及一个利用.Net 运行时所提供的所有功能的开源项目。

我向 X# 的发明者 Robert van der Hulst 询问了他的意见,他非常友好地回答了我的问题:

创建 XBase 语言的开源版本,帮助现有的来自不同 XBase 产品的 XBase 开发人员延长其产品的寿命。 通过 X#,他们可以将自己的应用程序从现有的Win32 环境转移到任何支持 .Net 的平台上。我们希望通过这种方式延长用 XBase 语言编写的现有产品的使用寿命。X# 使用 Antlr 和 Roslyn 等开源产品,同时也作为开源产品进行开发,以回馈社区。

Roslyn 的影响

您可能在多个场合看到过这样的一句话:X# "位于"Roslyn之上(可以这么说),或基于Roslyn,或依赖于Roslyn。

Roslyn只是微软公司在上世纪八九十年代广泛使用的"代号 "之一--就像卷起袖子的夹克(例如迈克尔-杰克逊在著名的《颤栗》视频中穿的那件)。

它的正式名称是.NET编译器平台。

(本节中所有图片的版权均归微软所有--摘自 https://docs.microsoft.com/en-us/dotnet/csharp/roslyn-sdk/compiler-api-model)

图 2.1:Roslyn 编译器管道

即使 X# 开发人员对 Roslyn 一无所知和/或根本不关心(这两点都是合理的),每个 X# 开发人员也应该了解其中的两点:

1.Roslyn 可使开发人员轻松为Visual Studio 代码编辑器编写编码助手

2.Roslyn 可使X# 开发团队轻松实现 C# 语言的最新功能

第 2 点尤其令人信服,因为我们可以预期,C# 新版本(请记住,2022 年C# 已是第 11 版--C#版本概览)中的大多数功能迟早会在X# 中予以实现。

.Net简史

X# 是100% .Net 语言。它始终需要.Net 运行时才能执行(.Net 7 和Native 代码编译器可能会改变这一点,但这是另一个话题)。

.Net 运行时是.Net Framework 或 .Net 6、7 或8 的一部分。

术语".Net"、".Net Framework "甚至".Net runtime "基本上意思相同。此外,还有一个 .Net Framework SDK,其中包括一些额外的命令行工具。

.Net Framework 由三个主要部分组成:

1.CLR(公共语言运行时)

2.类库,它由大量的"程序集"组成(函数库的另一个花哨的说法,或者只是 dll 文件)

3.C#、F#和 Visual Basic 的语言编译器

2016 年,微软决定将.Net Framework开源,并使其跨平台化。第一个版本是.Net Core 1.0。随着 2019 年 .Net Core 3.1 的后续版本.Net 5.0 的发布,"Core "一词被去掉,因此 .Net Core 变成了 .Net。目前的版本是 .Net 7,但.Net 8 已宣布将于 2023 年底发布。

本书中也有一小章是关于 .Net 7 的。

X# 2.x 总是需要.Net Framework。

“需要”究竟是什么意思?就是必须先安装.Net Framework。最新版本是 4.8。由于微软决定停止开发 .Net Framework,转而开发".Net Core",因此不会再有 4.8 之后的版本了(但正如你所知道的,你永远无法确定这一点)。

.Net 有多好?

由于.Net 不是一个选项,这个问题更多的是理论上的兴趣。根据我长期使用 .Net 框架的经验,我的总体感觉是非常好。CLR、类库和编译器都非常可靠,功能丰富,文档齐全。自从转向 .Net Core 以来,一切都是免费开源的。特别是 .Net 7 给我留下了非常好的印象。

我还了解 Java,甚至用它开发过一些应用程序。Java 也是一个非常好的框架和运行时,至少在技术上与 .Net 处于同一水平。但是,比较.Net 和 Java 就像比较一流的有机苹果和一流的有机桔子一样,因为这两种框架通常在不同的环境中使用。如果说.Net有什么优于 Java 的地方,那就是(至少)有六七家组件供应商提供一流的支持,他们以通常可以承受的价格提供开发人员所希望的一切。

年份

事件

2000

微软宣布推出 "下一代 Windows 服务"(NGWS),几周后成为 .Net Framework

2000

.Net框架的第一个测试版在旧金山举行的PDC大会上发布。微软高管Paul Maritz 指出,.Net 的核心将被标准化,并最终开源(实际上这发生在几年后,早在 .Net Core 之前)。

2002

比尔-盖茨在佛罗里达州奥兰多举行的 PDC 大会上展示了 .Net Framework 的第一个版本。

2002

2 月 13 日,比尔-盖茨正式发布了 Visual Studio .Net,并将其描述为 "第一个用于构建 XML Web 服务和下一代互联网应用程序的完全集成的开发环境"。

2003

微软在一年一度的 PDC 大会上宣布,"Longhorn "是首个基于 .Net UI 的操作系统(还有其他一些疯狂的功能)。仅仅过了一年,Longhorn 项目就被取消了。

2005

.Net Framework 2.0 作为 "真正的" 版本出现,根据最初计划的功能,该版本的功能几乎是完整的。所有的 "数据库类 "在最终的 4.8 版本之前都只是在小细节上有所改变。

2006

破产的 Longhorn 项目中最重要、最实用的部分已集成到 .Net 3.0 版本中(真正的版本又花了一年时间,以 .Net 3.5.1 发布)。其中一个重要功能是 LINQ)。

2016

微软宣布将 .Net Core 作为 .Net Framework 的跨平台继承者。之后,.Net Core 将更名为 .Net。

2022

.Net Framework 4.8 可能是 .Net Framework 的最后一个版本。

2023

.Net 8 计划于年底发布

表 2.2: 与 .Net 相关的所有历史事件的简短时间表

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-07-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 xinjie的VFP 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • X# 简史
  • X# 的理念
  • .Net简史
    • .Net 有多好?
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档