由于看到越来越多新的技术或语言冒起或诞生,因此想对此说说个人的意见。
看到网络上有不同人士对Kotlin有着不同的意见,
例如:
1) 觉得学Java那有什么意思
2) 为什么要用Kotlin取代Java作为建议语言作开发Android应用
因此想借此机会分享个人的看法。
**对于普遍初学者入门语言的比较**
a) Java 是其中一种十分严格的语言,个人觉得用此作入门或许是一个不错的选择。
部分项目:
i) 物件导向程式设计 (Object-Oriented programming,OOP)
ii) 介绍JDK,JRE
iii) 数据类型,变数 (Data types, variables)
iv) 其它(etc)
由于其严谨性,因此当有语法错误 (Syntax Error,eg. 类型错误 incompatible types)的时候, 整合开发环境 (Integrated development environment,IDE) 便会即时提醒开发者。虽然其错误显示详细取决于您使用的IDE,但这仍然有助程序员解决问题。
b) Python 事实上也能够限制开发者,例如强制利用缩排(indentation)去做分段(block)作分隔,虽然在一行程序语句中可使用分号(;)以作分隔前后句,但是由于该语言本体是没有常用的分号作句末的设定,因此个人认为对初学者来说,这是不良的习惯(理由:很多语言是用分号作句末),除非个人的程式设计发展方向已明确,否则不会以此语言作初学者的选择。
c) C 语言也是常见的选择,但由于其使用的并不是物件导向程式设计(Object-Oriented, OO),而是用结构化程式设计(Structured programming,struct), 因此很多OO概念不能够同时学习得到,所以如果时间不许可的话,可以直接以Java作入门,然后再学习C或C++。
**Android以Kotlin取代Java作为建议语言的理由**
本人相信Android是为了日后不会被Oracle所规范/控制,毕竟Java现在是Oracle所拥有。
**后记**
个人认为Java仍然有可学而成为首选的理由,然后再应按照发展方向学习不同领域使用的语言和技术。
相关消息:
https://www.theverge.com/2017/5/17/15654988/google-jet-brains-kotlin-programming-language-android-development-io-2017
特别鸣谢:
Jimmy, Derek, Heiman, Larry, Bacchus