リツアンSTCに所属するITエンジニアのルメです。
私はこれまで…というか今も仕事でサーバーサイドのJavaを使ってプログラミングしています。
Javaができればとりあえず今後しばらくは仕事に困ることはなさそうなんですが自分でスマホのアプリを作りたくて最近はプログラミング言語の一つKotlinの勉強をしてます。
このKotlin、今すごく波が来ていて話題になってるので私と同じくやってみよう!という方が多いと思います。
でも勉強法がいまいち分かりにくい(私がそうでした)のかなとも思うので今回はお金をなるべくかけずにできるKotlinの勉強方法をまとめてみました。
Kotlinとは?
まずKotlinとはどんな言語でしょうか。
Google I/O 2017のキーノートでは、AndroidチームがKotlinを公式にサポートするという発表がありました。また、最近リリースされたAndroid Studio 3.0では、Kotlin開発用のプラグインが最初から組み込まれているなど、注目を集めています。
上の記事を要約すると、KotlinとはGoogleが公式にサポートすると発表した言語で今後Javaに代わってAndroid開発の標準言語になると期待されている言語です。
Kotlinは、Javaの統合開発環境であるIntelliJ IDEAで有名なJetBrainsが開発したオブジェクト指向プログラミング言語です。言語構文自体はJavaとは互換性がない独自方式ですが、コンパイルされたコードはJava VM(仮想マシン)上で動作するため、これまでのJava資産の多くを流用できるという特徴を持っています。
KotlinはJava VM(仮想マシン)上で動作する静的型付けのオブジェクト指向言語で、Javaと相性がよくJavaのソースからKotlinのソースを流用でき当然逆にKotlinのソースからJavaのソースを呼び出して使用するということができます。
ここではKotlinの紹介自体は簡潔にしたいので詳しくは上記の記事や下の記事などを読んでみてください。
Kotlinを使える人の単価は?案件はあるのか
今後のAndroid開発はKotlinが主流になっていくと思われますが、まだまだKotlinを使える人は現状少ないのが事実(なんせ歴史がまだ浅いですからね)。
その分、Kotlinを書ける人の単価は高いようで試しにレバテックフリーランス でコトリンの案件を探してみたところどれも高額な単価の案件ばかりでした。
一つめの案件なんかは経験たったの一年以上からですから参画の壁はかなり低い印象。
経験が浅くてもチャンスがありますね。
お金をかけずにしっかりと…Kotlinの勉強方法7選
さてここから実際にKotlinを勉強する方法の紹介です。
しっかり学びたいなら本で学ぶのが一番
新しいプログラミング言語を学ぶときってだいたいのエンジニアが本を手に取ると思うのですがKotlinを学ぶのもちゃんとやるのであればやはり本で言語の特徴をしっかり勉強するのが一番です。
Kotlinは言語自体が注目されているので最近では本屋に行っても何冊かKotlin関連の書籍を普通に見るようになってきましたね。
その中でも私のおすすめを紹介します。
Kotlinスタートブック -新しいAndroidプログラミング
オススメ度:★★★★★
料金:3780円(電子書籍版はkindleで3500円、koboが3672円)
日本でのKotlinの第一人者、というかKotlinといえばこの人という長澤太郎さんが書いた本です。
たくさんあるKotlinの参考書の中でも一番売れているのがこの本です。
初めにざっくりKotlinという言語の特徴をポイントを押さえて書いてあるのでまずだいたいこういう書き方をするんだな、ということが頭に入ってきやすいです。そしてもちろん文法的なことや言語の深い部分もしっかり書いてあるので、入門者でも分かりやすく私はKotlinを学ぶなら本はこの一冊でも十分かなと思います。
本の難易度的にはJavaや関数型言語の経験のある人なら普通にわかると思いますがプログラミング未経験だと厳しいですね。
要点を押さえていてボリュームが薄いわけではないですが私は土日にちょこちょこ読んでたら二日で読み終わるぐらいの内容量でした。
あまり長くても読む気がしないし分かりやすくてすぐに読み終えられるこの本は良かったです。
ちなみに表紙の若干シュールな赤べこは目立たせるためのものでそれ以上の意味はないらしいですw
■楽天
![]() Kotlinスタートブック 新しいAndroidプログラミング [ 長澤太郎 ]
|
■アマゾン
ネット上の無料ドキュメントで
Kotlin入門までの助走読本
kotlin-prior-learning-book.pdf - Google ドライブ
オススメ度:★★★★★
料金:無料
日本Kotlinユーザグループ(先述の長澤太郎さん含む)によって作成されたドキュメント資料です。
Kotlinについて概要を大まかに、ただ特徴はしっかりとまとめてくださっています。
無料の資料ですがけっこう内容量が多いのでこれを読めばKotlinについて大まかなことは分かります。
公式リファレンス(翻訳版)
リファレンス - Kotlin Programming Language
オススメ度:★★★★★
料金:無料
こちらは公式リファレンスを翻訳したサイト。
公式からの情報なので情報量が多いですし具体的なコードによる言語の文法例も紹介されています。
ただ翻訳版はまだ404のページがあったり翻訳が追い付いていない部分もありますが、そこは英語版の公式を読むしかないですね。
ネットのオンラインスクールで
schoo
オススメ度:★★★★☆
料金:月額980円
オンライン学習サービスのschooにもKotlinの授業があります。
この授業は全5回の授業(1回の講義は45分)で今までAndoroidをやったことがない人でもKotlinを使ってスマホアプリを開発してみよう!という授業です。
フロントの画面の作成からDBアクセスまで動画を見ながらやれば開発できるような構成になっています。
青木先生の講義は非常にわかりやすく、講義で使用するコードのサンプルファイルもあるので詰まることがなくて(自分で書いたのがもし動かなくても最悪コピペすればいいですからね)自分でいろいろ作って試す際に非常に参考になりました。
この講義で紹介するAnkoライブラリに関してはコードが簡潔に書けて使いやすいですが、こういう時どうするんだろう?とプラスアルファのことを学ぶ際にはまだ日本語の情報が少なく自分で英語のサイトを読んで理解する必要があるので独学で学ぶ際にちょっと努力が要りますw
schooの講義は月980円で受け放題なのでコスパがすごくいいです。
Kotlin以外でもJava8の講義なんかは分かりやすくて良かったしITエンジニア向けの講義が多いので試しにschooのスマホアプリをインストールして使ってみるのはお勧めですよ。
ちなみに本を紹介した長澤太郎さんの講義もありますがこちらはKotlinの概要を紹介する動画です。
Udemy
オススメ度:★★★☆☆
料金:1200円~
世界最大のオンラインスクールのUdemy にもkotlinのプログラムがあるようです(ごめんなさい。紹介しといて実際に自分自身このサービスをまだ使ったことがないです)。
こちらの講義なんかはすでに850人以上が受講されているようで評価も非常に高いですね。
約20時間の講義でDBアクセスまで解説しているようです。
料金は24,000円と安くはないですがそれでも実際にプログラミングスクールに通うと何十万としますし、それなら返金保証もあるudemyのオンラインスクールのほうがだいぶ安く済みますし自宅で受講できるので手軽に始められる分メリットが大きいです。
ドットインストール
オススメ度:★★☆☆☆
料金:月額980円
ITエンジニア御用達、プログラミング学習動画の元祖「ドットインストール」にもKotlinの講義が加わっています。
https://dotinstall.com/lessons/basic_kotlin
内容的には実際にアプリを作るというよりもKotlinという言語の文法的な学習です。
こちらは全29回の動画の内5回までは無料でそれ以降は月980円の有料会員に登録すれば視聴できます。
ただ全29回の動画をみても1時間半前後のため有料会員に登録するなら本を買うか同じ値段でより実践的なschooの講義を受けたほうがコスパが良いと私は思いました。
Youtube
オススメ度:★★☆☆☆
料金:無料
実はYoutubeにもKotlinを学習できる動画があったりします。
上の動画はAndroidプログラミングを数多く上げてくださっているハコニワデザインさんがアップロードしたKotlinでアプリを開発してみる動画です。
こちらの動画はある程度Android開発の経験または知識がある方向けですがKotlinを使用したアプリ開発の概要がこの動画を見るだけでもなんとなくつかめます。
YouTubeには他にもKotlin関連の動画はあるんですが外国の動画が多く、あくまでKotlinがどんなものか、という概要を知る程度にしか今のところは使えない気がします。
ただ無料なので初めはちょっとした空き時間にYoutubeで見てみるのもいいと思います。
まとめ
以上、Android開発の標準言語Kotlinの勉強方法について紹介しました。
Kotlinは非常に将来性の高い言語なので使えるようになればエンジニアとして選択肢が広がります。
勉強のやる気がちょっとでも出た時にスモールスタートで始めてみるのがいい気がします。
ちなみに私は今年Kotlinでアプリを完成まで持っていく!という予定を立ててますが進捗は20%ぐらいです…