肝了一个月,この GPT モデルベースの単語暗記アプリはついにベータ版がリリースされました。プログラマーとして、製品を作るたびにいつも非常に興奮します。まるで 10 ヶ月妊娠している赤ちゃんがまもなく生まれるような感じです。
限定配布 100 人の終身 VIP#
まず広告を打って、ダウンロードリンクを置いて、早期アクセスのフィードバックを歓迎します。ベータテストに参加した最初の 100 人には終身会員資格をプレゼントします!
https://testflight.apple.com/join/8d8ei614
灵瓜について#
この製品のアイデアは、私自身が英単語を暗記する必要性から生まれました。私は百词斩、扇贝、墨墨背单词など、市場に出回っている多くの単語暗記アプリを使用しました。これらはユーザー数が多いものから、比較的マイナーなものや個人開発者が開発したものまで様々です。例えば、方块背单词、List 单词、词根词缀背单词などです。雅思の単語帳を 2 冊暗記した後、まだ多くの問題があることに気づきました:
- 毎日単語を暗記するだけでは非常に退屈です。
- 多くの単語はアプリで覚えた場面で理解できますが、実際の文脈では曖昧に感じます。
- 単純に単語を暗記するだけでは、実際の会話や文章で応用するのは難しいです。
- 単語を暗記した後、基本的な意味しか覚えておらず、実際に出会った単語の他の形態を認識できません。
これらの問題と疑問を抱えて、ある日突然、私はひらめきました。単語の暗記をストーリーの読みと組み合わせることで、私たちは暗記する必要のある単語に実際の文脈で繰り返し触れることができるようになります。小説を読むことは単語を暗記するよりもはるかに面白いです。従来の単語暗記方法と比較して、灵瓜背单词には以下の利点があると考えています:
- ストーリーを読みながら単語を暗記することは退屈ではありません。気づかないうちに長い間ストーリーを読んでいて、多くの単語をマスターしていることに気付くかもしれません。
- 1 つの単語が複数の章で繰り返し出てくるため、無意識に記憶が強化されます。さらに、異なる文脈や形態で出てくることもあります。
- ストーリーは個々の人の単語暗記の進捗に基づいて生成されるため、個別にカスタマイズされています。
そして、1 ヶ月後の今日、「灵瓜背单词」が輝かしく登場しました!
開発体験について#
プログラマーとして、最近の半年間は ChatGPT やその他のさまざまな AI ツールに非常に依存しています。特に最近の 1 ヶ月はそうです。
上記の画像はこのアプリのアイコンで、私が Midjourney を使って作成しました。
また、現在アプリに組み込まれている4 つのストーリーテンプレートのカバー画像も Midjourney を使用して生成しました。言うまでもなく、Midjourney を使用して記事のヘッダー画像や挿絵などを生成する場合、ほぼ 100% 成功率で一発で生成できます。
iOS 開発に関しては、私は半年しか経験がなく、SwiftUI しかわかりません。しかし、経験豊富なプログラマーに比べれば、低レベルの原理を研究する時間はあまりありませんが、AI のおかげで自分が欲しいものを作ることは比較的簡単です。私はすでに「StackOverflow プログラミング」から「ChatGPT プログラミング」に成功裏に転身しました。
さまざまな技術的な問題について、ChatGPT は実行可能なコードを直接提供してくれます。エラーが発生した場合は、エラーログを貼り付けると、一緒にエラーの原因を分析してくれます。
簡単な例を挙げると、最後の仕上げの段階で「About」ページの下部にアプリのバージョン情報を表示したいと思った場合、次のように ChatGPT に尋ねました:
私: iOS アプリで現在のアプリのバージョンとビルド情報を取得して表示するにはどうすればよいですか?
ChatGPT: iOS アプリ開発では、アプリの Info.plist ファイルにアクセスして、現在のアプリのバージョン番号とビルド番号を取得し、アプリのインターフェースに表示することができます。
以下は、Swift でアプリのバージョンとビルド情報を取得して表示する例です:
if let infoDict = Bundle.main.infoDictionary { // アプリのバージョン番号を取得 if let appVersion = infoDict["CFBundleShortVersionString"] as? String { print("App Version: \(appVersion)") } // アプリのビルド番号を取得 if let buildNumber = infoDict["CFBundleVersion"] as? String { print("Build Number: \(buildNumber)") } }
上記のコードをアプリの起動コードに追加することができます。たとえば、AppDelegate の didFinishLaunchingWithOptions メソッドに追加することができます。バージョンとビルド情報をアプリのインターフェースに表示したい場合は、これらの値をテキストラベルまたはラベルのテキストプロパティに割り当てることができます。
私: SwiftUI ではどうですか?
ChatGPT: SwiftUI では、Bundle と Text ビューを使用してアプリのバージョン番号とビルド番号を取得して表示することができます。以下は、アプリのバージョン番号とビルド番号を取得して表示する SwiftUI のコードの例です:
import SwiftUI struct ContentView: View { var body: some View { VStack { if let appVersion = Bundle.main.infoDictionary?["CFBundleShortVersionString"] as? String { Text("App Version: \(appVersion)") } if let buildNumber = Bundle.main.infoDictionary?["CFBundleVersion"] as? String { Text("Build Number: \(buildNumber)") } } } }
上記の例では、まず Bundle.main.infoDictionary が存在するかどうかをチェックし、それからアプリのバージョン番号とビルド番号をそれぞれ取得します。取得に成功した場合は、Text ビューを使用してそれらを垂直スタックに表示します。
上記のコードを SwiftUI のビューにコピーして、アプリケーションのバージョン番号とビルド番号を表示するために使用できます。