MVVMアーキテクチャ
MVVM pattern、ViewModel、data binding、separation of concerns、テスタビリティ
20 面接問題·
Mid-Level
1MVVMアーキテクチャにおけるViewModelとは何ですか?
1
MVVMアーキテクチャにおけるViewModelとは何ですか?
回答
ViewModelはビジネスロジックをカプセル化し、UIKitやSwiftUIに依存せずにビューの状態を管理します。ModelとViewのレイヤーを橋渡しし、明確な関心の分離を維持します。このアーキテクチャによりユニットテストが可能になり、コードの保守性と再利用性が向上します。
2MVVMにおけるModelの主な責務は何ですか?
2
MVVMにおけるModelの主な責務は何ですか?
回答
Modelはアプリケーションのデータとビジネスロジックを表します。データ構造を定義し、ビジネスルールを適用し、ViewやViewModelのレイヤーから独立しています。ModelがUIフレームワークから独立していることで、再利用性とテスタビリティが確保されます。アプリケーションデータの単一の信頼できる情報源として機能します。
3MVVMアーキテクチャにおけるViewの主な役割は何ですか?
3
MVVMアーキテクチャにおけるViewの主な役割は何ですか?
回答
Viewはデータの表示とユーザー操作の取得を担当します。プレゼンテーションコードのみを含み、ビジネスロジックを避けるべきです。Viewはdata bindingを通じてViewModelにバインドし、シンプルでテスト可能な状態を保ちます。SwiftUIでは、@ObservedObjectまたは@StateObjectを使ってViewModelを監視します。UIKitでは、Combineを使って変更を購読します。
4
MVVMの文脈におけるdata bindingとは何ですか?
5
SwiftUIにおける@Publishedと@ObservedObjectの違いは何ですか?
+17 面接問題
その他のiOS面接トピック
Swift の基礎
Junior
25問Swift言語の基礎
Junior
15問UIKit の基礎
Junior
18問UIViewControllerのライフサイクル
Junior
20問UserDefaults & Keychain
Junior
20問アプリケーションのライフサイクル
Junior
20問Auto Layout & Constraints
Mid-Level
24問UITableView & UICollectionView
Mid-Level
25問SwiftUIの基礎
Mid-Level
18問SwiftUI の状態管理
Mid-Level
22問SwiftUI ナビゲーション
Mid-Level
18問Networking & URLSession
Mid-Level
20問Codable と JSON パース
Mid-Level
20問Core Data
Mid-Level
22問プロトコル指向プログラミング
Mid-Level
20問プッシュ通知
Mid-Level
18問ユニットテストとXCTest
Mid-Level
20問UIテスト
Mid-Level
18問Xcode とビルドシステム
Mid-Level
16問Swift Package Manager
Mid-Level
16問Memory Management & ARC
Senior
22問Combine Framework
Senior
24問Concurrency & async/await
Senior
26問iOS Design Patterns
Senior
24問パフォーマンス最適化
Senior
22問セキュリティと暗号化
Senior
20問SwiftUI Advanced
Senior
22問iOSアプリケーションアーキテクチャ
Senior
22問