[Kotlin]Objectモノトーン
! 今回は羅道先輩もオブジェクトを使って、モノトーンモードを使って、後期を書いた人かどうかを区別する変数を呼び出しました.
1.モノトーンパターン
アプリケーションユーザ設定、ログ、ダイアログ、およびリソース管理オブジェクト これは、メモリ面とデータ共有面で優れているからです.
アクティビティや計画では、テントやオブジェクトの生成が面倒で費用がかかります.この問題を解決する方法は単色調である.
固定メモリ領域が割り当てられているため、コンストラクション関数を1回呼び出すことでインスタンスを作成し、メモリ内のインスタンスのみを呼び出すため、メモリの浪費を回避し、コンテキスト切替コストを節約できます.
グローバルインスタンスであるため、データの共有が容易です.
複数のクラスが共有すると結合度が向上し、オブジェクト向けのオープンクローズの原則に反するため、オブジェクト向けのモノトーン設計 が必要となる.
マルチスレッドを使用する場合は、同期の問題を設計する必要があります.
Cottlinの場合、プロセスが開始されるとすぐにメモリに入るため、クラスを使用しないとメモリのオーバーヘッドが浪費されます.
bylazyにより内部変数の初期化時間を調整する.呼び出されると、メモリにアップロードできます!! コトリンでオブジェクトキーを使用します.
1.モノトーンパターン
クラスに1つのインスタンスしか持たず、グローバル範囲でインスタンスにアクセスできるモードです.
モノトーン柄はデザイン柄に属し、よく使われる柄です!
設計パターンは,繰り返される問題をどのように解決するかの解決策と考えられる.
あとでもう一度GoFのデザインモードを読んで勉強しましょう!
1)使用理由
モノトーンモードを使用する理由は、プログラムを開発するときに1つのオブジェクトしか使用できない場合があるからです.
アクティビティや計画では、テントやオブジェクトの生成が面倒で費用がかかります.この問題を解決する方法は単色調である.
2)メリット
固定メモリ領域が割り当てられているため、コンストラクション関数を1回呼び出すことでインスタンスを作成し、メモリ内のインスタンスのみを呼び出すため、メモリの浪費を回避し、コンテキスト切替コストを節約できます.
グローバルインスタンスであるため、データの共有が容易です.
3)欠点
マルチスレッドを使用する場合は、同期の問題を設計する必要があります.
Cottlinの場合、プロセスが開始されるとすぐにメモリに入るため、クラスを使用しないとメモリのオーバーヘッドが浪費されます.
4)ソリューション
5)例
object{
val isReviewed by lazy { "후기 작성 안함" }
}
Reference
この問題について([Kotlin]Objectモノトーン), 我々は、より多くの情報をここで見つけました https://velog.io/@ho-taek/Kotlin-Object-싱글톤テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol