U E D R , A S I H C RSS

Holub On Patterns/밑줄긋기

1. 고고

1.1.

  • p.1
    • , , , . ~~~ .
      • , . -
      • . (ㅋㅋ) 그 -

1.2.

  • p.3
    • .
      • ? -
        • .. , 기 과 거 (까). ㅋㅋ 1. 기 . 2. . -
        • 고객과 경ㅠㅠㅠㅠ 개 개 ... -

2. OO

2.1. vs

  • p.22
    • .
      • . -
        • 군. -
    • 1980 C .
      • 고 C . -
    • . .
      • " " . ? ? -
        • ? 100% . -
          • . ㅋㅋ -
        • . 고. -
          • . ( ) -

2.2. ?

  • p.22
    • .
      • . -
  • p.23
    • .
    • .
    • .
    • .
      • .. 까. " 그게!! 고!!" -
  • p.24
    • .
    • , ' '( ) ' '.
      • ' ' . -
        • ' ' 기까 -
        • .. -
        • -
    • '교 ' .
      • . '교 ' . -
        • 게 공 -
          • .. 근 거기 .. -
    • .
  • p.25
    • , .
    • .
  • p.26
    • .
  • p.27
    • .
    • .
    • .
      • 까 -
      • -
    • .
      • 고 그 -

2.3. , ?

  • p.28
    • .
  • p.29
    • 결국 .

2.4.

  • p.29
    • .
    • . .
  • p.30
    • .
    • .
      • !!! -
      • -

2.4.1.

  • p.30
    • ' ' .
  • p.31
    • .
    • .( .)
    • .
      • ? ? -
        • 구 기 .. 구기 .. -
          • . ' .' -_-; -
        • . -
    • .
    • .
    • .
      • 근근 . -
      • . 그 . -
  • p.32
    • , .
    • . .

2.5.

  • p.32
    • .
  • p.34
    • .
    • .
  • p.34
    • 과 구 . .

2.5.1.

  • p.35
    • (OOD)과 객 (OOP) .
    • .
    • , , .
    • (Agile) .
      • , .. -
    • .
      • YES ? -
        • 까? -
          • , ? -

2.5.2. C

  • p.37
    • .
    • .
    • , .
    • .
      • . 까? -
    • ''경 .
    • .
  • p.39
    • MFC .
      • MFC MFC . -
  • p.40
    • . .

2.5.3.

  • p.40
    • , .
      • ( ) . 그고 그 ( ) ? -
    • 결과 .
      • " " . 그 " " 고... ..? -
        • faith coding과 ㅋㅋ -
  • p.41
    • 게 결 .

2.6. ?

2.6.1. !

  • p.42
  • OO (객) .
  • OO .
  • "객 ." . ! .
    • ! 까?-
    • !! -
    • C 고 C++ , '객' ' 고 " structure(data) + method(to do) ." . 꾸기 ( ...) -_-;; -
      • . + c++ ..? -
    • 2 ㅜㅜㅜ Spring/ ㅜㅜㅜㅜ ... -

2.6.2.

  • p.43
    • OO 1 .
      . 갖고 .
    • . " (Ask for help, not for information)."
      • !!! ! ! -
      • (-_-;;) 군 -
        • !!!! -
    • .
      • !! -
      • 6 . . C ? ;;;;;;; OOP ... OOㅜㅜ 그게 간 . -
        • -
          • . -

2.6.3. ?

  • p.45
    • OO , .
    • . .
  • p.48
    • .
      • wow. 과격 -
      • 군... -

2.6.4. 게 '게' ?

  • p.48
    • (lira) (euro)
      • ?? 궁금 -
    • 까? 고객 .
      • . . -

2.7.


  • p.52
    • (Cellular automata) OO . .
      • .. -
    • ,, 그 . , .
      • SimCity!!!! -
      • ... -

  • p.54
    • OO .

  • p.55
    • . . .
    • getter setter , 결과 . getter getter 'getter' . getter setter . 기 .

  • p.56
    • 고! !!

2.8.


  • p.57
    • 'get' 'set'기 . 객 . get/set private , .
  • p.58
    • .

  • p.60
    • 갖고 까? 갖고 까? .
    • public .
      • get, set public .. -
  • . , ?
  • OO기 .

  • p 62
    • ' 기' , .
      • ? ? -

2.8.1.


  • p.62
    • UI .

2.8.2.


  • p63
    • getter/setter .

2.8.3.


  • p65
    • .
    • , .
    • . .

2.8.4. get/set

  • p 67
    • CRC ' 기' .
  • p68
    • CRC . UML .
    • ' ' . .

2.8.5. getter setter ?


  • p69
    • '꺼(pull)' '(push)' .
    • ' ' . getter setter .

2.8.6. getter/setter


3. 기 그

  • 75p
    • OO GoF .
    • 고 extends .
      • . -

3.1. Extends ?

  • 75p
    • extends .
    • ... .
    • ... extends .
      • 거 -

    • (extends) (implements) .

  • 76p
    • " ' C++ ' CEO . 그 .
      • . mfc 고 객 . -
    • extends .
      • . -
    • OO , .
    • OO .

  • 77p
    • extends implements 간 C++ . C++ .
      • C++ . C++ . -

3.2. vs.

3.2.1.

  • 77p
    • 까? 결과 .

  • 78p
    • , 개 기간 .
      • 까...? -

    • . . , .
      • . . -
    • ... .

3.2.2.

  • 80p
    • private . ? . !
    • protected . protected public .
      • get/set protected , 군. 기 ... -
  • p81
    • OO '(strictness)'과 .
      • 꼭 고군 -
      • 간, .. . 그걸 .. -

