はじめに
これからAndroidアプリの開発を行いたいけど、何をしたら良いのかわからない。
フリーランスや派遣など、新入社員に学習させたいけど、何を最初に教えたら良いか迷っている。
上記のように、ここでは、Kotlinを初めて学ぶ際に、最初にどの様なことを教えれば良いのか または学ぶべきなのか。学ぶための教材やサイトはどこが良いのかなどを紹介します。
Kotlinを学ぶまえに、知っておくべきこと
まずは、どのプログラミング言語もそうですが、この言語では何ができるのかをリサーチすることが大事です。
もし学ぼうと思っている言語が、本来自分がやっていくうちに、やりたいことにマッチしていない言語であると気づいた時、モチベーションはかなり下がってしまいますし、また別の言語をやろうと思っても、時間がかかってしまいます。
また、教育者側は、請負やフリーランスなどの案件でよく流れてくる言語などを教えようとする方も多いかと思いますが、まずは、何をやりたいかなどをヒアリングし、そこに近い言語からさせると良いかと思います。
「やりたいこと」・「できること」・「やるべきこと」これらのバランスを取りながら、言語を学習する準備を整えることを推奨します。
Kotlinとは
では、早速Kotlinの言語についてのお話です。
2020年でかなり案件などで目にすることが多くなってきた「Kotlin」言語ですが、この言語は、Javaの統合開発環境であるIntelliJ IDEAで有名な「JetBrains」が開発したオブジェクト指向プログラミング言語です。
このKotlinですが、Javaに比べてコードの記述量が少なく済むといわれています。
2017年にAndroidの公式開発言語として追加されました。
このKotlinですが、とても便利なのが、Javaのコードを呼び出すことができ、逆にKotlinでで書いたコードをJava側で呼び出すことできるという相互利用可能な言語なのです。
また、基本的にNULLチェックなどを行いますが、Kotlinでは、NullPointerExceptionを防いでくれる仕組みが存在するという優れもの。
これから学習する言語としては比較的容易な言語と言えるでしょう。
※ オブジェクト指向などの用語がよくわかっていない場合は、下記を参考にしても良いです。(結構詳しく、丁寧に書かれています。お勧めです!)
Kotlinでできること
Kotlinは「Androidアプリ」を開発する言語です。
このKotlinですが、実は大手大手企業で使用されています。
たとえば、よく聞くアプリとして「Netfrix」や「Yahooニュースアプリ」などもKotlinを利用して作られているんです。
このKotlinのメリットとデメリットですが。
説明 | |
---|---|
メリット | ・Javaと相互利用可能 ・Javaに比べてコードの記述料が少ない ・未経験者でも比較的容易 |
デメリット | 日本語のQ&Aサイトがまだまだ少ない Kotlinに慣れるとNullPointerExceptionにならない仕組みに慣れてしまう。 |
ですかね。
特に、現時点ではあまりデメリットにはなりそうな問題ではないように見えますね。
ただ、このKotlinですが、はじめに述べたとおり、案件がかなり増えてきています(2020年6月時点)。
単価もまだまだ高く設定されており、60万〜100万程度の単価案件で紹介がされているのをよくみます。(スキル見合いです)
需要が高い言語ですので、学んでおいて損しない言語と言えるでしょう。
また需要がなくなったとしても、Javaの派生言語ですので、Javaエンジニアとしても切り替えが可能なのがメリットですね!
学習方法とおすすめ入門サイト
さて、長々と書いてきましたが、早速Kotlinの学習方法とお勧め入門サイトをご紹介します。
学習方法は至って2点のみ!!
「学習サイトや本を利用する」
「様々なサイトをみながら、情報を集め、見様見真似でアプリを作ってみる」
ですかね。
未経験者などは1つめの学習サイトや学習本などを利用するのがお勧めです。
ある程度、知識がついてきたら、実際に何か作ってみたり、実際にあるアプリを見様見真似で作ってみたりなどをするのが良いかもしれません。
これから学習サイトを紹介しますので、是非参考にしてみてください。
未経験者/初心者向け schoo(スクー)
schoo(スクー)とは、生放送授業を無料で受講できるサービスです。
授業をしている講師の方に質問できたりするので、先生との対話や学生同士のコミュニケーションが楽しめます!
このスクーには、「【2017年版】Kotlinで始めるAndroidアプリ開発入門」が第5回まで用意されています。
この講義では、実際にAndroidアプリとはなんなのか、アプリを開発する環境をどの様に用意するのかなど、未経験者を想定した講義となっています。
初めてKotlinを学習する方にはお勧めです。
(第1回の講義内容抜粋)
- オープニング
- 【皆さんへの質問】皆さん、どのような言語の経験がありますか?
- Android Studioのインストール
- Android
- iOSとの違い
- Androidのバージョン
- Androidアプリ
- アプリ開発に必要な環境
- 質疑応答
- 次回授業のお知らせ
- エンディング
- Q.include kotlin supportは必要ですか?
- Q.なぜJavaを辞めてしまったのでしょうか?
- Q.Kotlinのおすすめの書籍はありますか?
- Q.プログラミング未経験でアンドロイドのアプリ開発をする場合、Javaを勉強せずにKotlinから始めても大丈夫でしょうか?
- スライド資料
ドットインストール
ドットインストールとは、IT開発技術について、5,000本以上の動画を見ながら学べる、プログラミング学習用のWebサイトです。
このドットインストールにも、Kotlinの学習講座があります。
「Kotlin入門」では、29講座に分かれていて、スクーと同様Kotlinのインストール方法から始まり、Kotlinでの様々なメソッドの書き方などを学習することができます。
@IT Android StudioではじめるKotlin入門
@ITで連載されているKotlin初心者のための入門サイトです。
Kotlinの基本的な構文から、少し突っ込んだ基本内容(オーバーライドや抽象クラスなど)までわかりやすくまとまっている印象です。
すこしプログラミングに慣れてきたら、こちらを参考にしてみてもいいかもしれません。
未経験者には少しハードルが高いかもしれません。
paiza.io
paiza.ioはオンラインですぐにプログラミングが始められる、オンライン実行環境です。
ここは、学習するというより、学習した内容を試してみるサイトですかね。
実行環境がすでに用意されていて、Web画面にコードを記載して実行することでその結果が即時に返ってくるという仕組みです。
様々な言語が用意されていますが、Kotlinも用意されているので、出先やipadなど、確認などを行うには優れたサイトです。
その他役立つサイト一覧
英語サイトやサンプルコード集など、上記意外で学習したい方は下記も参考として載せておきます。
サイト名 | 説明 |
---|---|
Android Developer サンプルコード集 | Androidアプリ開発におけるKotlinの実際のプログラム例を紹介 |
tutorialspoint | 英語サイトですが、Kotlinのチュートリアルを学ぶことができます。 |
Kotlin Tutorial – javatpoint | 入門、アーキテクチャ、クラス、オブジェクト、継承、JavaとKotlinの相互利用、JavaとKotlinなどを使用した初心者から上級者向けのKotlinチュートリアル |
学習本の紹介
学習サイトだけでや物足りない、学習は本派などの方にお勧めの学習本を紹介します。
やさしいKotlin入門
この本は章分けも細かくされており、初心者向けですね。
言語経験者でKotlinの仕様を知りたいだけで購入するかたもいらっしゃいます。
Kotlinプログラミング
開発環境のインストールから詳解 ・サンプルソースコードの変更点がひと目で分かる ・PCだけではなく、Androidアプリまで網羅している一冊です
みんなのKotlin 現場で役立つ最新ノウハウ!
ある程度、理解したあとに読むとよりためになる本です。
実践的なソースコードが記載されているので、参考程度に読むと良いかと思います。
最後に
新しく言語を学ぼうと思っている方は、まず自分が何を作っていきたいか、何をしていきたいか、などを今一度見つめ直した上で言語学習に取り組んでほしいと思います。
新しいことにチャレンジしていくことで、自身の成長に繋がるので、是非本記事を活用してもらえればと思います。