Kotlin(コトリン)は、誕生してから10年と経たない、新しいプログラミング言語です。そんなKotlin(コトリン)は今、世界中のエンジニアたちの間で注目を集めつつあります。国内で見ても、IT企業の最王手であるYahoo! JAPANが、『ヤフオク』や『GYAO』といった超有名アプリ(Android)開発で、この言語を導入しています。今後、さらに盛り上がりを見せることでしょう。今回は、そんなKotlin(コトリン)の誕生から現在に到るまでの歴史を見ていきたいと思います。
2011年7月にKotlin(コトリン)は、誕生しました。開発者は主にアンドリー・ブレスラフ、ドミトリー・ジェメロフの二人。彼らは、ロシアのサンクトペテルブルグにある『ジェットブレインズ社』の研究所で、この言語の開発に取り組みました。ソフトウェア開発企業である同社は、Javaをはじめとした、数多くのプログラミング言語に対応するIntelliJ IDEA(インテリジェイ アイディア)という統合開発環境を開発した会社としても有名です。
Kotlin(コトリン)という名前の由来ですが、これは開発拠点であるサンクトペテルブルグ脇、バルト海に浮かぶ『コトリン島』にちなんで命名されたそうです。こちらの島は、日本でいう淡路島のようなもので、全長約12kmほどしかないとても小さな島です。
そもそもKotlin(コトリン)は『Javaを、もっと簡潔・安全になるように』との想いから、開発がスタートしました。
言葉通りKotlin(コトリン)は、コードを簡潔に書くことができます。例えばJavaでは7行ほど書く必要があったコードを、たったの1行で済ますことができるものもあります。
それだけではありません。比較的面倒な、文の末尾にセミコロンが不要。そして、初期値がない変数を定義することも可能です。
エンジニアたちにとっては、非常に使い勝手の良い機能が豊富に搭載されています。専門的な用語を使うと、この言語は型推論やラムダ式,トレイトなどのモダンな文法,機能を持った静的型付けの本格的なオブジェクト指向言語です。
ただ気になるのは「なぜJavaではなくKotlin(コトリン)が必要だったのか」ということ。Javaは、リリースから20年以上の歴史を誇る、言わずと歴史あるプログラミング言語です。時間の経過とともに、ライブラリの数も豊富に蓄積されて聞きました。もちろん現在でも、世界各国のエンジニアたちに愛用されています。
一方でその歴史の古さゆえに、過去の問題点を踏まえて開発された新興言語と比べると、コードがやや冗長になるという側面もありました。そして、以前のバージョンをサポートするために、流行りの言語を取り入れづらくなっていたのです。
そんな課題を解決すべく開発が始まったKotlin(コトリン)ですが、非常に強くJavaの血を受け継いでいます。だからこそ、Javaとの親和性が非常に高いという、他の言語にはない利点を持っています。
基本的にプログラミング言語は、新しい言語を利用すると、それまで使っていた言語のソースは利用できなくなります。要するに、今まで開発してきたプログラムを、作り直すor移植する必要が出てくるのです。
その点、Kotlin(コトリン)はJavaで書いたコードを流用することができます。逆に、Kotlin(コトリン)で書いたコードをJavaで利用することもできるのです。つまりは、これまでのように、コードを書き換える必要がないのです。
それでいて、Javaよりも開発効率が高い。記述ルールが簡潔でコードがシンプルに書ける。コードがシンプルに書けると、入力の回数が減ります。それは結果的に、不要な文字などを、誤って打ち込む危険性を減らすことにも繋がります。
実はこの頃のIT業界は、Kotlin(コトリン)以外にも実に様々なプログラミング言語が誕生する時代にありました。「いかに効率よく開発を進めるか」が、これまで以上に重要になってきたからです。
同言語がリリースされる1年前の2010年には、すでに、Scalaが流行り始めている状況でした。また2011年にKotlin(コトリン)が誕生した後も、Apple社が開発したSwift(2014年にベータ版をリリース)、Mozillaが開発に携わったRust(2015)など、非常に多くのプログラミング言語が生み出されています。
そしてそのほとんどが『型推論付きの静的型』の言語です。型推論とは、変数や関数の型を、エンジニア自身が明示せずとも、プログラムがそれを推論してくれることを言います。シンプルに説明すると、余計な手間が減ったということです。
現在もそうですが、その頃も「流行していたサービスが、気付くと市場から消え去っていた」なんてことが、珍しくない世の中でした。そんなことにならないために、企業やエンジニアたちは、めまぐるしく変化する状況に、素早く柔軟に対応する姿勢が求められます。
そんな中で、開発やメンテナンスに手間がかかってしまうというのは、命取りにもなるということです。つまりは、より開発効率の高いツール・環境が求められます。Kotlin(コトリン)はそんな状況かで、ある種必然的な流れとして生み出されたのでした。
Kotlin(コトリン)は、かつてない速さで人気が高まっていきます。それほど広く世の中に知られるようになった要因は何でしょう。
一概には言えませんが、OSS(Open Source Software)として、開発環境とそのソースコードが、一般公開されていることが一つとして挙げられるでしょう。またその人気と実績を証明したのは、2017年5月です。あのGoogleが「Kotlin(コトリン)を公式言語に追加する」と発表しました。
それがどう影響しているのかは、調査会社のRedmonk社が発表した、プログラミング言語の人気ランキングを見ると明らかです。
同言語は元々65位からスタートしましたが、2017年の6月頃には46位に。2018年には27位まで上昇しました。近々「Javaをも超えるのではないか」とまで言われています。
そんなKotlin(コトリン)ですが、現在も着々と改良が進められています。2017年11月にKotlin1.2が発表されましたが、その最新版としてKotlin 1.2.30のバージョンがリリースされています。IntelliJ IDEAのプラグインを強化するなど、機能性を高めただけでなく、細かなバグを修正しパフォーマンスも改善されました。
また、気になる国内の求人市場ですが、年々それが拡大しているようです。例を挙げるとレシピサイトのクックパッドや、名刺アプリのSansan、グルメ情報サイトRettyなど、名のある数々の企業が、Kotlin(コトリン)のスキルを持ったエンジニアの募集を開始しています。
印象としては、スピード感を重視したベンチャー系企業での採用が多いようです。応募条件としては、ほとんどがMustではなく、歓迎条件Wantとして位置付けています。歴史の浅い言語なだけに、まだまだ情報が十分とまでは言えないですが、新しい流れを掴むには、絶好のチャンスと言えます。
3つの質問に答えるだけで、フリーランスエンジニアとしての単価相場を算出します。 スキルやご経験にマッチする案件もあわせてご紹介いたしますので、気軽にご活用ください! ※単価相場の算出に個人情報の回答は必要ございません。