Kotlin入門
Kotlinとは、ジェットブレインズのアンドリー・ブレスラフ氏とドミトリー・ジェメロフ氏によって開発された、静的型付けのオブジェクト指向プログラミング言語を指します。Kotlinは、Javaのプログラミング言語よりも安全に記述できることを目的として開発されたプログラミング言語です。そのため、汎用性が高いプログラミング言語と言えるでしょう。ここでは、入門としてKotlinの概要やメリットについて詳しく紹介します。
Kotlinとは
Kotlinとは、2011年にJetBrains社が開発した、Java仮想マシンと呼ばれるJVM上で動作するオブジェクト指向型のプログラミング言語のことです。Javaのプログラミング言語を簡潔にしながらも、Javaとの互換性を維持していることが特徴です。そのため他のJVM言語とは異なり、JavaとKotlinが混在したプログラムを作成することもできます。
Kotlinという名前の由来は、言語が生まれたサンクトペテルブルク近くに存在するバルト海フィンランド湾にあるコトリン島です。コトリンとは、フィンランド語では「やかん」を意味し、言語のロゴマークにもやかんが使用されています。Javaとの互換性があるKotlinは、Androidアプリ開発を行う際によく使用されています。KotlinはJavaの特徴を活かしながら、より有用な機能をもっているのが特徴です。
Kotlinのメリット
Kotlinは、ソースコードのシンプル化と安全性の向上を目的として開発されたため、Javaと比較してもソースコードが記述しやすく、業務負担の軽減にもつながっています。また、同じプログラムをJavaよりもシンプルなソースコードで実行できるため、開発効率の向上も期待できます。さらに、Kotlinの文法や仕様もシンプルであるため、習得する難易度が高いJavaと比較すると、Kotlinの方がスキルを身に付けやすいと言えるでしょう。
Kotlinは産業利用向けの言語として開発されているため、不具合やトラブルが生じるようなソースコードが記述しづらい文法です。そのため想定しなかったエラーやバグが発生しても、システムがダウンするような問題に発展しにくいという安全性の高さも特徴です。また、KotlinからJavaの関数などを呼び出して使用することができるため、Javaのソースコードを使用しながら新しく開発する機能をKotlinで記述することで、開発効率の向上が期待できます。
Kotlinの基本文法
KotlinはJavaから発展したプログラミング言語であることは理解できたでしょうか。ここでは、Kotlinの基本文法について詳しく紹介します。
コメントの記述方法
ソースコードを記述する際にはコメントを残して、他の人がプログラムを確認したときに理解しやすいようにしておくのが一般的です。Kotlinでもコメントを記述することが可能です。コメントの記述方法は主に「単一行コメント」「複数行コメント」「KDocを使用する」の3種類があります。
コメントの記述方法はプログラミング言語によって多少の違いはありますが、大幅に異なることはほとんどありません。Kotlinのコメントの記述方法はJavaやPHPと同様であるため、これらの言語の学習経験がある方であれば、簡単に使用することができます。ここからはKotlinのコメントの記述方法についてそれぞれ紹介します。
1.単一行コメント Kotlinでは「//」を使用することで、単一行をコメントアウトさせることができます。「//」から行末までがコメントとして扱われます。ここからは具体例を見ていきましょう。
// コメントになります
println(“Helloworld!”) // コメントになります
上記のプログラムでは、「コメントになります」の単一行がコメントアウトされ、プログラムの処理に影響を与えません。よって処理結果として「Helloworld!」が出力されます。
2.複数行コメント Kotlinでは
「/`*`」と「`*`/」
を使用すれば、複数行をコメントアウトさせることができます。
「/`*`」と「`*`/」
の間に記述されたソースコードがコメントとして扱われます。ここからは具体例を見ていきましょう。
/`*` これは
複数行のコメントの
一例です `*`/
println("Helloworld!")
上記のプログラムでは、「これは複数行のコメントの一例です」の複数行がコメントアウトされ、プログラムの処理に影響を与えません。よって処理結果として「Helloworld!」が出力されます。
3.KDocを使用する Kotlinではクラスやメソッドなどに対して
「/`**`」
から始まるコメントを付ければ、プログラムに記述したコメントからドキュメント「KDoc」を自動でを出力させることが可能です。
ここからは具体例を見ていきましょう。
/`**`
コメントになります
コメントになります
コメントになります
`*`/
上記のように、クラスやメソッドなどを定義する前にこの形式でコメントを記述すれば、 自動でドキュメントを生成することができます。
変数の定義
Kotlinで変数の定義を行う場合は「val」もしくは「var」を使用するのが一般的です。valは「value」の略称で、Javaでは「final」に相当し、再代入できないデータを保持するための変数を定義したいときに使用します。一方varは「variable」の略称で、再代入可能な変数を定義したいときに使用します。変数を定義する際には「var 変数名: データ型 = リテラル」の形式が一般的です。
ここからは具体例を見ていきましょう。
// 一般的な変数の定義方法。(データ型は「Int」)
var x: Int = 1
// 「var」の場合は再代入可能。
x = 5
// 「val」でも同様の形式で定義可能。
val y: Int = 2 // yは「val」で定義しているため再代入不可。
y = 6 // このソースコードはコンパイルエラーとなります。
// Kotlinには型推論があるため下記のように記述することも可能(データ型の省略ができる)
var z = 3
// Kotlinではデフォルトの場合では「null」を許容していません。(null安全)
var a: String = null // このソースコードはコンパイルエラーとなります。
// 「null」をで初期値として入力したい場合には、データ型の後に「?」を付けなければならない。
var b: String? = null
以上のように、変数の定義は1度理解してしまえば難しくはありません。「var」と「val」を適切に使い分けることが重要です。
配列の定義
ソースコードを記述する場合、配列を使用することは少なくありません。ここでは、配列を定義する方法を紹介します。Kotlinで配列を定義する場合、関数「arrayOf()」を使用します。配列を定義する際には「var 変数名: データ型 = (値1, 値2, 値3, ……)」の形式が一般的です。なお「var」は「val」に置き換えることも可能で、型推論からデータ型を省略することも可能です。
ここからは具体例を見ていきましょう。
// 型推論よりデータ型を省略。
var names = arrayOf("田中", "鈴木", "吉田",”高橋”,”木下”)
var ages = arrayOf(90, 85, 65, 55, 80)
println(names[0])
println(ages[2])
上記のプログラムでは、処理結果として「田中」と「65」が出力されます。Kotlinの配列の要素は「0」から始まるため、注意が必要です。また要素にアクセスするには、配列[index]と記述します。
Kotlinの勉強方法
ここでは、プログラミング初心者でもKotlinの基礎を身に付けることができる勉強方法について詳しく紹介します。
学習サイト
近年では無償でも利用できる学習サイトが増えています。しかし、Kotlinを学ぶ場合は有償になることが多いでしょう。それでも安価で手を動かしながら勉強することができるため、おすすめの勉強方法と言えます。例えば「ドットインストール」「Paiza.IO」などの学習サイトでKotlinを勉強することが可能です。
書籍
独学で基礎を固めたいという方は、書籍でKotlinを学ぶこともおすすめです。しかし、プログラミング言語は手を動かしながら学習しないと身に付きづらいため、注意が必要です。AmazonなどのECサイトに基礎から応用までさまざまな書籍が販売されているため、自分のレベルに合わせて購入しましょう。書籍と学習サイトの両方を利用して勉強するのもおすすめです。
公式サイト
Kotlinに関するリファレンスを読んでみたり、チュートリアルを試してみたりしたいと考えている方は公式サイトから確認することができます。インターネット上では、情報を日本語に翻訳してくれている方もいるため、英語が苦手な方でも利用可能です。 ( 参考:https://dogwood008.github.io/kotlin-web-site-ja/ )
Kotlinを学習してAndroid開発ができるようになろう!
これまでに、Kotlinの概要・メリット・基本文法・学習方法について解説しました。Kotlinとは、2011年にJetBrains社が開発したオブジェクト指向型のプログラミング言語を指します。またKotlinは、Javaよりもソースコードのシンプル化と安全性の向上を目的として開発された言語です。そのため、変数・配列の定義などJavaよりもシンプルに記述することができます。また、エラーやバグが発生しないような記述の仕方が採用されているのも特徴です。
Kotlinは他のプログラミング言語と比較すると馴染みがない言語でしょう。勉強方法に困る方も少なくありません。独学で学習する場合には「学習サイト」「書籍」「公式サイト」で基礎を固めるのがおすすめです。KotlinはAndroid開発に強みをもっている言語であるため、ぜひアプリ開発ができるレベルを目指しましょう。
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから