[Kotlin]Objectモノトーン


! 今回は羅道先輩もオブジェクトを使って、モノトーンモードを使って、後期を書いた人かどうかを区別する変数を呼び出しました.

1.モノトーンパターン


クラスに1つのインスタンスしか持たず、グローバル範囲でインスタンスにアクセスできるモードです.
モノトーン柄はデザイン柄に属し、よく使われる柄です!
設計パターンは,繰り返される問題をどのように解決するかの解決策と考えられる.
あとでもう一度GoFのデザインモードを読んで勉強しましょう!

1)使用理由


モノトーンモードを使用する理由は、プログラムを開発するときに1つのオブジェクトしか使用できない場合があるからです.
  • アプリケーションユーザ設定、ログ、ダイアログ、およびリソース管理オブジェクト
  • これは、メモリ面とデータ共有面で優れているからです.
    アクティビティや計画では、テントやオブジェクトの生成が面倒で費用がかかります.この問題を解決する方法は単色調である.

    2)メリット


  • 固定メモリ領域が割り当てられているため、コンストラクション関数を1回呼び出すことでインスタンスを作成し、メモリ内のインスタンスのみを呼び出すため、メモリの浪費を回避し、コンテキスト切替コストを節約できます.

  • グローバルインスタンスであるため、データの共有が容易です.
  • 3)欠点

  • 複数のクラスが共有すると結合度が向上し、オブジェクト向けのオープンクローズの原則に反するため、オブジェクト向けのモノトーン設計
  • が必要となる.

  • マルチスレッドを使用する場合は、同期の問題を設計する必要があります.

  • Cottlinの場合、プロセスが開始されるとすぐにメモリに入るため、クラスを使用しないとメモリのオーバーヘッドが浪費されます.
  • 4)ソリューション

  • bylazyにより内部変数の初期化時間を調整する.呼び出されると、メモリにアップロードできます!!
  • 5)例

  • コトリンでオブジェクトキーを使用します.
  • object{
    
        val isReviewed by lazy { "후기 작성 안함" }
        
     }