多様なアニメ作品を探索し、自分だけのアニメ図鑑を作れる iOS アプリ
- 開発期間: 2025年3月27日〜2025年4月12日(約2週間)
- 開発形態: 個人開発
1. アニメ探索
- 人気、シーズン別、完結、劇場版、ジャンル別のリストを表示
2. 検索機能
- キーワード検索
- 最近の検索ワード保存
3. 詳細情報の提供
- アニメ/キャラクターの詳細情報を表示
4. 多言語翻訳対応
- あらすじやキャラクター紹介をシステム言語に基づいて自動翻訳
5. マイアニメ図鑑
- 視聴状況(視聴中/視聴予定/視聴完了)に応じて作品を保存・管理
- 言語:
Swift - UI:
UIKit(一部SwiftUIをUIHostingControllerで組み込み) - アーキテクチャ:
MVVM,Repository,DIContainer,Input/Output パターン - 非同期処理:
RxSwift,RxCocoa,ReactorKit,OperationQueue,Actor - ネットワーク:
URLSession + async/await - データベース:
Realm - 多言語対応:
Apple Translate API,String Catalog - 外部ライブラリ:
RxDataSources,SnapKit,FSPagerView,Floaty,Toast
- Actorを用いてリクエスト間隔を制御するレート制御ロジックを実装
- APIレスポンスモデルを
DTO → Entityへ変換し、Viewに依存しない構造に分離 - プロトコル指向設計 によりドメインモデルを抽象化し、テスト容易性 を高め、ViewModelとの結合度を低減
- ReactorKit + RxSwift を用い、
Action → Mutation → Stateの単方向データフローを実現 - 画面ごとに専用の Reactorクラス を設計し、非同期イベントとUI更新の連携 を効率化
- Apple Translate API によりシステム言語に基づいた 自動翻訳 を実現
String Catalogベースで 国際化対応構成 を設計
NSCacheを利用したメモリベースの 画像キャッシュシステム でリクエストを最小化し、スクロール性能を最適化- TableView/CollectionViewセル内で非同期画像読み込み
Taskを管理し、再利用時にcancel()を明示的に呼び出して、ちらつきやメモリリークを防止
| ホーム | 検索 | アニメ詳細 | キャラクター詳細 | 図鑑 |
|---|---|---|---|---|
![]() |
