[Android]Android用MVCモード
5354 ワード
🌈Android開発者の立場からMVCモデルを理解してみましょう.
MVCモード?
モデル、ビュー、コントローラの略.
コントローラは、ビューとモデルの構造を参照および制御します.
実際には、マスタードキュメントの多くの例で使用されるコードはMVCモードで組織されている.
Androidの開発を始めるとついついMVCモードに慣れてしまいます
Android開発者として面接をすると、アーキテクチャに関する質問が多く聞かれます
何が私たちをこんなに重視させているのかを理解してみましょう.
Modelデータのオブジェクトを表します. xmlファイル. アクティブ/分割ファイル. ビューおよびモデルを参照し、制御に必要な変数/関数を有する. ユーザーの操作(ex.ボタンをクリック)に従って、ビュー(リフレッシュ、移動)とモデル(作成、変更、削除)を制御します. 逆弓から分離され、非常に識別しやすい.△これは一つのファイルに混入するよりも分かりやすい. は小型プロジェクトに非常に適しています.(実装が容易で簡単です.) ビューはモデルから分離され、再利用可能です.(他のイベントでもPersonを使用できます.) MVCモードの欠点モデルとビューの依存性を完全に解消できません.
->モデルの値が変更されると、開発者は特定のビューを更新するために一つ一つ処理する必要があります. は論理を複雑にするため、メンテナンスが困難である. コードはコントローラに集中的に積み重ねられ、認識がますます難しくなっている. これらの問題があるため、実際の会社はJetPackのMVVMモデルを使用するようにプロジェクトを構成しています.
初期段階では、MVCモードでコードを書く必要はありませんが、Android開発者になるには、MVVMモードとJetPackを学ぶ必要があります.
次に、MVVMモードを特定します.
🎨Img
📖ソース:スペースの記事
MVCモード?
モデル、ビュー、コントローラの略.
コントローラは、ビューとモデルの構造を参照および制御します.
実際には、マスタードキュメントの多くの例で使用されるコードはMVCモードで組織されている.
Androidの開発を始めるとついついMVCモードに慣れてしまいます
Android開発者として面接をすると、アーキテクチャに関する質問が多く聞かれます
何が私たちをこんなに重視させているのかを理解してみましょう.
Model
data class Person(var name: String, var age: Int)
View<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="click"/>
Controllerclass MainActivity : AppCompatActivity() {
val binding by lazy { ActivityMainBinding.inflate(layoutInflater) } // 뷰 참조
val Person = Person(var name: String, var age: Int) // 모델 참조
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(binding.root)
binding.btn.setOnClickListener { // 버튼 입력을 받으면 뷰와 모델을 제어합니다.
// ...
}
}
}
MVCモードのメリット->モデルの値が変更されると、開発者は特定のビューを更新するために一つ一つ処理する必要があります.
初期段階では、MVCモードでコードを書く必要はありませんが、Android開発者になるには、MVVMモードとJetPackを学ぶ必要があります.
次に、MVVMモードを特定します.
🎨Img
📖ソース:スペースの記事
Reference
この問題について([Android]Android用MVCモード), 我々は、より多くの情報をここで見つけました https://velog.io/@5y145/MVC-패턴-for-Androidテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol