Kotlin案件の特徴と単価とは? 需要、今後の将来性と合わせてチェック!
Kotlinとは?
プログラミング言語の大半はアメリカや西欧の生まれですが、日本生まれのRubyとともに異彩を放つのがロシア生まれのKotlinです。2011年に公開されたオブジェクト指向プログラミング言語で、名称のKotlinは、バルト海の小島の名称にちなんだものといわれています。
開発したのはジェットブレインズ社。チェコに本社を置くソフトウエア開発の企業で、Javaの統合開発環境「IntelliJ IDEA」で知られています。
ジェットブレインズ社はJavaを始めとする開発環境の販売をビジネスとしています。Kotlinは、こうした経験を生かしてJavaをより簡潔な、安全な言語になるようにという目的で開発されました。
開発者は、ロシアのサンクトペテルブルクにある同社研究所のアンドリー・ブレスラフとドミトリー・ジェメロフです。2017年にGoogleがAndroidの公式開発環境に加えたことから、注目を集め、人気が高まっている言語です。
Kotlinの特徴
前述の通り、Kotlinの誕生は2011年です。Kotlinを語ると必ず引き合いに出されるJavaがサン・マイクロシステムズから公開されたのは1995年ですから、16年の差があります。
人によって表現はいろいろですが、Kotlinは、後発言語であるがゆえに、JavaとRuby、さらにC#、GroovyやScalaのいいとこ取りをしながらも、Javaより簡潔に記述できる言語であるといわれています。
JavaVM上でコンパイルされて軽快に動作し、Javaとキーワードがほぼ同じなので、Javaを扱ったプログラマであれば容易に使うことができます。
Javaは、C++の言語仕様からプログラムの堅牢性を損なうところを排除するように作られていますが、そのJavaも長年使われていると欠点が目立ってきます。よく指摘されるのが「NullPointerException」です。
Javaで書かれたプログラムは、正しく型付けされていれば不正な動作をしない、という言語仕様になっています(型安全)。しかし、nullはどんな型の変数でも取りうる値であるがゆえに、型安全の例外としてエラーの原因となります。
Kotlinの言語仕様では、変数はデフォルトでnullを許容しないと定められ、NullPointerExceptionと決別することが可能になりました。そして、型システムが堅牢なのはJava譲りなのです。
Javaを改良したいという開発経緯から、KotlinはJavaと非常に高い互換性を持っており、双方のコードを互いに、かつ特別な設定をすることなく呼び出すことが可能になっています。
さらに、プロジェクト内でコードを混在させるという離れ業も可能になっていて、Javaで記述された既存プロジェクト内で、新たなクラスをKotlinで記述するということも可能です。
Kotlinの需要
このところ、KotlinといえばAndroidアプリケーション開発です。Kotolinエンジニアの需要は高く、この分野の求人がたくさんあります。Yahooが自社のAndroidアプリケーション開発にKotlinを採用したことも大きな影響を与えました。
開発の現場では、Kotlinを用いることによってコードが大幅に減った、開発期間が短縮されたなどの声が聞かれます。いったんKotlinを使うと、もうJavaには戻れないともいわれているのです。
KotlinはJavaVM上で動作するので、Javaが使われている分野ではKotlinで代替することが可能です。
ご存知のようにJavaはWEBアプリケーション分野で盛んに使われています。WEBアプリケーション開発によく用いられる言語には、開発を効率良く進めるための優れたフレームワークがある、というのが一般的です。JavaのStruts、RubyのRuby on Railsなどが代表的といえるでしょう。
KotlinにもKtorというよくできたフレームワークがあります。Kotlinを開発したジェットブレインズ社製です。生みの親だけあって、KtorにはKotlinの特長を生かした仕組みがいろいろと備わっており、WEBアプリケーションを効率良く開発できるようになっています。
KotlinはWEBアプリケーション開発だけでなく、サーバーサイドの開発にも用いられています。国内だけでも、サイバーエージェント、アメーバピグ、LINE、Retty、クオカードなど名だたる企業のサーバーサイドで採用されています。
サーバーサイド側での採用理由も先に述べた特長、すなわち、新しくシンプル、安全、Javaとの共存にあるようです。
Kotlinの年収
Kotlinを操れるようになるとどのくらいの収入が見込めるでしょうか。あるエンジニア紹介サイトによれば、月額60万円から80万円が相場で、上限が85万円くらいだそうです。年収にして約700万円から1,000万円といったところでしょう。
Kotlinでプログラムが書ける、というだけでは高額の報酬は望めません。作成するアプリケーションが使われる業務の知識や経験が不可欠です。業務知識や経験が豊富であれば、一般的に報酬も上がります。
業務知識や経験がまだ不十分な若いエンジニアは資格を取得することで就職や転職のためのスキルを担保するという手もあるのですが、新しい言語であるためか、残念ながらKotlinの資格というのは見当たらないようです。
Kotlinの将来性
Kotlinの将来性に大きな影響を与えたのが、GoogleがAndroidの公式開発環境にKotlinを加えたことです。Androidアプリケーション開発分野ではKotlinの将来性は有望であるといえます。
さらに、新しくシンプル、安全、Javaとの共存という特長を備えたKotlinは企業での採用も増えており、前述のように、WEBアプリケーションやサーバーサイド開発で用いられるようになっています。
Kotlinは、言語としての歴史がまだ浅く、Androidの公式開発環境に認定されたこともあって、今のところ良いところだけが注目され、将来を危惧する話題は見られないようです。
KotkinはJavaVMで動く、と書きましたが、逆の見方をするとJavaVMがないと動かないということです。JavaVM以外の環境での利用も進められているようですが、まだ一般的になったとはいえない状況です。
Javaの今後がどうなるかによってKotlinの存在価値が左右されるという状況が将来の懸念といえるかもしれません。
まとめ
現在最もよく使われている言語のひとつであるJavaとの比較において、Javaの欠点を克服し、さらにJavaよりシンプルにコードが書けるということもあってKotlinは信奉者を増やしている言語だといえます。
Javaとの関係が深いがゆえに、Kotlinを使いこなすにはJavaの知識も必要だともいわれていますが、新しいプログラミング言語を学びたい、というニーズに対してはKotlinは筆頭候補のひとつといって良いでしょう。
特に、ふだんの仕事でJavaを用いているエンジニアなら、Kotlinはスキルの幅を広げるのにもってこいの言語といえるでしょう。