帰ってきた「しっぽのさきっちょ」

しっぽのさきっちょ: 2016-11-08 付 (2016-11-10 更新)

Kotlin に関する覚え書き

no extension

今回は試して遊ぶ余裕がないので本当にただのメモ。

Kotlin は IntelliJ IDEA で有名な JetBrains 社が中心となって開発が行われているオブジェクト指向のプログラミング言語だ。 研究用とかではなく明確に産業利用を目的に作られている。

JavaVM で動作可能なバイトコードを吐くそうで, Android アプリの開発などでもすでに実績があるようだ。 また JavaScript のコードも吐けるらしい。

Kotlin の特徴の一つは「null 安全(null safety)」であることのようだ。 「null 安全」とは実行時にいわゆる「ぬるぽ(null pointer error or exception)1」が発生しない言語仕様になっていることで, Kotlin の場合はコンパイル時にチェックされる。

アプリケーションが「ぬるぽ」で落ちるならまだマシなほうで,最悪の場合は重大な脆弱性問題を引き起こす場合もあるため,「null 安全」という考え方は近年とくに注目されている。 そのため今どき流行りの言語では「null 安全」が取り入れられつつあるらしい2

更に Kotlin は Java からの置き換えを目論み,かつ言語仕様を拡張させている点も特徴である(Scala や Groovy 由来の機能や糖衣構文もある)。 少なくとも Kotlin では関数を第一級オブジェクト(first-class object)として扱うことができるのは大きい。 個人的には Java は終わってると思ってるので,こういうのは大歓迎である。

ブックマーク


  1. null の英語での発音は「ナル」に近いのだが,どういうわけか日本の IT 界隈ではドイツ語っぽく「ヌル」と呼ぶ人が圧倒的多数のようだ。私もそうだし職場の半径100m以内で「ナル」と呼ぶ人はいない。まぁ私は TTC (Telecommunication Technology Committee) を「てってーしー」と呼んでいた世代だからな(笑) (参考:IT業界で横行する恥ずかしい英語発音 - Qiita:コメントの議論が面白いので是非) [return]
  2. ちなみに Go 言語は全く「null 安全」ではない。「ぬるぽ」を緩和するような仕組みはないこともないが,コンパイラレベルで保証しているわけではない。(参考: Go言語がダメな理由 | プログラミング | POSTD[return]