Kotlinについて徹底解説

Androidアプリの開発における公式言語「Kotlin」とは?

ENGINEER.CLUB編集部

Androidアプリの開発における公式言語に追加されたKotlinに興味はありませんか?Kotlinは知っているけど、Javaから変えるのは面倒と感じている方もいらっしゃるでしょう。今回は、Googleが公式言語として認めたKotlinについて紹介していきます。この記事を読めば、Kotlinの特徴や使うメリットについて理解することができます。


1.初めてのKotlin

本章ではKotlinの概要について解説します。

1-1.Kotlinとは?

Kotlinは20117月に登場した新しいプログラム言語です。開発したのはJetBrains社で、メジャーリリースバージョンの「Kotlin1.0」が2016215日(米国時間)に発表されました。さらにKotlinは、Androudアプリの開発言語として、2017年にGoogleが正式に採用しました。

1-2.Kotlinはどこで使われているのか?

Kotlinの公式サイト(https://kotlinlang.org/)で実際にKotlinを採用している企業が紹介されています。国内でもKotlinの導入実績があります。サイバーエージェント社の映像視聴アプリ「FRESH! by AbemaTV」やSansan社の名刺アプリ「Eight」などがKotlinで開発されています。このようにKotlinを採用する企業がこれからどんどん増えていくことが予想されます。


2.Kotlinの特徴

本章ではKotlinの特徴について解説します。

2-1.簡潔

Kotlinには、セミコロンや型の指定を省略できたり、if-elseが式であったり、データクラスや拡張関数のような機能を提供したり、プログラムをシンプルに保つための工夫が盛り込まれています。さらに、簡潔であることで学習コストを小さく抑えることができます。

2-2.安全

KotlinはJavaよりも安全に設計されています。Kotlinにはよくあるプログラミングミスを未然に防ぐ仕組みが備わっています。型やnullの扱いが厳格で、キャストやnullのデリファレンスによる実行時例外が殆ど発生しません。特にnullに関する安全性確保の仕組みを「NULL安全」と言います。

2-3.JVM言語

KotlinはJVM言語です。KotlinのプログラムはJVMJava用のライブラリやフレームワークの資産をそのまま使用することができます。さらに、JetBrains社は「KotlinJavaの相互運用性は100%である」と謳っています。これは、Javaで記述されたプログラムをKotlinで記述したプログラムから使用することと、その逆が可能ということになります。

2-4.静的型付け

KotlinのソースコードはJavaバイトコードに変換(コンパイル)されます。コンパイラはコンパイル時にソースコードの誤りを発見するとJavaバイトコードを生成しません。そのため、プログラマは早い段階でバグを発見することができます。

2-5.オブジェクト指向

Kotlinはオブジェクト指向言語です。Javaのようにクラスからインスタンスを生成することができます。しかし、Javaと異なり、Kotlinにはプリミティブ型はなく、すべてがオブジェクトであり、一貫した扱いが可能です。また、Kotlinには、プロパティや拡張関数などJavaにはない便利な機能が多数提供されています。

2-6.関数型プログラミング

Kotlinには第一級オブジェクトとしての関数があります。関数を数値や文字列など他の値のように関数の引数として渡したり、戻り値として受け取ったりすることが可能です。しかし、これはKotlinの簡潔さを実現している仕組みの一つであり、Kotlinは関数型言語ではありません。


3.Kotlinの最初のプログラム

ここまでKotlinについて文章で解説してきましたが、最初のKotlinコードを紹介します。下記のコードは、「Hello, World!!」という文字列を標準出力に表示するプログラムです。この簡単なコードからもKotlinの文法を知ることができます。

3-1.関数はクラスに所属する必要なし

4行目でいきなりmainという名前の関数の定義が始まっています。Kotlinでは、どのクラスにも属さない関数や変数の定義が許されています。

3-2.関数の定義はfun

関数を定義するために用意されているキーワードは「fun」です。

3-3.型は変数名の後に

argsは変数(variable)です。Argsの後にコロン(:)を挟んでArray<String>と記述されていますが、これがargsの型です。Javaと異なりKotlinでは、変数の型は名前の後に記述します。

3-4.文末のセミコロンは不要

Javaでは文末にセミコロン(;)を打っていましたが、Kotlinでは不要です。(セミコロンがあっても問題ありません。)

3-5.コメントのスタイルはJavaと同じ

1行目に「/*」と「*/」で囲った文字列があります。この範囲はコメントであり、プログラムコードの解釈や実行には影響しません。「//」は、この登場から行末までをコメントします。


4.まとめ

以上、Kotlin入門についてまとめました。Kotlinは続々と大手企業のアプリで採用が進んでいます。Kotlinは今後、iOSでいうSwiftのような存在になっていくのか注目です。

私たちは、全てのエンジニアに市場価値を高め自身の望む理想のキャリアを歩んでいただきたいと考えています。もし、今あなたが転職を検討しているのであればこちらの記事をご一読ください。理想のキャリアを実現するためのヒントが見つかるはずです。

『技術力』と『人間力』を高め市場価値の高いエンジニアを目指しませんか?

私たちは「技術力」だけでなく「人間力」の向上をもって遙かに高い水準の成果を出し、関わる全ての人々に感動を与え続ける集団でありたいと考えています。

高い水準で仕事を進めていただくためにも、弊社では次のような環境を用意しています。

  • 定年までIT業界で働くためのスキル(技術力、人間力)が身につく支援
  • 「給与が上がらない」を解消する6ヶ月に1度の明確な人事評価制度
  • 平均残業時間17時間!毎週の稼動確認を徹底しているから実現できる働きやすい環境

現在、株式会社ボールドでは「キャリア採用」のエントリーを受付中です。

まずは以下のボタンより弊社の紹介をご覧いただき、あなたの望むキャリアビジョンをエントリーフォームより詳しくお聞かせください。