📱

初心者がChatGPTを活用してスマホアプリを爆速開発した話

2024/12/10に公開

初心者がChatGPTを活用してスマホアプリを爆速開発した話

こんにちは!今回は、初心者がChatGPTを活用してスマホアプリを爆速開発した経験を共有します。技術的な詳細や開発の流れ、最終的にリリースしたアプリについてお話しします。

はじめに: 簡単に自己紹介

私は普段は東京でITコンサルタントとして働いていますが、自分でコードを書いたりすることは基本なく、スマホアプリの開発は携わったこともありません。(最後に業務でコードを書いたのは6年前くらいかな・・・)エンジニアとしては雑魚です。そんな私でもChatGPTに「何から何まで」頼りまくり、iOS用のアプリリリースまでこぎつけたのでその一部始終をご紹介します。

ChatGPTの活用シーン

  • アプリの機能設計
  • 実装(プログラムの生成)
  • エラーのトラブルシューティング
  • アプリアイコン生成
  • その他(リリース手続きの方法や紹介文の生成等)

使用した技術スタック

今回のアプリ開発では以下の技術を使用しました。
採用理由は元々趣味で少し触ったことがあったためです、但し業務で使用したことはないレベルです。

React Native

  • クロスプラットフォームのモバイルアプリを作るために採用。
  • 利点: iOSとAndroidで同じコードを使える。

Expo

  • React Nativeアプリを効率よく開発・テスト・ビルドできるフレームワーク。
  • 利点: 設定が簡単で、初心者でもすぐに始められる。

その他

  • データ保持: AsyncStorage
  • デプロイツール: Expo Go, EAS(Expo Application Services)

開発の流れ

ChatGPTを活用して、以下の流れで開発を進めました。

1. アプリの機能設計

今回このフェーズはChatGPTを使わずにやりました。アプリに必要な画面や機能、データの持ち方など最低限は自分で考えました。(逆に頑張ったのこれくらい)

2. 実装フェーズ

React NativeとExpoを使いながら、以下の作業をChatGPTとともに進めました。

  1. 環境構築

    • ChatGPTにReact NativeのExpoで開発をしたいといえば、必要な環境構築は教えてくれます。
  2. 画面の作成

    • 画面の要約を伝えることでそれを満たすコードを生成してくれます。
      こんな適当なプロンプトでも、、
      こんな感じでいい感じのコードを作ってくれます。
  3. 機能の追加/回収

    • 画面イメージが異なる場合や、追加で機能の作成をしたい場合は、機能の要約と現在のコードを貼り付けることで、現在の画面に追加で機能開発をしてくれます。(推奨されるかどうかは不明)

    • データの保存にはAsyncStorageを採用。

  4. エラーのトラブルシューティング

    • エラーの原因がわからないときも、エラーコードを貼り付けるとChatGPTが素早く回答してくれました。ビルドの長いログも貼るだけで原因と対処法を教えてくれます。

3. テストとデプロイ

  • Expo Goを使用してリアルタイムでテスト。
    これを使うと、PCでコードを修正したものをすぐにスマホに反映してくれてめちゃくちゃ便利です。必須でした。
    https://expo.dev/go
  • 最終的にはEASを利用してiOSのデプロイを実施。
    (わからない人はChatGPTにでも聞いてください)

4. アプリアイコン作成

  • 私はcanvaというAI画像生成ができるサービスを利用しました。無料で作成可能です(回数制限あり)。
    https://www.canva.com/

5. リリース審査

  • Androidがリリースが面倒なので、今回はiOSのみで。AppleDeveloperPlogramに加入し、AppStoreConnect画面からぽちぽちやればリリースできます。ちなみに審査が厳しいのでは?という話もよくありますが、今回みたいなローカルで完結するアプリだとそうでもなかった気がします。SNS系とかお金が絡むと厳しいのでしょうか?ちなみに1-2日で返信が返ってくる感じでそんなに遅くもなかったです。

リリースしたアプリについて

今回リリースしたアプリは、日々日記 という日記アプリです。ちなみに開発期間は1日1-2時間とちんたらやってましたが、2週間くらいでほぼほぼ完成しました(審査とかもあるので実際のリリースはもう少しかかりました)。なので本気出せば3日くらいでも作れそうですね。
https://apps.apple.com/jp/app/日々日記/id6737168145?l=en-US

アプリの概要

  • カレンダーUIに日々の日記をつけたり、習慣化しているものをスタンプ管理できたします。またそれらの状況は一目で見えるできる機能も搭載しています。地味にTodoリストも備えてあります。これくらいのもは作れましたよということで是非インストールお願いいたします!!!!

ChatGPTを使った感想と学び

今回の開発で感じたChatGPTの魅力:

  • 技術に強くない人でも、開発・リリースできちゃう。
  • 機能の改善案等も出してくれる。

一方での課題:

  • 回答が100%正確ではない場合があり、適切に調べ直す力も必要。多少は自分でテコ入れデバッグも必要でした。それでも8割以上はChatGPTで問題なかったです。

最後に

この記事が、個人アプリ開発に興味のある方や、ChatGPTを活用してみたい方の参考になれば幸いです!また、割とざっくりの内容になっているのでもしより細かい話に興味があったり質問等あれば、コメント欄でぜひお知らせください!場合によっては記事の追加も考えています!最後にもう一度、ぜひインストールしてみてもらえますと嬉しいです!!

Discussion