今回はスマホアプリ制作のお話

結論から言うとめっちゃ楽しいのでその魅力をお伝えしたいです

ちなみにですがJavaScriptでも作れます(iOSとAndroid双方開発可能)
開発方法は後述します

今回はAndroidアプリの開発について語ります
iOSは未経験なので・・・。

ちなみに開発言語に関してですが

  • iOS→Swift
  • Android→Kotlin
  • 両OS→Flutter、JavaScript、ReactNative

となっています
両OS作れる方が便利に思えますが結局難しいことをやるならネイティブ(公式言語)の学習が要りますし、カメラやBluetoothなど端末依存の機能を使う際にはネイティブの方がバグが少ないと報告はたくさんあります
またSwiftでAndroidを、KotlinでiOSを開発という技術も出てきていますので、僕はネイティブ言語(SwiftかKotlin)をおすすめします

自分の端末で動くのが楽しい

ここは完全に主観なんですけど、PCで作ってPCで動くってのは多くの方にとって結構当たり前の感覚になってると思います

でもPCで作って別の端末、スマホで動くってなんか楽しいんですw
どんどんアプデさせて成長していくのが我が子みたいで可愛いw

ランニングコスト

よくあるパターンで見ていきましょうか

フロントをVue、バックエンドをRailsでTodoアプリをWeb開発したとしましょう
ならここに費用が発生します
それはドメイン費用とサーバー費用です
しかしスマホアプリなら
Androidの場合はストア登録時に25ドル払うだけでおしまいです
iOSの場合は年間99ドルなのでちょっとなんとも💦

Kotlinが強い

Android開発の公式言語はKotlinです

この言語の完成度、将来性、汎用性があまりも高いです
新しい言語なので他言語のいいところを取り入れ、不便なところは改善し、求められる機能を入れたという感じです

Javaを継承しており、Javaと互換性があります
しかしJavaと比べて圧倒的にシンプルな構文で学習コストも低いです

またAndroidアプリはもちろん、Web、データサイエンス、機械学習、基幹システムなどの開発にも取り入れられています

そしてなんといってもKMPの存在
1つのコードベースでiOS、Android、Web、デスクトップのシステム部分を作れるというマルチプラットフォーム開発が可能です

開発環境と開発画面

AndroidアプリはAndroidStudioというツールを使います
インストールしてエミュレータという仮想ディバイスをAndroidStudio内で準備したらOK
あとは開発です!
ちなみに開発画面はこんな感じでエディタとエミュレータが表示されます

高菜こんぶの資料

ここからは僕の作った教材を紹介させてもらいます

JavaScriptでスマホアプリ

まずはJavaScriptでの開発です
Monacaというツールを使います
資料はこちら

https://note.com/takane_konbu/n/n6d25a1cd61e4?magazine_key=m9445c6780a3a

Kotlin基礎

続いてKotlinの基礎資料です
Androidアプリにとどまらず次世代万能型言語を学んでみてください
僕の資料史上最高傑作です

https://note.com/takane_konbu/n/n4505cea17cef?magazine_key=m9445c6780a3a

Android開発基礎

最後にAndroid基礎開発資料です
3つのアプリを作って学びます

https://note.com/takane_konbu/n/nf1e04538f0f6?magazine_key=m9445c6780a3a

どれも1000円以下なので手に取りやすいと思います
また難しい環境構築はしませんので始めやすいのが特徴です