现在很多开发app技术人员都要手中掌握好相不对应的技术,目前ios应用前端是实现object-c的,所以才要会oc这个语言,假如是windows应用程序,也可以使vc,c#,vb,开发android用java,开发苹果用object-c,的新web应用程序用java,c#,php等。
google一直在仔细考虑是否让它的android开发者从使用java语言来形成完整应用程序快速切换到可以使用kotlin语言。
googleandroidstudio的技术负责人jeffreyvangogh可以表示,这个问题在google发出的“android应用程序开发应该优先权使用kotlin”的这份声明中被提议跑来。
但是android开发“kotlin-first”意味着什么?在今年的googlei/o大会上,vangogh对不使用java和kotlin开发的后果作了具体一点地说明。
“其实,我们在很多方面将不再支持什么java编程语言,”他在出具下面这张表时笑道。
640?wx_fmtjpeg
“只不过,假如你看一下其他的地方,诸如我们的在线培训示例,我们将是需要不使用kotlin编程语言,然后我们将"尽人事听天命(besteffort)"地在用java。当然,也有一些功能,诸如多平台项目和jetpackcomposeui工具包,这些功能只会用kotlin语言可以提供。”
google早就在一系列自己的产品中开始建议使用kotlin语言的这一现实,挺好的地问android开发者是否是应该要从java切换到kotlin这个问题。对此google而言,巳经就开始可以使用kotlin的产品包括googledrive、googlehome、nest和androidsystemui。
“请最好别把“kotlin-first”表述成你要用kotlin来原先扩写你所有的java代码。这又不是我们我希望你做的,”他开口说道,再者,他还需要补充道,google本身也也没不打算用kotlin重新写过可以做到的所有软件。
“看下androidstudio,这是成千上万行的代码。现在只有一10%的androidstudio的某个特定代码是用kotlin写的。”
“我们采取的措施的做法是,我们只用kotlin来c语言设计新的功能。这是所需的,毕竟kotlin与java本身很强的互操作性。你这个可以用kotlin编译程序单个类,并将其它所有的类留给java;或则用kotlinc语言设计99%的代码,而将残余的部分丢给java。”
他另外说,还必须确定一些紧张因素,比如app开发所处的阶段,他说看来在项目开始的时候就不使用kotlin来实现方法新功能更加有意义。
他还说,另一个问题是开发团队内部对kotlin倒底有多大的热情。
“这取决于它你的团队。他们对kotlin语言很有兴趣吗?他们对按结构它超感吗?”他说。
vangogh同样强调指出,区分kotlin也有一些不利因素不需要权衡。比如说开发人员是需要一段时间才能熟悉kotlin的最拿手方法,来汇编语言出条件符合规范标准的代码。
他说:“kotlin语言有挺好的特性,更高的生产率和满意度,但你前提是确定学习曲线,人们不需要时间来学kotlin的惯用方法,来c语言程序出要什么国家规范的代码。”
“我们看到大多数人在第一周正在写kotin时,他们虽然是在用kotlin写java代码,他们花了三到六个月的时间才唯一开始写条件符合kotlin习惯的代码。”
他说,导致kotlin编译器大多比使用java的速度慢,软件最终形成过程也需要更长的时间,当然了google正准备“努力”提升到编译器的速度。
他需要补充说,当使用kotlin时,生成的apk(用于在安卓设备上完全安装应用程序的软件包)也要比较小。
他说,google在android系统上有“一大堆正在进行的kotlin工作好”,除开jetpackcompose的开发工作、作用于jetpack的新kotlin存储(ktx)api的开发工作,正在努力再努力提升到比较新的1.3.30版kotlin中的编译器速度的构建体系工作,这些再改进工具、文档和示例代码的开发工作。