3.2.3.

  • p81
    • , .
      • ㅋㅋㅋ -
  • p86
    • .
  • p87
    • .
      • implements ? -

3.2.4.

  • p90
    • '' .


3.2.5.

  • p91
    • . MFC(Microsoft's Foundation Class) .
      • MFC . 기 .. -
    • .
      • MS 게 기군. -
        • UI ㅋㅋㅋ -
          • UI ? 고. -
  • p92
    • 갖고.

3.2.6. Template method Factory Method

  • p99
    • Factory Method . Strategy Factory Method .
    • . , " 까?" , 기간 길게 .
      • ... ! -

3.2.7.

  • p101
    • '꼼' .
    • . .
      • .. -
  • p103
    • .

3.3. extends ?


  • p103
    • extends .
    • ( ) .
      • 군. 거군? ? -

    • 결과 .

  • p104
    • OO .
      • 기 5개 !? -

    • . .
      • DB SE . . . . -

    • p105
      • 'is-a' . .
        • . extends . 'is-a' ! -

      • . .
        • .. extends . 까 -

      • . (LSP) . LSP 고, 결과 (OCP) .
        • ...? -

3.4. extends


  • p107
    • . .
      • . 2 . . 그. -


~~java
interface Employee
{   void youAreFired();
}
  • . -

3.4.1.


  • p108
    • Abstract Factory Abstract Factory .
      • Abstract Factory (?) -

    • Abstract Factory .

  • p110

~~java
public static class EmployeeFactory
{   private Factory(){/*/}

    public static Employee create()
    {   return new Employee()
        {   public void youAreFired(){/**/}
        }
    }
}
  • peon Employee() implement 군. private Peon ? -


  • p111
    • '과 근' Singleton . Employee factory Singleton .
      • ? -

3.4.2. Singleton


  • p113
    • static .
      • Gara Static Hell o! -

  • p114

~~java
class Singleton
{  private static Singleton instance = null;
   public static instance()
   {  if( instance == null)
      { instance = new Singleton();
      }
      return instance;
   }
   //...
}
  • Java GUI . 근 . -

3.4.3. Double-Checked Locking( )


  • p116
    • DCL . 10 1000 .
      • .... . ? -

    • DCL ' ' . 그 . .
      • . ? -

3.4.4. Singleton


  • p117
    • 까?
      • -

  • p118
    • ' ' .
      • -

  • p119
    • Singleton Singleton .
      • (Zombie ate your brain) -

3.4.5. Abstract Factory

  • p120
    • Singleton 과 Abstract Factory . Abstract Factory .
      • 군. 그... -

    • 결과 Peon , .
      • ? youAreFired() ? garbage Collector ? -

  • p121
    • Abstract Factory '군(family)' .

  • p122
    • Abstract Factory (isolation), .

  • p123
    • ( )
      • . 근 ..? 겨? -

  • p124
    • static .
      • 과거 ? 겠군 -

  • . .

3.4.6.


  • p124
    • ' ' .

  • p125
    • URLConnection InputStream Abstract Factroy .

  • p126
    • .
      • . -

3.4.7.


  • p128
    • .
      • . Hard . ? -

  • p128
    • 고 Class.forName() Class 객 .
      • .. . -

3.4.8. Command 과 Strategy


  • p131
    • Strategy . 그고 Strategy Command .
    • C C++ .
      • .. . . Java C . -

    • Command.

  • p132
    • Strategy '게' Strategy 객 .

  • p135
    • Strategy Factory Method .

4.


  • p139
    • .
      • Life Game고 Life Game 거겟? -

    • 10개 . . 20개 .
      • ... .. 20개. GUI . -

    • GUI () , .
      • ' .',' ' 군. -

    • .

    • .

    • .

4.1.

  • p140
    • 1 .

    • .
      • 까 궁금. -

    • .
      • -

  • p141
    • .
      • Naver Ending Story.. -
        • Naver Anding story? -

  • p143
    • .
      • 까? . -

4.2.

  • p143
    • .
      • ? -

    • .

    • .

  • p146
    • " . ?" . " ! (rich) " .
      • . . .. -

    • '' '' , .

    • ' 기(cut-and-paste)' . .

4.3. Clock : Observer


  • p147
    • (Observer) (clock tick) . Universe ActionListener .
      • Tick Tick Tick Tick... Universe. -

  • p148
    • class BadJmenuItem
      • Bad . -

    • .

    • .
      • Naming . 근 -

  • p149
    • . '' 객 .
      • . -

    • Clock Subject/Publisher .

  • p151
    • Clock GoF Singleton 깊게 .

    • Clock Singleton . '고' Singleton .
      • Java '고' Singleton Singleton . 군! -

4.3.1. Observer 구기 : Publisher


  • p154
    • 금까 Observer 고, .

    • , . 고, , .
      • , . -
        • ?; -

  • p155
    • '굶겨 '.
      • ... -

    • '기' fireEvent() Synchronized . subscribe() cancle() , fireEvent() . 결과 subscribers .
  • p156
    • Observer .

  • p157
    • .

    • .

    • 3-3 Publisher .
      • . -

    • Command 객 Observer , Publisher Command객 .
  • p159
    • Node final Node '(immutable)'객 . 결과 Node 객 .
      • ! -

  • p160
    • 근 권 .
      • Trade-Off . -

  • p161
    • ''고 .
      • '' -

    • .


4.4. Clock : Visitor

5.


  • 긋고계 고 갑...! -

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:25
Processing time 0.1856 sec