5 年+的 flutter 开发者 debuggerx 回复
5 年+的 flutter 开发经验,也用 dart 开发过后端,我人为的 dart 的优点:
支持 AOT 编译,产物可以几乎无依赖的直接部署,这点可以对标 go 的部署方便,比 JS 、TS 、python 等需要运行时依赖的语言方便很多,比如我一个项目里 dart 后端只需要这样一个 Dockerfile: https://github.com/debuggerx01/dde_gesture_manager/blob/dev/api/Dockerfile 就可以得到一个 10 几 MB 的镜像,服务跑起来内存占用也才 50MB 不到,可以说非常方便了,资源消耗也够低
语法常规,可以说几乎没有非常特立独行的概念和语法,几乎所有语法特性都是在其他语言中经过验证的,结果就是 dart 学起来曲线平滑、写起来非常舒服、代码表达能力和组织能力也相当不错,尤其是在有其他语言如 Java 系列、js 系列、Python 、Swift 经验以后。举几个例子:
还算不错的工具链和 IDE 支持,pub 依赖管理比 npm 等好用不少,dart format 格式化可以避免多人合作风格不一导致的代码差异和冲突,dart compile 就可以很方便的将源码编译成 js/可执行二进制程序 /jit 快照 /aot 快照,jetbrains 全系和 vsc 都可以安装 dart 插件获得相当稳定的 IDE 支持( Swift/XCode ?),还有内置的基于 web 和 ws 的 DevTools ,分析程序的运行性能也很方便
几乎没有平台依赖,平台支持足够广泛,而且几乎都可以支持大部分功能,不像某些语言,号称跨平台,实际上是和某一平台和生态强绑定,其他平台只有“core”支持( C#、Swift ?),发展前景高下立判
生态已经足够繁荣。这点可能很多人会不认同,会去和 Java 和 js 比,但是就我而言,想做的东西几乎都可以用它做了,例如:
5 年+的 flutter 开发者 debuggerx 回复
5 年+的 flutter 开发经验,也用 dart 开发过后端,我人为的 dart 的优点:
支持 AOT 编译,产物可以几乎无依赖的直接部署,这点可以对标 go 的部署方便,比 JS 、TS 、python 等需要运行时依赖的语言方便很多,比如我一个项目里 dart 后端只需要这样一个 Dockerfile: https://github.com/debuggerx01/dde_gesture_manager/blob/dev/api/Dockerfile 就可以得到一个 10 几 MB 的镜像,服务跑起来内存占用也才 50MB 不到,可以说非常方便了,资源消耗也够低
语法常规,可以说几乎没有非常特立独行的概念和语法,几乎所有语法特性都是在其他语言中经过验证的,结果就是 dart 学起来曲线平滑、写起来非常舒服、代码表达能力和组织能力也相当不错,尤其是在有其他语言如 Java 系列、js 系列、Python 、Swift 经验以后。举几个例子:
还算不错的工具链和 IDE 支持,pub 依赖管理比 npm 等好用不少,dart format 格式化可以避免多人合作风格不一导致的代码差异和冲突,dart compile 就可以很方便的将源码编译成 js/可执行二进制程序 /jit 快照 /aot 快照,jetbrains 全系和 vsc 都可以安装 dart 插件获得相当稳定的 IDE 支持( Swift/XCode ?),还有内置的基于 web 和 ws 的 DevTools ,分析程序的运行性能也很方便
几乎没有平台依赖,平台支持足够广泛,而且几乎都可以支持大部分功能,不像某些语言,号称跨平台,实际上是和某一平台和生态强绑定,其他平台只有“core”支持( C#、Swift ?),发展前景高下立判
生态已经足够繁荣。这点可能很多人会不认同,会去和 Java 和 js 比,但是就我而言,想做的东西几乎都可以用它做了,例如: