通过与 Jira 对比,让您更全面了解 PingCode

  • 首页
  • 需求与产品管理
  • 项目管理
  • 测试与缺陷管理
  • 知识管理
  • 效能度量
        • 更多产品

          客户为中心的产品管理工具

          专业的软件研发项目管理工具

          简单易用的团队知识库管理

          可量化的研发效能度量工具

          测试用例维护与计划执行

          以团队为中心的协作沟通

          研发工作流自动化工具

          账号认证与安全管理工具

          Why PingCode
          为什么选择 PingCode ?

          6000+企业信赖之选,为研发团队降本增效

        • 行业解决方案
          先进制造(即将上线)
        • 解决方案1
        • 解决方案2
  • Jira替代方案

25人以下免费

目录

kotlin为什么把类型放在后面

kotlin把类型放在后面是因为类型放在后面是自然语言的声明方式,这样更接近人类的思想。类型放在前面是为了方便编译器,但这样做不符合正常人类的逻辑思维。现在,人们为了自己开发出更适合人类学习和使用的语言。

一、kotlin为什么把类型放在后面

kotlin把类型放在后面是因为类型放在后面是自然语言的声明方式,这样更接近人类的思想。类型放在前面是为了方便编译器,但这样做不符合正常人类的逻辑思维。现在,人们为了自己开发出更适合人类学习和使用的语言。当然,如果你已经习惯了类型放在前面,你可能反而不适应类型放在后面。因为你的思维已经不符合正常人类的逻辑了,你的思维被爷爷级一辈的人物强行塑造成了程序的思维。

kotlin很多语法借鉴了Pascal/Delphi的语法

var

a : Integer

a := 1000;

if (a in [0..2000]) then

function test(param1 : string):Boolean;

kotlin算是C和Pascal语法的混合体

实际上Pascal很多语法比C的语法更合理。Pascal是70年出现厄,C是71年出现的,实际上C是做了妥协,很多语言的合理性是倒退了一些的,甚至比Pascal和C的共同祖先Algol还倒退,但是当时适当的妥协照顾了当时的硬件和操作系统情况。

无论如何看起来Kotlin和Swift都走在最正确的道路上,吸取众家之长。如果Kotlin和Swift能把领域在扩展,变成通用开发语言就更好了。

这两种语言都是语法优美简洁,理念先进的。

延伸阅读:

二、泛型是什么

泛型就是可以定义带类型参数的类型,当这种类型的实例被创建出来时,类型形参会被替换为类型实参的具体类型。

所以这里重点是类型参数,关于参数我们很熟悉,比如方法的参数在定义方法时就是形参,调用时就是传递的实参给方法,那类型参数就是我们平时在类或者方法中经常看见的T,这个T就是类型形参。

//这里E就是类型形参

public interface MutableList<E> : List<E>

//这里的String就类型实参

val list: MutableList<String> = mutableListOf()

这里就和我们平时调用方法一样需要传递参数,只不过这里传递的参数是类型而已。

相关文章