Webデザイナー兼Androidアプリエンジニアの小久保です。みなさん。勉強、してますか? 進化の早いIT業界。Webデザイナーであろうとアプリエンジニアであろうと、常に勉強を続けなければすぐにスキルは化石化してしまいます。僕も仕事柄多数のプロジェクトに関わることが多いので、追いていかれないように必死です。
そこで、どうやって効率的に勉強するかが大事になってきますよね。
前回↑でも紹介しましたが、プログラマーの勉強にはドットインストールが最適です。未経験者はもちろん、既にある程度分かっている人でも知らないことが結構あるので目から鱗です。
今回はAndroidアプリエンジニアを目指すのに、オススメのドットインストールの講座について紹介します。
AndroidはVersionアップが激しく、書き方や仕様がしょっちゅう変わります。そのため、書籍でいきなり勉強しようとすると、本の通りやってるのにうまくいかなーい! という自体に陥ります。
また開発者が多いのでGoogle検索でも無茶苦茶情報が出てくるのですが、情報が古いままだったり、場合によっては間違った情報をつかまされることが多々あります。
初学者はそうした微妙情報に振り回されるため、挫折する可能性がものすごく高いんですね。。。
その点、ドットインストールは動画の手順通りやればほぼほぼ動くので、無駄なエラーに悩まされて作業が止まるということが少ないです。まずは、細かい理論はわかってなくても簡単なアプリを作って動かすこと。それがAndroidアプリエンジニアになるための一歩です。
100人アプリエンジニアを志せば、60人ぐらいが挫折するAndroid(小久保の偏見)。ドットインストールで挫折する確率を減らして頑張りましょう。
それでは行きます。
プログラミング言語を習得する
AndroidアプリはJava、Kotlinなどのプログラミング言語を用いて制作します。なので、まずはJavaもしくはKotlinを使えなければなりません。
Java 8入門 (全43回)
まずはJavaです。環境構築から、言語の背景まで説明があるので初学者でも苦もなく始めることができます。が、講義内でローカル開発環境を使うことになるので、下記講座でローカル開発環境を整えておく必要があります。そこだけめんどくさいかな。
・ローカル開発環境の構築 [macOS編] (全14回)
・ローカル開発環境の構築 [Windows編] (全14回)
で、肝心の講座の中身なのですが、動画なのでそのまま講師の真似して打ち込めば動きます。まずは動画の通り打ち込んでみて、プログラムが動く楽しさを実感してみてください。
講座自体は全部やるとボリュームが大きいので、初学者であれば、
「#01 Javaを使ってみよう」から「#29 インターフェースを作ってみよう」
あたりまでやったあと、
「#34 スレッド処理を実装してみよう」
あたりをやれば十分です。細かいところは、実地で学んでいきましょう。
Kotlin入門 (全29回)
次に、Kotlinにも手を出してみます。Javaさえやれれば、Androidは開発できるのですが、Javaより安全で簡潔なKotlinも学んでおくと、開発が手軽になります。
なんでJavaとKotlin両方学ばなきゃなんないのー? って思う方もいらっしゃると思います。それは、この先の講座でJavaでやる講座とKotlinでやる講座と2種類あって、片っぽだけしかできないとギョッとする場面があるからです。
また、Kotlinは比較的新しい言語なので、まだまだ現場ではJavaを使ってAndroidアプリを作るケースも多いです。
しかし、KotlinがGoogle公式の開発言語になった影響もあり、この先どんどんKotlinにシフトしていくと思われます。両方やれた方が仕事の幅が広がります。
ちなみにJavaよりは圧倒的に簡潔なので、Javaをなんとなく理解できていれば、Kotlinの習得も容易です。
Androidアプリ開発を学ぶ
ここまでやってようやくAndroidアプリです。お疲れ様です。本当はいきなりここからやった方がアプリの画面が出て楽しいんです。が、KotlinやJavaが分からない状態だとやはり挫折するので注意です。
Androidアプリ開発入門 (全11回)
Android Studioと言うアプリの開発環境の使い方がメインです。アプリのビルド方法や、レイアウトを設定したりと、基礎的な内容を学ぶことができます。
作るアプリは、ボタンを押したらタイトルが変わる簡単なアプリケーションです。導入なのでまだまだ余裕。動画通りやれば苦もなくアプリが作れちゃいます。
Androidレイアウト入門 (全10回)
Androidアプリのレイアウト方法について注力した講座です。地味にこれ、絶対にやっておくことをオススメします。
なぜなら、Androidはレイアウト方法が少々特殊で、何も学ばずにレイアウトしようとすると、
こんな感じで、全くうまくレイアウトできません。UIで操作できる感があるのに、お作法が分かってないと全然UI上で操作できないのです。(経験者からするとそらそうよ的なレベル。ヒントはVertical)
この講座を学べば、Androidのレイアウト手法が理解できるので、絶対にやっておきましょう。レイアウトができないとまともにアプリが作れませんからね。。。軽いHTMLみたいなものなので、そんなに難易度は高くないです。
蛇足ですが、レイアウトはできたけど、デザインが野暮ったくって。。。って悩んでる人は下記の記事もご参照ください。単純なテキスト組のアプリであれば、まあまあのデザインができるようになると思います。
Androidでクイズアプリを作ろう (全15回)
クイズを出して、最後に成績を表示すると言う簡単なクイズアプリを作ることができます。ボタンが押された時の動作や、画面の遷移方法、遷移した先に値を渡す方法など、Androidアプリのエッセンスを学べる良講座です。
Androidリストビュー入門 (全12回)
スマホでよく見る
こんな感じのリスト表示、ありますよね。設定画面とか、Twitterのタイムラインとか。
このリスト表示、ListViewを使って作るんですが、見た目の簡易さの割に大変めんどくさいです。しかし現場ではこのListViewを使う場面がものすごく多いです。ちょっとした設定画面とか作ろうと思ったら大抵これ使うので。。。いっぱい使うのにめんどくさいなんて大変です。
この講座はめんどくさいListViewを簡潔にまとめて使えるレベルに昇華しています。
Androidでメモアプリを作ろう (全22回)
この講座はこんな感じのメモアプリを作ることができます。
・より現実にありそうなレイアウト組み
・画面遷移
・ListViewによるリスト形式
と、今までの総集編のような講座であるだけでなく、
・データベースの作成と保存、読み出し方法
まで学ぶことができます。
このレベルのアプリが苦もなく作れれば、「初心者の下」から「初心者の中」ぐらいにはランクアップしたと言って過言ではないです。(まだ先は長い。。。)
ドットインストールのおすすめ講座は以上になります。今回紹介したのはプレミアム会員(月980円)しか見れない講座がほとんどです。無料で見れるのは「Androidアプリ開発入門 (全11回)」ぐらい。無料枠だけではAndroid開発ができる! とは残念ながら言えないので、ご興味のある方はドットインストールのプレミアム会員になってみてください。
ちなみに僕ももちろんプレミアム会員。ListViewの講座は何回見直したか分かりません(笑)
ドットインストールだけで未経験者が就職できるか?
↑の記事でも書きましたが、恒例のこの質問。
またしても、「実務経験がないと厳しいっす」と言うのが正直なところ。ただ、実務経験がなくてもとにかくアプリを作り続けることで道が開けます。
ドットインストールを使って基礎を学んだら、自分でオリジナルアプリを量産することが先決です。電卓アプリを作るも良し、カメラアプリを作るも良し、GPSを使ったアプリ、WebAPIを使ってサーバーと連携させてInstagramみたいなアプリを作るも良し。
自分の今の実力で、手の届く範囲で簡単なアプリをたくさん作らないと技術は向上しません。(壮大なアプリはオススメしません。挫折する可能性が高いから)
また、無手勝流にコーディングをするとすごく読みにくいコードになったり、冗長なコードができたりします。一人で開発している間はそれで良いですが、複数人で開発する企業だと、歓迎されません。
そうは言っても、いきなり綺麗なコードを書くのは難しいです。文章と同じでとにかくアプリを作ってたくさんコードを書かないと、綺麗なコードは書けません。ちなみに僕のコードも未だに綺麗なコードとは言えません(もっと書かねば)。
綺麗なコードの書き方は下記あたりの書籍がおすすめ。ウィットに富んでて面白いんですよ。ちょっと古いかもなので、もっといい本があったら公式ツイッター宛に是非情報を!
無論この本を読んだだけでは綺麗なコードは書けません。この本を読んだ上で、アプリを作り続けることが肝要です。
と言うことで、アプリでもWebデザインでもとにかく作品がないと話にならないので、アプリ屋を目指す方は頑張ってコーディングしていこうぜ! と言うお話でした。
ちなみにアールズはAndroidアプリ屋さんも募集しています。ドットインストールの講座レベルなら普通に分かるし、アプリいっぱい作ってるしーみたいな方は是非下記からアールズにご連絡を。大歓迎します! ベテランAndroid屋さんが来たらそりゃあもう狂喜乱舞しますよ。。。
本日は以上!