美文网首页
为什么flutter使用dart作为编程语言

为什么flutter使用dart作为编程语言

作者: 廖布斯M | 来源:发表于2018-12-01 18:57 被阅读67次

    许多语言学家相信人类使用的自然语言会影响他们的思考方式。相同的原则应用到程序语言会怎样呢?使用不同语言的程序员对同一个问题会给出不同的解决思路。举个极端的例子,计算机科学家为了更加结构化的编程而去除了goto语句。

    这和flutter和dart有什么关系呢?关心大着呢。早期,flutter团队权衡了许多语言,最后选择了dart,因为dart满足构建用户界面的方式。

    3.dart能更简单的创建顺滑的动画和转场。dar可以在不需要持有锁的情况下进行对象分配和垃圾回收。像js一样,dart避免了抢占式调度和内存共享。因为flutter app被编译成了本地代码,所以在领域间切换无需使用桥接技术,像rn做的那样。flutter app启动也更快。

    4.dart使得flutter不需要一个额外的布局声明语言,比如JSX或XML。因为dart声明式,程序化的布局是更容易去阅读和理解的。因为所有的布局使用同一种语言,在同一个地方,这使得flutter利用先进的布局工具进行快速布局更为简单。

    5.dart是很好上手的,因为它的一些特性,对于使用过静态语言或动态语言的程序员,是相当熟悉的。

    dart的这些特性并不是特有的 ,但是这些特性的组合达到了最佳状态,将使得dart更为有力的实现flutter。很难想象,flutter若是不使用dart,是否还像它现在这样强大。

    编译和执行

    你可以跳过这一节,如果你已经了解了AOT和JIT编译,理解了静态和动态语言,还有虚拟机


    历史上,计算机语言被划分为静态语言(java,变量类型在编译期就已经确定)和动态语言(JavaScript,变量类型能在运行时改变)。静态语言,在运行时被目标机器直接执行。动态语言被解释器执行,不需要生成机器码。

    当然,事情变得更为复杂了。虚拟机的概念变得越来越流行。这种情况下虚拟机的输入语言做为一种中间语言。比如,一门程序语言(java)被编译成中间语言(字节码),并在虚拟机上执行。

    另外,现在有了JIT编译器。JIT编译器在程序执行期运行。

    //未完待续

    相关文章

      网友评论

          本文标题:为什么flutter使用dart作为编程语言

          本文链接:https://www.haomeiwen.com/subject/hsmrcqtx.html