Dart Frog:前端语言走向后端

DartFrog是一个由VeryGoodVentures创建的新框架,允许开发人员使用Dart进行后端开发。这个框架旨在解决后端性能对移动应用影响的问题,提供与Flutter类似的开发体验。DartFrog目前正处在发展阶段,计划在第三季度发布1.0版本,目标是简化API的创建和部署,支持热重载等功能,提高开发效率。
摘要由CSDN通过智能技术生成

Dart以其在Flutter中的使用和在移动应用中的部署而闻名,但一个名为Dart Frog的新框架允许开发人员在后端利用Dart——这是一家专门从事Flutter应用的咨询公司Very Good Ventures所创立的。VGV最著名的是Hamilton应用程序——没错,是音乐应用程序,这是首批在谷歌之外使用Flutter构建的商业应用程序之一。

VGV前首席工程师Felix Angelov表示,最终,后端的问题会影响移动应用程序,因此开发人员管理后端和前端非常重要。

“如果你有一个非常慢的后端或一个没有很好记录的后端,开发人员很难与该后端进行交互,这会破坏用户体验,或者反映在你交付的最终产品中。”Angelov表示,“Dart Frog是我们探索的方式,我们可以基本上使用与构建移动应用程序完全相同的编程语言和技术堆栈,而Flutter位于后端。”

为什么Dart用在后端?

Dart是一种通用语言,经过优化,可以在任何平台上创建快速应用程序。谷歌已经在后端使用了Dart——它的包管理器pub.dev允许开发者上传可以拉入项目的包,已经在后端内嵌在Dart中。Angelov说,后端广泛使用的问题是,工具“根本不存在”。

“这并不是因为语言没有能力。只是因为在所有底层组件之上没有足够的工具和抽象来让它更吸引人。”

Dart可以在服务器上运行,生成原生可执行文件,或者编译成JavaScript和机器代码,他补充道。

Angelov说:“Dart非常酷,因为它是一种灵活的语言,可以用于许多目标,我认为这就是它的特殊之处。”

此外,随着Flutter越来越受欢迎,将有更多的开发人员希望在后端使用Dart。

Dart Frog:前端移动到后端

Dart Frog仍处于幼年期。尽管开源框架现在是稳定的,但根据Angelov的说法,VGV的团队正在努力于今年某个时候发布1.0版本,目标是第三季度。VGV有一个功能路线图,它希望将其作为V1.0版本的一部分添加。Angelov说,目标是让开发者体验尽可能简单,并保持框架的轻量级。这就是他将Dart Frog与ServerPod等产品区别开来的原因——ServerPod是一个开源、可扩展的应用服务器,可用于在Dart中构建API。Angelov说,ServerPod结合了用于缓存的Redis、用于数据库的Postgres,以及对“可能需要或不需要的各种东西”的迁移支持。

他说:“尽管我们对Dart Frog的理念是:这是一个非常简单的核心,一组功能,无论什么情况下,每个人都需要,然后我们正在开发单独的模块,供稍后添加。Dark Frog主要是,如何才能使用Dart快速创建端点,然后为开发人员提供一些其他实用程序,使代码易于测试,从而实现热重载。”

热重载是Flutter最流行的功能之一。它确保实时更新所做的任何更改。这对于团队协作开发应用程序非常重要。

Angelov说,Dart Frog还使开发人员可以轻松地在云中部署API,以便与前端应用程序进行对话。

“你基本上可以在几分钟内生成一个新的Dart Frog项目,定义一个前端应用程序可以与之通信的几个端点,然后部署它。我们为现有的流行云提供商(如Google Cloud、AWS或Digital Ocean)提供了一些部署指南。”

VGV使用Dart Frog的一种方式是与客户公司开发和/或维护的遗留系统集成。这种方法允许公司逐步淘汰遗留系统,而不必破坏前端,这可能是一个真正的问题。当Angelov在宝马工作时,他们迁移到Flutter,作为迁移的一部分,必须重做API。

