导读 Facebook 开发和开源的 Go 实体框架 Ent 加入 Linux 基金会

近日,Linux 基金会宣布,由 Facebook 于 2019 年开发和开源的 Go 实体框架Ent[1],已在 Linux 基金会的管理下,帮助加速其开发,并促进使用它的开发者和公司社区。

Ent 的设计初衷是让开发人员能够处理复杂的后端应用程序。处理这些应用程序的开发人员面临着维护代码库的挑战,这些代码库用于管理数百种不同的实体类型,这些实体类型之间有大量复杂的关系。Ent 使用图形概念来建模应用程序的模式,并使用先进的代码生成技术来创建类型安全、高效的代码,与其他方法相比,这大大简化了与数据库的工作。

Ent 与传统的 ORM(对象关系映射器)类似,但它采用一种带己见的方法,在提高开发人员生产率方面特别有效。

  • 首先,模式是用图概念(节点和边)建模的,而不是更常见的面向表的方法,这种方法使遍历数据集和表达复杂查询更容易,更不容易出错。
  • 其次,Ent 生成的代码是完全类型安全的,这意味着在开发过程中很早就发现了许多常见的错误。此外,代码编辑软件可以很好地理解 Ent 代码,为开发人员在输入代码时提供有用的提示和反馈。
  • 最后,在实际的 Go 代码中定义模式,这有助于实现非常丰富的功能集,从与可观察系统的集成到在数据访问层定义隐私(授权)规则。
  • “从一开始,很明显,Ent 将为任何具有复杂技术堆栈的行业的各种用例提供独特和引人注目的价值主张。”Ent 创建者和主要维护人员 Ariel Mashraki 说:“承诺与广泛的用户联盟合作是我们开源 Ent 的主要原因。”

    自从它在 2019 年开放源代码以来,来自许多领先公司的工程师都向 Ent 贡献了代码,包括 Facebook、GitHub、Mail.ru、Scaleway 和 VirtaHealth。Ent 也被 CNCF 项目和其他开源生态系统所使用。Ariel Mashraki 最近成立了一家新公司Ariga[2],以 Ent 为基础创建数据结构解决方案提供商。“随着 Linux 基金会的中立治理模型的转变,我们(代表我和其他 Ent 维护者)希望加倍努力,使 Ent 成为 Go 数据访问的行业标准。在接下来的 6 个月里,你会看到社区有很多令人兴奋的发展,我们邀请所有人参与进来。”

    Ent 只是 Facebook 首先向公众开放源代码,然后将控制权转移给社区的各种技术中最新的一项。“让开源贡献者直接拥有项目技术愿景的这一额外举措,是我们长期致力于开放和可持续创新的一部分。”Facebook 产品经理 Michael Cheng 表示:“让项目的维护者绘制他们的进程通常会带来额外的投资、贡献,以及基于该项目构建产品和平台的新公司,比如 GraphQL、Presto、ONNX 和 Magma。我们看到 Ent 已经在遵循类似的模式,我们将为 Ent 社区欢呼,因为它进入了令人兴奋的下一个发展阶段。”

    你可以在 https://github.com/ent/ent 上了解关于 Go 的 Ent 框架的更多信息,对该技术进行示例,并向该项目作出贡献。

    原文来自:https://www.oschina.net/news/158203

    本文地址:https://www.linuxprobe.com/ent-join-linux.html编辑:张@宇,审核员:清蒸github

    Linux命令大全:https://www.linuxcool.com/