あなたは、Androidアプリの開発における公式言語に追加されたKotlinに興味はありませんか?Kotlinは知っているけれど、Javaから変えるのは面倒だと感じている方もいらっしゃるでしょう。そこで今回は、Googleが認めたKotlinについて詳しく紹介します。この記事を読めば、Kotlinの特徴やAndroid開発に使うメリットが深く理解できます。
この記事は現役エンジニアによって監修済みです。
Kotlinとは
GoogleがAndroidアプリ開発の公式言語への加えられることが発表されたKotlin。まずは、Kotlinの概要についてご説明します。
ターゲットはAndroid開発
KotlinはJetBrainsが2011年に発表したプログラミング言語です。さまざまな言語に対応したIDE(統合開発環境)を提供する「IntelliJ IDEA」によって、JetBrainsは開発者から大きな注目を集めています。
そんなJetBrainsが開発したKotlinは「100% interoperable with Java™ and Android™」がテーマ。日本語に訳すと「JavaとAndroidと100%相互運用可能」という意味になります。
そのテーマ通り、Android開発で主流となっているJavaとの連携がスムーズであることが魅力です。
KotlinはJava VM上でも動作したり、Javaのコードを簡単にKotlinのコードに置き換えることができるなどJavaを使ってきた環境への配慮がされています。
Kotlinを導入したとしても、Javaで構築してきた資産がムダになりません。このように現状の資産をムダにせず、より開発の効率を上げられるKotlinは世界中で導入が進んでいます。
Googleが公式採用したプログラミング言語
開発者向けのカンファレンスであるGoogle I/O 2017において、KotlinをAndroidアプリ開発のプログラミング言語として追加することをGoogleは発表しました。
それにより、今までAndoroidの開発環境で主流だったJavaとの連携がスムーズなKotlinは、急速にシェアを伸ばしています。
以前からAndroidアプリの開発はサポートしていましたが、Googleが開発した言語ではなかったため「知る人ぞ知る言語」というような位置づけの存在でした。
それが今回のGoogleの発表によって、一気に人気に火が付いたような状況です。
Kotlinは、これからのAndroidデベロッパー必須のスキルになるだろうと言われている要注目のプログラミング言語です。
ちなみに、Kotlinの読み方は「コトリン」です。まるで「小鳥」のようなので、日本人は親しみがわきやすい名前ではないでしょうか。
Kotlinの特徴
なぜ、Kotlinが開発者から支持されているのか?その理由が気になるという方もいらっしゃるでしょう。気になるKotlinの特徴についてご説明します。
Javaとの互換が100%
Kotlinはそのテーマからもわかりますが、Javaとの互換が100%です。そのため、Javaのライブラリやフレームワークも利用できます。
既存のシステムで使われている言語と同時に使えない場合は、新しいプログラミング言語の導入が難しい場合があるでしょう。なぜなら、それまで記述してきたコードがムダになってしまうからです。
しかし、KotlinはJavaとの連携がしっかり考えられているので、Javaを使っていた既存のプロジェクトにおいてもシームレスに利用できるのでとても便利です。
シンプルでわかりやすい
KotlinはJavaと比較すると、とてもシンプルでわかりやすいコードが書けます。Javaだと長くなってしまうコードがKotlinであれば1行で表記できる場合もあります。
長くなればそれだけ見づらくなり、書くのもその分時間がかかるでしょう。
一方Go,Elixir,Kotlinなど現代的な言語は、単一パラダイムでシンプルな文法を使うので、開発者が言語自身を深く意識せず設計にフォカスできるし、コミュニティも活発している。
— ショショの奇妙な冒険 (@xoyo24_ja) January 25, 2018
プログラマー経験者にもオススメ
Kotlinは他のプログラミング言語の良い所をピックアップして開発されました。そのため、初心者よりもプログラミング経験者の方が、Kotlinの良さがよりわかるはずです。
Javaの経験がある方には特にオススメ。また、Kotlinにはプログラミングの玄人にこそ興味深いと感じてもらえる「Null安全」という面白い概念が導入されています。
たとえば、先ほどJavaと比べて「シンプルに書ける」という特徴を挙げましたが、もう一つ「Null(ヌル)」という概念の扱いがユニークなんです。Null*の扱いを慎重にすることで、バグを未然に防ぐ「Null安全」という機能がKotlinにはあります。
引用元:http://careerhack.en-japan.com/report/detail/870
導入がスムーズ
Android StudioやIntelliJにJetBrainsから提供されているプラグインをインストールするだけでスムーズに導入ができます。Javaのコードとの同時使用ができるだけでなく、そのコードをKotlinのコードに変換も可能です。
IntelliJ IDEA・Android Studio・Eclipseとい開発環境をはじめ、ブラウザやスタンドアロンなどさまざまな形で使える点も魅力と言えるでしょう。
Kotlinを使う開発者が増えている
Google I/O 2017での発表やJavaよりも使いやすいといった理由から、Kotlinを使う開発者が増えています。Javaのシェアをこえ、Androidデベロッパーが習得すべきプログラミング言語になるかもしれません。その詳細について、詳しくご説明します。
2018年にJavaのシェアを超える可能性も
Google I/O 2017での公式言語への追加と発表から、Kotlinのシェアが急速に拡大しています。
2019年のTechCrunchの記事によると、Androidデベロッパーの50%がアプリ開発で利用しているようです。
Androidデベロッパーは必須
Googleが公式言語として認めただけあり、実際にKotlinを使ってみると使いやすいと感じる方が多いようです。Javaとの連携がスムーズでKotlinにしかない機能もあることはとても魅力ではないでしょうか。
そのようなKotlinならではの魅力がシェアを拡大している理由と考えられます。これからのAndroidデベロッパーには必須のプログラミング言語と言えるでしょう。Androidの開発に関わる方はすぐに学習をはじめることをオススメします。
Kotlinのスキルを持たないAndroid開発者は恐竜のようになるリスクに直面。モバイルアプリプラットフォームのRealmが予測 - Publickey | https://t.co/aZg2j33cKg
— Web技術系バズネタ! (@techtweet8) April 17, 2018
Androidアプリの開発言語まとめ
Kotlinだけでなく、他にはどのようなプログラミング言語がAndroidアプリ開発に使えるのか気になる方もいらっしゃるでしょう。下記にAndroidアプリ向けの開発言語をまとめましたので、参考にしてみてください。
Androidのネイティブアプリを作る
ネイティブアプリとは、デバイスで動くタイプのアプリです。例えば、スマホにデフォルトでインストールされているカメラや電卓などはこのネイティブアプリにあたります。
まずはこのネイティブアプリを作るのにぴったりなプログラミング言語を紹介します。
Kotlin
今回、紹介しているKotlinはもちろんAndroidのネイティブアプリの開発に適しています。
Googleが公式で提供しているIDEであるAndroid Studioでプラグインとしてご利用いただけます。
また、Android Studio 3.0以降はKotlinがデフォルトサポートされているので、プラグインのインストールは不要です。
Java
Javaは、Androidアプリの開発において高いシェアを誇るプログラミング言語です。
Android StudioやEclipseといった開発環境で使えます。
Kotlinのベースとなるプログラミング言語です。そのため、Javaの学習はKotlinの理解を深めることにも役立つでしょう。
Javaは、1995年にSun Microsystemsにより初めてリリースされたプログラミング言語およびコンピューティング・プラットフォームです。
Javaをインストールしないと機能しないアプリケーションやWebサイトが数多く存在し、さらに毎日作成されています。
引用元:https://www.java.com/ja/download/faq/whatis_java.xml
その他の開発方法
上記の2つだけでなく、他の言語を使った開発方法もありますので紹介します。
Xamarinを使ってC#で開発する
XamarinとはiOSとAndroidのアプリをC#を使って作れる開発環境です。
通常であれば異なるプログラミング言語を使って、コードを書く必要があります。
しかし、Xamarinを導入すればC#のみでそれが実現できるのでとても便利です。
Xamarinは細かく言うと1つの開発環境ではなく、iOSとAndroid用のそれぞれの開発環境があります。PCLによって組み合わせることで少ないコードの記述で2つのOS向けのアプリの開発を可能にしているのです。
Xamarin.iOSとXamarin.Androidは別々の開発環境ではありますが、.NET Frameworkの持つポータブル(移植可能)な機能であるポータブルクラスライブラリ(PCL)により、これらを組み合わせてiOS固有部分/Android固有部分/両方に共通な部分と切り分けた上でクロスプラットフォーム開発を行うことが可能です。
引用元:https://codezine.jp/article/detail/9619
HTML・JavaScriptなどを使ってハイブリッドアプリを開発する
HTML・JavaScriptなどの知識がある方もAndoidアプリの制作が可能です。
Cordovaなどの開発ツール・フレームワークを利用すれば、ブラウザの機能を生かすWebアプリとネイティブアプリの良いところを掛け合わせたハイブリッドアプリが作れます。
このように、JavaやKotlinのスキルがない方でもAndroidアプリの制作はできるのです。
モバイルアプリのクロスプラットフォーム開発には
1. ハイブリッドHTML(CORDOVA)
2. ネイティブクロスプラットフォーム(Xamarin)
の2種類がある!メモ
ーhttps://t.co/44llDqFqd5
ー pic.twitter.com/krcpiAsmyx— ちょまど🎀ITエンジニア兼漫画家 (@chomado) March 1, 2016
Kotlinを学習するには
Kotlinを実際に学んでみたいと思った方もいらっしゃるでしょう。次に、オススメのKotlinの学習方法について紹介します。
Webサイトで学習する
Kotlinの公式サイト
Kotlinを学ぶのであれば、公式サイトは必ず見ましょう。チュートリアルやオススメの書籍も紹介されています。追加された新しい機能について、しっかりと理解することができるのも魅力です。
プログラマに優しい現実指向JVM言語 Kotlin入門
IT関係の技術書を多く出版している技術評論社によるKotlinの解説が行われている連載が「プログラマに優しい現実指向JVM言語 Kotlin入門」です。
Kotlinの概要から、開発環境の構築まで詳しく知ることができます。解説者は、下記で紹介する『Kotlinスタートブック -新しいAndroidプログラミング』の作者である長澤太郎氏です。
学習サービス・スクールを利用する
Udemy
スキル・知識を持った講師と学びたい人を結びつけるオンライン学習プラットフォーム「Udemy」では、Kotlinの学習コースが提供されています。
プログラミングやKotrlinの基本情報からスタートして、GooglePlayストアでのアプリのリリースまで学べます。
ドットインストール
動画で学べるプログラミング学習サイトであるドットインストールでは、「Kotlin入門」コースが提供されています。
全29回で第5回まで無料で学習が可能です。Kotlinに興味はあるけれどよくわからないという方は、まずはドットインストールの動画でさくっと基礎を理解してみてはいかがでしょうか。
本で学ぶ
Kotlinスタートブック
『Kotlinスタートブック』はKotlinユーザグループの代表であり「Kotlinのエバンジュリスト」を自称する長澤太郎によって執筆されました。
日本ではじめてのKotlinの完全ガイドですので、体系立ててしっかりと学びたい方は必須の書籍となっています。
まとめ
今回は注目を集めるプログラミング言語「Kotlin」について紹介しました。GoogleのGoogle I/O 2017での公式言語となることが発表され、着実にシェアを拡大しているKotlinは今後さらに注目を集めることが予想されます。
Androidアプリの開発に携わっている方や、興味がある方は上記の学習方法を参考にして、勉強をはじめてはいかがでしょうか?
はじめての転職、何から始めればいいか分からないなら
「そろそろ転職したいけれど、失敗はしたくない……」そんな方へ、テックキャンプでは読むだけでIT転職が有利になる限定資料を無料プレゼント中!
例えばこのような疑問はありませんか。
・未経験OKの求人へ応募するのは危ない?
・IT業界転職における“35歳限界説”は本当?
・手に職をつけて収入を安定させられる職種は?
資料では、転職でよくある疑問について丁寧に解説します。IT業界だけでなく、転職を考えている全ての方におすすめです。
「自分がIT業界に向いているかどうか」など、IT転職に興味がある方は無料カウンセリングにもお気軽にお申し込みください。