ボクココ

個人開発に関するテックブログ

スマホアプリ開発に先駆けて

ども、@kimihom です。

2021 年の新しい挑戦の1つとして、スマホアプリ開発がある。 私自身の経験を伝えると、6,7年前ごろに Android アプリで Java で開発していたことがある。これは仕事でガッツリ実装してたので、だいぶ詳しくはなかったが、それでもだいぶ前なので技術として参考になることは少ないだろう。そもそもプログラミング言語自体 Kotlin に変わっている。

また、iPhone アプリも開発していたことがある。Swift v1.0 が出立ての頃に、個人の趣味で作った Android アプリの iPhone 版を作ってリリースした。そのアプリは Android マーケットより厳しい iPhone マーケットで受け入れられず、しばらくしたらマーケットから消えてしまっていた。それを改善するほどの個人のやる気もなかったので、そのままスルーで終わった形である。一応 Swift で書いていた程度である。

さて、そのくらいの開発経験で、今どうやってスマホアプリの実装をしていくか考えた。

今、Flutter と呼ばれるプラットフォームが流行っているようだ。開発元は Google。コードを Dartと呼ばれる独自プログラミング言語で書き、それを iPhone, Android アプリで動くように変換されるようだ。UI はプラットフォーム側のではなく、独自で作られたのを共通で使うとのことである。なるほど、Dart が選ばれる理由もよくわかる。確実に iPhone, Android アプリ両方作るなら、この選択肢をまず真っ先に考えるだろう。

f:id:cevid_cpp:20201217084925p:plain

もし私が、単純な API 呼び出しとシンプルな UI 構成でできたアプリを作るのであれば、確実に採用していただろう。ただ、これから作ろうとするものが何かという点でより詳しい検討が必要である。

来年以降開発をしようとしているアプリは、サードパーティが開発運用しているライブラリを利用予定である。そして、そのライブラリが、完全に Swift, Kotlin で書く前提のライブラリであった。もちろん、Dart で頑張って書くという選択肢もあるけど、ドキュメントが全て Swift, Kotlin である以上、明らかにそれぞれのプログラミング言語でドキュメントを読みながら作った方が安全で正しくアプリが作れる。また、私自身 Swift の経験があるし、あとは似た言語? のイメージである Kotlin を学ぶだけなのでそこまで苦戦しなさそうというイメージを持っている。

f:id:cevid_cpp:20201217090049p:plain

最初から複雑な UI や機能を実装する計画でもなく、まずはその サードパーティのライブラリを組み込んでアカウントログインさえできればと考えている。その程度であれば、Swiftと Kotlin それぞれで書くこともそこまで辛いことではなさそうだ。

1人が2つのアプリを作るとなるけども、幸いどちらも経験がある。 Android Studio と Xcode という重たいソフトウェアを2つ入れるのが億劫なくらいである。

開発のきっかけ

今や、スマホアプリは個人で使うだけのものではなく、仕事でも当たり前に使われるようになっている。少し前までは、会社の電話はスマホではなく古い感じの携帯電話を使っている人も多かったけど、最近はもうビジネスで使うサブの電話もスマホになっている。

そうすると、ビジネスで普段使うスマホに、ビジネス用の Android/iPhone アプリのニーズがどんどん高まってくる。以前の 私の Android/iPhone 開発は、完全に個人向けのものだったけど、来年はビジネス向けという全く違うターゲットで開発を初めていく予定だ。

終わりに

来年の大きな技術的挑戦の一つスマホアプリの現在の考えについて記した。

まだ現時点での検討ということもあるけど、既に Swift UI という新しくなった iPhone アプリ開発を調べ始めているところだ。既に来年の挑戦は始まっている。

Web がメインだったボクココの記事ではあるけど、今後はアプリ開発におけるネタも多く出てきそうだ。

年末年始にどれだけ勉強して開発に持っていけるか。その空いた時間に何もしないか学ぶかで大きな差が出てくるので頑張っていこう。