Angelov说:“如果使用Dart Frog这样的东西,我们可以创建移动应用程序,可以为前端层创建后端,比如中间件层,与遗留系统通信,然后就可以做各种事情,比如优化和缓存。我们基本上完全控制了移动应用程序和后端之间的通信渠道。前端不知道(就像隐藏在一个黑盒子后面)也不关心应用程序的实现细节。”

最终,Dart Frog可以部署一个代理,比如“对数据进行规范化和转换的中间件”。他补充道,这样的层还将支持许多其他优化。VGV使用这种方法是因为客户通常不允许顾问访问更改遗留系统,这将需要大规模更改和高风险。

他说:“通过采用这种模式,在客户端和遗留系统之间放置中间件,给了开发人员更多的控制权,并允许我们在前端和后端之间共享大量代码。这样,我们就不必在每次对遗留系统进行更改时都向App Store推送新版本。我们只需在中间件中修复这些更改即可。而且客户最终也不会在意——只要我们保持相同的合同,每个人都会很高兴。”

他补充道:“这真的是最大的好处之一,让我们的开发人员能够控制合同。”

此外,Dart Frog将生成一个Docker文件,该文件可以部署在任何支持容器的地方。

Dart Frog即将登场

Dart Frog有计划支持更多的云,特别是针对Heroku和Vercel的请求。正在讨论的一个选项是添加deploy命令,以便更容易地部署到用户想要的任何云提供商。

他说:“这是目前摩擦最大的一点。不是所有人都知道Docker是如何工作的,也不是每个人都知道如何将Docker容器上传到谷歌云。因此,可能有很大的空间来优化部署过程,只需单击或单击一个命令即可部署到某些云提供商。”

VGV希望做的事情之一是直接为IDE提供工具,例如Visual Studio代码和Android Studio。

他说:“我们希望直接从你的IDE中提供工具,让你可以在Dart Frog中创建一个新的端点,也可以直接从IDE中附加调试器,或者直接从IDE生成一个新项目。你不必打开一个新终端,运行一些命令或其他什么。”

Dart Frog是麻省理工学院授权的,Angelov鼓励其他人在1.0版发布之前尝试它。

“这就是我们的目标:轻便、快速、模块化,这样你就可以添加任何需要的东西。我们尝试用Dart Frog尽可能多地照顾你的复杂性,并提供与Flutter尽可能相似的开发体验。你使用Flutter获得的所有好处,如调试、开发工具等,我们尝试用 Dart Frog提供相同的东西。”

原文链接:

https://thenewstack.io/dart-frog-a-frontend-language-moves-to-the-backend/

bcdc6bac8c8f54a7e416b3c8ad33a071.jpeg

167665ed1753f2cb8486be8c32d6741b.jpeg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Dart学徒:使用Dart进行初级编程PDF》是一本介绍使用Dart语言进行编程的入门书籍。这本书的目标是帮助读者了解和掌握Dart编程语言的基础知识,以便能够开始进行Dart编程。 本书首先简要介绍了Dart编程语言的背景和特点。Dart是一种由Google开发的面向对象的编程语言,旨在用于Web开发。它具有类似于Java和JavaScript的语法,但有一些自己独特的特性,如强类型检查和异步编程支持。 接下来,本书逐步引导读者学习Dart编程的基础知识。它涵盖了变量、数据类型、运算符、控制流程等基本概念。读者将学会如何声明变量、使用不同的数据类型以及如何使用条件语句和循环来控制程序的流程。 本书还介绍了函数和类的概念,并展示了如何定义和使用它们来组织代码和实现复杂的功能。这包括创建自定义函数、编写类和对象、继承和多态等内容。通过掌握这些概念,读者将能够编写更加复杂和结构化的程序。 除了基本的语法和概念,本书还涵盖了一些高级主题,如异常处理、文件操作、网络编程等。这些内容将帮助读者进一步扩展他们的Dart编程技巧,并使他们能够解决真实世界中的实际问题。 综上所述,《Dart学徒:使用Dart进行初级编程PDF》是一本适合初学者的Dart编程入门教材。它通过简洁易懂的语言和丰富的示例,帮助读者快速上手并建立起对Dart编程的基本理解与实践能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值