SlideShare une entreprise Scribd logo
1  sur  11
Télécharger pour lire hors ligne
?



                                                                                     .                                                                    /
                    ,                                                                                                                             ,
                                                                                                                              .‘                                                  ’
                                       .
                                                                                                                                                                              ,
                                                                                                                                                  .
                                                 /
                                        .                                                                ,                                                    ,                       ,
                                (Extreme Programming                         XP)                                  .
                                                                                                                                                                  ,
                                                                                                                                              .
                                                                                                                      .                   (           )
                                   (           )                                                                          .
                                                                                                                                  .                                                       ,
                                                                                                                                                                          .
                                                                                                                                                                                                   ,
                                                                                                     .
            (               )                                           .



                                                           1.
                                                       .                                                                      ,                                               ,
                                           .                                                     “                                                                                            !”
                    .
                                                                                                                                      .
    ‘       ’                                                                                            .                                                ‘           ’
.
                                                            .

                                                                             .
        ,                                                                                                                                 ,
                ,
                    ?
                                                                    .
                                                                                                                                                  ,
        ‘    ’(construct)                                                        (                                                                                                            .
    (Jean Piaget)                                      ,                                             MIT
           ).                                                                            ,
        .
                                                   .
                                                                                                                                                  ?
                                       .
                    ‘                                           ’            ‘                               ’(
                                                                ,                                                                                                                     )
                            ?                                                                                                                         ?
                        ,                                                                                             .
                                                                .
                                                                        ,“                   ,                                                                                                ,
                                                                                                                                                      ?”                                      .
                                                                                                                                                              ‘           ’
                                                                                     ,
        .                                                                                                     ?
2.
                          ,
                                                                                                 .                                                              (pseudo-code)
                                                                        .                                    (C,                                )                   (LISP, Scheme,
Haskell),                     (           ,                         )                                                                          .
                                                    .
              .

                                                                                                                                  .
                                                                                                         ,   ‘                                 ’                    ‘                               ’
                                                        ,                                            ,
                  ,                                                                                      .
  ,                                                                                                                                                                                                 .
                                                                                                                          ,
                                                                .

  1.
  2.
  3.
  4.                                  (correctness)


                                                                                                                 .
      .                                                                                                                                                                             ,

                                                .                                                                    .”                                                                     ?”

                      .
                                                                                     .                                                              ‘                       ’
          .                                                                                                                                                                             .
                                                                                                                                                                                .

                                  .                                                                                                                                                         .
                                                    .
                                                                                 ,                           “,                                                                                 ”
                                                                                                                                                                .
                                                                                                                     ,            ‘                     ’
      .
                                      .
                                                                                 ,                                                                      ,
                      .                       (ad hoc)
          .                                                                                          .
                                                                                         ,                                                                  .
                                                            .                                                        .
                                                        ,                                                                                  .
                          .                                                                                                           .   ,
                                                                                                                                                                                                .
                                                                                             .


                                                                            3.

                                      .                                                                                       .                                         ,           (concrete)
                  (abstract)                                .                                                                                      . ‘be-                           to-      ’



                                                                                                     2
.                                                                                                            (
                                                                                      )                                      , ACM               ICPC(International
Collegiate Programming Contest:                                                                                     )
                                                                                                                                                       .
      “                                                           ”                                                                                .
                                                                  ,                                                                                    ,
                                                                                                .


                                                                                          4.
                                            ,                                                                                                                      .
                                                                                                                             .
                     .                            (E. W. Dijkstra)      (N. Wirth) ’
   ’(Stepwise Refinement)             .          Program Development by Stepwise Refinement (1971,
CACM 14.4, http://www.acm.org/classics/dec95)                           .
                                                       (                  ’goto        ’
                ).               Stepwise Program Construction (Selected Writings on Computing: A
Personal Perspective, Springer-Verlag, 1982,http://www.cs.utexas.edu/users/EWD/ewd02xx/EWD227.
PDF                .
                                                      .
                       .                                                   .
        (loop invariant)                            .                        .
                         .  (Udi Manber)                   ( Introduction to Algorithms: A Creative
Approach )                                                                       .
        .                           A Discipline of Programming                (Gries)   The Science
of Programming                 .                         .
      .


                                                                                                                    5.
                                                                                      .                                            ‘        ’
                            .                                                                                                    (Robert Floyd)
               (The Paradigms of Programming, 1978)                                                     .
                                      .                                                                                                  .
                                                                                                                                                                       .
                                                                      .
                                                    ‘             ’                                 .                                              ,
                                                                                                .
                                                .                             .                                                              ,
                                ,                                                               ?                                                                      .

  .                                                                                                                                                            .
                                    ‘                         ’                                                                      .
               ,                                        ,                                                                                                  .
                                                                                                            .
          .‘                ’                                                 .
                                                                                               (Robert W. Floyd)                     1978
                                        .

                                                                                                        ,
                                                        .                                           ,
                   .                                        (insight)                                                    .
                                                                                           .                    ,
                                            .
                                                                          .                                                                                        .
                                                                                           .
                        .                   (learn)                                        (unlearn)                             .


                                                                                  3
(George Polya)                        How
to Solve it                                                        :
                                                                   ,
                                                                            .
                                                             .
                                                                                                                                               .
             ACM           ICPC                                                                                                                    .
                                                                                                  ,
                           .“                    .                                                                                                                      .
                                                                                            ?”
                                                                                            .
                                        ,                                                                                     .
                                                                                                                          .                ,
                  ,                                                    .
              .
                                             CLR(Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson,
and Ronald L. Rivest)                                .                                             (Jon Bentley)
  Programming Pearls                                        .
                                                                 .                                            .
                                                                  .


                                                                                                              6.
         ,            2001          11                                                                                                                                  .
        OOP
                                                         .
                  .
                      DP                    RF                                              .                                                                   ,
                                                                                                 . DP
                  . RF                                           (Bad Smell)                                                                                . RF
                                                                        .
                                                 .
                                                                                                                                                                    .
                                    .                                                                                              GoF
                                                                                        .                                         (    )                (           )
                                                                                                                      (       )                .
                                                                                                                  .                                                                  ?
‘        ’                           .                                                                        ,
                                      .                                                           (                                                    ) GoF
                                    .


                                                                                                                                         7.
                                                                                                                                                                            ,
                                                                                                                                   (Mechanics:
                                     )                                                                .                                                                         (Code
Smell)                              -                                           .
                                ,                                                                                                    .
                                                                                                                      .
                                                                           .                                                                                                         .
                                                                            .                                                 TDD(Test Driven Development)
                                                     .                              ,                                                      .
                                                                                                          ,
    (                                                                                             )                                                         .                    ,

                                                                                            4
.
  .                                                  .                                                                     ,
                                                                                                      .                                                                                           .
                                     ,                                                                 ‘                           ’                                                      .           ,
                                                         .                       ‘       ’                                                               .
                                             .
                                                                                 (                                                 )
  (                                                      )                                        .
                            .
                                                                                                                                                                                  .
    OAOO(Once And Only Once:                                                                                                                                      )                                                   .
    OAOO             -                                                                                                                                                                                    .
    ‘                ’                                                                                     .                                                                                      -
                .                                                                                                              3              (                                                               3
  )                  .                                                                                                                                                    .
                        ,                                                                                                                                                     .

  1.                                         :                                           2001              11
  2.                            :                                                                                                                            (                                                    )
                    .                                                                                                                                                 .
  3. OAOO                            : OAOO                                                                                ,                                                      .
                                                                 .                                                                                           . GoF
                                                                                                                                             .

  4.                            (Law of Demeter)                                              :                                                                                           .
                                                                                                               ?
  5.       (Pair)                                :                                                    .                                                       ,                                                       .
           ,                                                                                                       ,       3                                                                          .
                                                                                                                                                 .

  6. ‘          ’           ‘                ’                       :                                                                                        .                                                               ?

                        ,                                                                                                      .                                                  (Collaborative Learn-
ing)                                     .                                                                                                           ,
                                             .               ,
            .
  .                                                                                          .
           (Tacit Knowledge)                                             .                                                                                                ,
       ,                   ,                                                                                                           ,                                                              ,
                        ,                                                                                                                                                         .
                   .                                                                                                                                                      .
                                                                                                               .                           (Apprenticeship)                               .
                                                 .                                                                         .                                                     ,
                                                                             .                                                                                 .
                                      .                                                                                                                      (Jean Lave, Etienne Wenger)
  Situated Learning : Legitimate Peripheral Participation                                                                                                            .
                                    .                                                                                                                                                                                         .
                                                       .
          ,     (            )
                .                                                                                                                                                                     .
                     ,                                     .
                                  .                                                                                                                               .
           .                                                                                                                                                                                  .
  .                            2001 12                    XP                                                                                                                                          .
                                                  ,‘                                                                                                                              ’
                                                                                                                                                                                              (           )               ‘
                    (           ),                                               (       ),                                            (    )’                                                        .
                                                                                     ?


                                                                                                                   5
.
                                   .
                                                       ,
                                                                                                           .


                                                                                          8.
                                                                                                                                                   ‘   ’
        .                                                                                             .                                                                        .

   •                                       ,                          .
   •                                                                                              .
                                                                                                                                   .
   •                                                                                                                                                                   .
                                                                  .                       ‘                                                                    ’
              .
   •                                                                                                  .        ,
                               .
   •                                                                                                                       .                                   (Toy Prob-
       lem)                .

                                                               (Christopher Alexander,                                                                 )
                                                                        .
                                                                                  .                                                                The Timeless Way of
Building                                                        ?

                                                                                      .
                                                   .

                       ,                                   .
                                                                                                                                                           .
                               ,                                                                                               ,
                                                                                                                                               .
                                                                              (Betty Edwards)                                                           Drawing on the
Right Side of the Brain                                                                .
                    .
                                               .                                                                                                                           .
                           . 1000                                                                                                      ,
                                                   .                                                  .“                                                                           !
                  !”                   .
        .
                  ‘’                                                              .


                                                                                                                                   9.
                                                       ,                                                                                       .
                                                                                                                                                               .
                                                                                                                   .
              .
             “                                                                ”
                                                                                                                           .
                                                                                                           ,”          !                   ,
        !”                    ,                                                                                                                .
                  (Lev Vygotsky)                                                              .                                                                                    ,
                                                                                                                                                                   .

                                                                          6
’                             ’
                                                                                                                                                           .
                                                                                                                                                               .           ’’
                                      .                                                    ,

                             ’                ’                                            ,                                                                                     .
                                                                                                                                                                   .
    ,                                                                                                                                                              .
                                                                                                                                   .
                                          ,
                                                      ,
                   (GoF                                                                                                                                                          )
                    .                                                                                        .
                                                                     .
        GoF                                               (Ralph Johnson)                                                              .

                 [GoF]                        ,
                   [                          ]                                                                                                            .
                                                              .
                                                                                                                       .


                                                          .
    .
             .


                                                                                                           10.
                                                                                                                 .                                                                   .
                                                                      .
                                 .‘           +                   +            ’                                                               ,   ‘I love you’                  ‘I hate
you’                                                                                                                                                     .
                                                                                               ,
                                                                                                                           .
                    .
        DP                                        .                                                                                                                        ,
                                                          .               GoF                                                      (John Vlissides)
             .

                                                                                                   ,       GoF                                                         .
                                                                                                                                                   .                       GoF
                                                                          .
                                                                                           .                                                       !
                                                                                                                     (immerse)             .
                         .                                                 .
                         .                                                                 .
                         .                                                                                                         .
                                                                                       .
                     .                    GoF                                                                                                                  .

                                                                                                                                                                   .
                        , DP                                      DP                                                                                   .

                                                                                                                                                           ’                             ’
                    .

                                                                  .                                                            ,
“                                                                                          ”                                           . GoF



                                                                                                       7
“                                                                               ,                                   ”
  .
              ‘                        ’                                                                     .              ,
                      (Joshua Kerievsky)                                      A Learning Guide To Design Patterns http://www.
industriallogic.com/papers/learning.html                                                  .
                                                                             Knowledge Hydrant http://www.industriallogic.
com/papers/khdraft.pdf                                                                  .
                      .
   LG2DP( A Learning Guide To Design Patterns )                                                                 DP
                                        . DP                                                                                                           .
                             . sorry                                                             remorseful
            .                                                                                                                                      .
           (Proximal Learning)          .                                                                                             . LG2DP
                                    .
                                                                                                                .

                                                                                                          ,                   ,                ,
                                                      .                                                         ,
                                                                                                      .


                                                                                                                          11.
                   GoF DP                                                                                                         .
                     . DP                                                                 .
                                                                              .
                                                                      , DP
                                   .             Smalltalk Best Practice Patterns
       .                                          .
                                                                 .
          .                                     OAOO
                                       .                        (Overengineering)
  ,                              .                            Stop Over-Engineering! (Software
Development Magazine, Apr 2002, http://www.sdmagazine.com/documents/s=7032/sdm0204b/0204b.
htm                  .                                                                   .
    1980                                                          .
                                              ,                     ,
                                     .      (James Coplien)
                                   .

(representation)                                                         .                                            ,
                       .                                      ‘                   ’                                                     .
                                                               .                                              , C++                         ,
                               .               ‘              ’                                   (                                          (Javarian)
            .                                       (barbarian)                                   ).   ‘
  ’                                                                          Diversify http://www.research.ibm.com/people/v/
vlis/pubs/gurus-99.pdf                                                       .                                    ’        ’
                                                          .                       (implementation)       (intent)
                                   ,
                           .
                                       DP                          GoF                        Design Patterns Smalltalk Companion
                                         .                                                     .                              (
                                               ),                                                             .
          ,                                                                                                    .,
                                                                         .                               .
                   ‘                       ’                                                           .          “
                           ”                                                                                            .




                                                                                  8
12.
                                                                   .

    •         Design Patterns Explained (Shalloway, Trott):                                   DP
    •         Design Patterns Java Workbook (Steven John Metsker): DPE
                                                               .
                                                                                                                    .
    •         Refactoring (Martin Fowler): DP                                                                                     (
                                  )
    •         Design Patterns :               .
    •         Design Patterns Smalltalk Companion : GoF                                                                 DPSC

    •         Pattern Hatching (John Vlissides): DP                                   .                                           .
    •         Smalltalk Best Practice Patterns (Kent Beck):                                                     .                               .                   .
    •         Pattern Languages of Program Design                  1,2,3,4:


    •         Pattern-Oriented Software Architecture                   1,2:                                             .2
                               .
    •         Concurrent Programming in Java (Doug Lea):                                                                                                        .
    •         Patterns of Software (Richard Gabriel):                                                                                 .

    • Analysis Patterns (Martin Fowler):                                                                   .
                       .
    •          A Timeless Way of Building (Christopher Alexander):
               .                          .‘    ’(‘    ’                                                                                                The Nature
            of Order ).
    •         A Pattern Language (Christopher Alexander):                                                                                  .
    •         Problem Frames (Michael Jackson): DP                                (solution)
                             .                                                                                                                           .

    DP                                , DPE           DPJW    RF                                                                  RF
                          (                                                                                                                                 .
                                                  ,                                                   ).                                  GoF           DPSC
                              .                                                   .                            SBPP
                  .                                                                           DP                             SBPP
.
                                      POSA            PLOPD
        .                                                                                     .
                                       .
                                                                                                                         (
              “                                                               ”                                                                         ).
                                                          ‘   ’                                       .                                                             ,
                                                  ,                                                                      .
                                                                                                                                                        .“
                      ”                               .                                                                                             ,
                                                  .       ‘OOP                                                                ’       ‘
                                  ’                                                           .
                              .
                                                                                                           .
                                                                                          .
        .                                                                                         .


                                                                       9
XP Explained
                                                  XP                                                                        .
         XP                              .                   XP                                XP                                                 .
                   XP                       ,                                                             .
                                    .                                   ‘     ’
               ,                                                                                   XP
                        .                                                         (XP               ,                                 ‘
 ’                                         ).


                                                                        13.
     XP                                                                                    (       2001        12
XP                 ).

     •     XP Explained (Kent Beck): XP
     •     XP Installed (Ron Jeffries et al): C3                                        ,
     •     Planning XP (Kent Beck, Martin Fowler):                                 (           ,              )
     •     Refactoring (Martin Fowler):
     •     XP Applied :
     •     XP Explored :                              XP

                XPI         XPX                      . XPE
              (2001            11                                 ).                                                              .

     •     The Timeless Way of Building :                                                           .                       (On-site Cus-
         tomer),         (Piecemeal Growth),                (Communication)                                                          .
     •     XP in Practice (Robert C. Martin            ):                                                                             XP
                         .        (                                ).
     •     XP Examined : XP
     •     Peopleware (Tom DeMarco):
     •     Adaptive Software Development (Jim Highsmith):                                                           .                         .
     •     Surviving Object-Oriented Projects (Alistair Cockburn):                                            OO


     •     Software Project Survival Guide (Steve McConnell):                                           SE              .
     •     The Psychology of Computer Programming (Gerald M. Weinberg):
                 .                                                    (Egoless Programming)
                    .
     •     Agile Software Development (Alistair Cockburn):
     •     Software Craftsmanship (Pete McBreen):
     •    Agile Software Development with SCRUM (Schwaber Ken):                                               (Scalability)
         XP+SCRUM                               .
     •     A Practical Guide to eXtreme Programming (David Astels ):
                                 .           . XPP                .
     •     Agile Modeling (Scott Ambler):                                                                                                 ,
                                                 .
     •     Agile Software Development Ecosystems             (Jim Highsmith):
                                                                .

                                                             10
•        Test Driven Development (Kent Beck):                                         (                   )                            TDD                 .
           TDD          XP           (TDD                                                                                                                 )
   • IEEE Software/Computer, CACM, Software Development Magazine

   •        XP Conference, XP Universe                                              (                )
   •                    ,                           ,                        http://c2.com

                            ,                           ,                                                                     .                     ,
                                                                                                                 (                            10 , 20
                                                                                             .
                                                  ).
           ,                                    (Ron Jeffries),
                                                (Ward Cunningham),                 (Alistair Cock-
burn),           ,                        (Robert C. Martin aka Uncle Bob),               (Michael
Feathers),          (Ken Auer),                (William Wake),          (Roy Miller),
  (Dave Thomas),          (Andy Hunt),            ,             (Scott Ambler),               (Jim
Highsmith),                  (Joshua Kerievsky),               (Laurent Bossavit),           (John
Brewer)
                   ,                        XP
              .                                 .                        XP
              ,              XP                                       (                  )
                                                    .
                                             (                                         ).
                                                   .
                                                   .
                   .                                             XP                            ,
                                             .                     XP
         .


                                                                                                                             14. Refactor Me
                                                                                                         .
  ’             ’                           ,                                                    .
            (           )                                                .                                                                    -
                                                                                                                                          -
                                        ,
       .                            .                                                                                                             .
                                                                                                                              .
                                                                                                                                  .
                                .           “                                                                    ,                                    ”
                                                .                                                                    .
                    .                                                                                                    .
                                                                               .‘            ’                                            .
                                                            .
                                                                     .                                                                ,                       ,
                                        .                        .




                                                                                        11

Contenu connexe

Tendances

LinhaçA Graos E Sereais 02
LinhaçA Graos E Sereais 02LinhaçA Graos E Sereais 02
LinhaçA Graos E Sereais 02Culinaria Fabula
 
100112 obama reality check (update)-tamil
100112 obama   reality check (update)-tamil100112 obama   reality check (update)-tamil
100112 obama reality check (update)-tamilVogelDenise
 
غولدستون
غولدستونغولدستون
غولدستونetoo_5005
 
שינויי תקנון 2009
שינויי תקנון 2009שינויי תקנון 2009
שינויי תקנון 2009roishlo
 
Pizza cutter multiview
Pizza cutter multiviewPizza cutter multiview
Pizza cutter multiviewmorrison2816
 
100112 obama reality check (update)-telugu
100112 obama   reality check (update)-telugu100112 obama   reality check (update)-telugu
100112 obama reality check (update)-teluguVogelDenise
 
سلسلة بناء وتطوير القدرات إعداد وإدارة الاجتماعات
سلسلة بناء وتطوير القدرات إعداد وإدارة الاجتماعاتسلسلة بناء وتطوير القدرات إعداد وإدارة الاجتماعات
سلسلة بناء وتطوير القدرات إعداد وإدارة الاجتماعاتDr Ghaiath Hussein
 
아버지가 달라지면 아이 인생이 달라진다
아버지가 달라지면 아이 인생이 달라진다아버지가 달라지면 아이 인생이 달라진다
아버지가 달라지면 아이 인생이 달라진다Daegeun Lee
 
Barack obama christian or heathen (tamil)
Barack obama   christian or heathen (tamil)Barack obama   christian or heathen (tamil)
Barack obama christian or heathen (tamil)VogelDenise
 
إثراء بيانات التسجيلة الببليوجرافية / إعداد محمد عبدالحميد معوض
إثراء بيانات التسجيلة الببليوجرافية / إعداد محمد عبدالحميد معوضإثراء بيانات التسجيلة الببليوجرافية / إعداد محمد عبدالحميد معوض
إثراء بيانات التسجيلة الببليوجرافية / إعداد محمد عبدالحميد معوضMuhammad Muawwad
 
Trip to kasargod travalogue
Trip to kasargod travalogueTrip to kasargod travalogue
Trip to kasargod travalogueKiran Thomas
 

Tendances (17)

Car2go
Car2goCar2go
Car2go
 
LinhaçA Graos E Sereais 02
LinhaçA Graos E Sereais 02LinhaçA Graos E Sereais 02
LinhaçA Graos E Sereais 02
 
100112 obama reality check (update)-tamil
100112 obama   reality check (update)-tamil100112 obama   reality check (update)-tamil
100112 obama reality check (update)-tamil
 
غولدستون
غولدستونغولدستون
غولدستون
 
שינויי תקנון 2009
שינויי תקנון 2009שינויי תקנון 2009
שינויי תקנון 2009
 
P13 031
P13 031P13 031
P13 031
 
Pdf111
Pdf111Pdf111
Pdf111
 
Pizza cutter multiview
Pizza cutter multiviewPizza cutter multiview
Pizza cutter multiview
 
100112 obama reality check (update)-telugu
100112 obama   reality check (update)-telugu100112 obama   reality check (update)-telugu
100112 obama reality check (update)-telugu
 
سلسلة بناء وتطوير القدرات إعداد وإدارة الاجتماعات
سلسلة بناء وتطوير القدرات إعداد وإدارة الاجتماعاتسلسلة بناء وتطوير القدرات إعداد وإدارة الاجتماعات
سلسلة بناء وتطوير القدرات إعداد وإدارة الاجتماعات
 
6367
63676367
6367
 
아버지가 달라지면 아이 인생이 달라진다
아버지가 달라지면 아이 인생이 달라진다아버지가 달라지면 아이 인생이 달라진다
아버지가 달라지면 아이 인생이 달라진다
 
Barack obama christian or heathen (tamil)
Barack obama   christian or heathen (tamil)Barack obama   christian or heathen (tamil)
Barack obama christian or heathen (tamil)
 
إثراء بيانات التسجيلة الببليوجرافية / إعداد محمد عبدالحميد معوض
إثراء بيانات التسجيلة الببليوجرافية / إعداد محمد عبدالحميد معوضإثراء بيانات التسجيلة الببليوجرافية / إعداد محمد عبدالحميد معوض
إثراء بيانات التسجيلة الببليوجرافية / إعداد محمد عبدالحميد معوض
 
Trip to kasargod travalogue
Trip to kasargod travalogueTrip to kasargod travalogue
Trip to kasargod travalogue
 
Raffaella Isidori Thesign Portfolio (2010 version)
Raffaella Isidori Thesign Portfolio (2010 version)Raffaella Isidori Thesign Portfolio (2010 version)
Raffaella Isidori Thesign Portfolio (2010 version)
 
The Spokeo case
The Spokeo caseThe Spokeo case
The Spokeo case
 

En vedette

Abstract factory pattern
Abstract factory patternAbstract factory pattern
Abstract factory patternminjin00
 
HolubOnPatterns/chapter3_2
HolubOnPatterns/chapter3_2HolubOnPatterns/chapter3_2
HolubOnPatterns/chapter3_2Vong Sik Kong
 
데브루키 스터디 발표
데브루키 스터디 발표데브루키 스터디 발표
데브루키 스터디 발표dagri82
 
Adapter pattern 한진수
Adapter pattern 한진수Adapter pattern 한진수
Adapter pattern 한진수진수 한
 
스터디그룹 패턴 (A PATTERN LANGUAGE FOR STUDY GROUPS)
스터디그룹 패턴 (A PATTERN LANGUAGE FOR STUDY GROUPS)스터디그룹 패턴 (A PATTERN LANGUAGE FOR STUDY GROUPS)
스터디그룹 패턴 (A PATTERN LANGUAGE FOR STUDY GROUPS)hyun soomyung
 
Command pattern 김우진
Command pattern 김우진Command pattern 김우진
Command pattern 김우진Woo Jin Kim
 
Client dispatcher server_pattern
Client dispatcher server_patternClient dispatcher server_pattern
Client dispatcher server_patternHeo Seungwook
 
[0820 석재호]headfirst디자인패턴
[0820 석재호]headfirst디자인패턴[0820 석재호]headfirst디자인패턴
[0820 석재호]headfirst디자인패턴Jaeho Seok
 
프로그래머의 길,멘토에게 묻다 2장
프로그래머의 길,멘토에게 묻다 2장프로그래머의 길,멘토에게 묻다 2장
프로그래머의 길,멘토에게 묻다 2장hyun soomyung
 
Learn design pattern-1
Learn design pattern-1Learn design pattern-1
Learn design pattern-1Daniel Lim
 
Desing Pattern-2
Desing Pattern-2Desing Pattern-2
Desing Pattern-2Daniel Lim
 
Design pattern 4
Design pattern 4Design pattern 4
Design pattern 4Daniel Lim
 
Oop design principle
Oop design principleOop design principle
Oop design principleRyan Park
 
소프트웨어 아키텍처 문서화
소프트웨어 아키텍처 문서화소프트웨어 아키텍처 문서화
소프트웨어 아키텍처 문서화영기 김
 
예제로 보는 Pattern 연상법
예제로 보는 Pattern 연상법예제로 보는 Pattern 연상법
예제로 보는 Pattern 연상법hyun soomyung
 
취미로 엔진 만들기
취미로 엔진 만들기취미로 엔진 만들기
취미로 엔진 만들기Jiho Choi
 

En vedette (20)

Abstract factory pattern
Abstract factory patternAbstract factory pattern
Abstract factory pattern
 
HolubOnPatterns/chapter3_2
HolubOnPatterns/chapter3_2HolubOnPatterns/chapter3_2
HolubOnPatterns/chapter3_2
 
misspattern
misspatternmisspattern
misspattern
 
Solid
SolidSolid
Solid
 
데브루키 스터디 발표
데브루키 스터디 발표데브루키 스터디 발표
데브루키 스터디 발표
 
Adapter pattern 한진수
Adapter pattern 한진수Adapter pattern 한진수
Adapter pattern 한진수
 
스터디그룹 패턴 (A PATTERN LANGUAGE FOR STUDY GROUPS)
스터디그룹 패턴 (A PATTERN LANGUAGE FOR STUDY GROUPS)스터디그룹 패턴 (A PATTERN LANGUAGE FOR STUDY GROUPS)
스터디그룹 패턴 (A PATTERN LANGUAGE FOR STUDY GROUPS)
 
Command pattern 김우진
Command pattern 김우진Command pattern 김우진
Command pattern 김우진
 
Client dispatcher server_pattern
Client dispatcher server_patternClient dispatcher server_pattern
Client dispatcher server_pattern
 
[0820 석재호]headfirst디자인패턴
[0820 석재호]headfirst디자인패턴[0820 석재호]headfirst디자인패턴
[0820 석재호]headfirst디자인패턴
 
프로그래머의 길,멘토에게 묻다 2장
프로그래머의 길,멘토에게 묻다 2장프로그래머의 길,멘토에게 묻다 2장
프로그래머의 길,멘토에게 묻다 2장
 
Learn design pattern-1
Learn design pattern-1Learn design pattern-1
Learn design pattern-1
 
Desing Pattern-2
Desing Pattern-2Desing Pattern-2
Desing Pattern-2
 
Design pattern 4
Design pattern 4Design pattern 4
Design pattern 4
 
Oop design principle
Oop design principleOop design principle
Oop design principle
 
GoF의 디자인 패턴
GoF의 디자인 패턴GoF의 디자인 패턴
GoF의 디자인 패턴
 
Mvc pattern
Mvc patternMvc pattern
Mvc pattern
 
소프트웨어 아키텍처 문서화
소프트웨어 아키텍처 문서화소프트웨어 아키텍처 문서화
소프트웨어 아키텍처 문서화
 
예제로 보는 Pattern 연상법
예제로 보는 Pattern 연상법예제로 보는 Pattern 연상법
예제로 보는 Pattern 연상법
 
취미로 엔진 만들기
취미로 엔진 만들기취미로 엔진 만들기
취미로 엔진 만들기
 

Similaire à Studyforprogrammer

before traveling
before travelingbefore traveling
before travelingJune Song
 
Designnet > 09/11
Designnet > 09/11Designnet > 09/11
Designnet > 09/11guest787af7
 
United States of America – IMMIGRATION REFORM - TAMIL
United States of America – IMMIGRATION REFORM - TAMILUnited States of America – IMMIGRATION REFORM - TAMIL
United States of America – IMMIGRATION REFORM - TAMILVogelDenise
 
How to-choose-course-after-10th-12th-tamil
How to-choose-course-after-10th-12th-tamilHow to-choose-course-after-10th-12th-tamil
How to-choose-course-after-10th-12th-tamilSuresh A
 
United States of America – IMMIGRATION REFORM - KANNADA
United States of America – IMMIGRATION REFORM - KANNADAUnited States of America – IMMIGRATION REFORM - KANNADA
United States of America – IMMIGRATION REFORM - KANNADAVogelDenise
 
Resident Individual Income Tax Return - EZ
Resident Individual Income Tax Return - EZResident Individual Income Tax Return - EZ
Resident Individual Income Tax Return - EZtaxman taxman
 
Agel ბიზნეს გეგმა
Agel ბიზნეს გეგმაAgel ბიზნეს გეგმა
Agel ბიზნეს გეგმაAgel georgia
 
Sree Datta Navratris History
Sree Datta Navratris HistorySree Datta Navratris History
Sree Datta Navratris HistoryMana Manthani
 
Java Apis For Imaging Enterprise-Scale, Distributed 2d Applications
Java Apis For Imaging Enterprise-Scale, Distributed 2d ApplicationsJava Apis For Imaging Enterprise-Scale, Distributed 2d Applications
Java Apis For Imaging Enterprise-Scale, Distributed 2d Applicationswhite paper
 
My path disappear sugumarje
My path disappear sugumarjeMy path disappear sugumarje
My path disappear sugumarjeCaricaturelives
 
Reforestation Tax Credit
Reforestation Tax CreditReforestation Tax Credit
Reforestation Tax Credittaxman taxman
 
Clear Channel Outdoor Media Planning Guide
Clear Channel Outdoor Media Planning GuideClear Channel Outdoor Media Planning Guide
Clear Channel Outdoor Media Planning GuideRomulus Stoian
 
OE 43 no confidence against nirman samiti of mandvi hostel
OE 43  no confidence against nirman samiti of mandvi hostelOE 43  no confidence against nirman samiti of mandvi hostel
OE 43 no confidence against nirman samiti of mandvi hostelSatpanth Dharm
 
Underestimate of Tax
Underestimate of TaxUnderestimate of Tax
Underestimate of Taxtaxman taxman
 
Spirit Miami Beach Korean
Spirit Miami Beach KoreanSpirit Miami Beach Korean
Spirit Miami Beach KoreanMySoBe.com
 
Telugu Blog Book (తెలుగు బ్లాగు పుస్తకం)
Telugu Blog Book (తెలుగు బ్లాగు పుస్తకం)Telugu Blog Book (తెలుగు బ్లాగు పుస్తకం)
Telugu Blog Book (తెలుగు బ్లాగు పుస్తకం)praveengarlapati
 

Similaire à Studyforprogrammer (20)

before traveling
before travelingbefore traveling
before traveling
 
Designnet 09/11
Designnet 09/11Designnet 09/11
Designnet 09/11
 
Designnet > 09/11
Designnet > 09/11Designnet > 09/11
Designnet > 09/11
 
United States of America – IMMIGRATION REFORM - TAMIL
United States of America – IMMIGRATION REFORM - TAMILUnited States of America – IMMIGRATION REFORM - TAMIL
United States of America – IMMIGRATION REFORM - TAMIL
 
How to-choose-course-after-10th-12th-tamil
How to-choose-course-after-10th-12th-tamilHow to-choose-course-after-10th-12th-tamil
How to-choose-course-after-10th-12th-tamil
 
United States of America – IMMIGRATION REFORM - KANNADA
United States of America – IMMIGRATION REFORM - KANNADAUnited States of America – IMMIGRATION REFORM - KANNADA
United States of America – IMMIGRATION REFORM - KANNADA
 
Resident Individual Income Tax Return - EZ
Resident Individual Income Tax Return - EZResident Individual Income Tax Return - EZ
Resident Individual Income Tax Return - EZ
 
Agel ბიზნეს გეგმა
Agel ბიზნეს გეგმაAgel ბიზნეს გეგმა
Agel ბიზნეს გეგმა
 
Sree Datta Navratris History
Sree Datta Navratris HistorySree Datta Navratris History
Sree Datta Navratris History
 
Java Apis For Imaging Enterprise-Scale, Distributed 2d Applications
Java Apis For Imaging Enterprise-Scale, Distributed 2d ApplicationsJava Apis For Imaging Enterprise-Scale, Distributed 2d Applications
Java Apis For Imaging Enterprise-Scale, Distributed 2d Applications
 
My path disappear sugumarje
My path disappear sugumarjeMy path disappear sugumarje
My path disappear sugumarje
 
Reforestation Tax Credit
Reforestation Tax CreditReforestation Tax Credit
Reforestation Tax Credit
 
Clear Channel Outdoor Media Planning Guide
Clear Channel Outdoor Media Planning GuideClear Channel Outdoor Media Planning Guide
Clear Channel Outdoor Media Planning Guide
 
OE 43 no confidence against nirman samiti of mandvi hostel
OE 43  no confidence against nirman samiti of mandvi hostelOE 43  no confidence against nirman samiti of mandvi hostel
OE 43 no confidence against nirman samiti of mandvi hostel
 
Crown mustang ct 2001 r
Crown mustang  ct 2001 rCrown mustang  ct 2001 r
Crown mustang ct 2001 r
 
Underestimate of Tax
Underestimate of TaxUnderestimate of Tax
Underestimate of Tax
 
052412 Tamil
052412   Tamil052412   Tamil
052412 Tamil
 
Spirit Miami Beach Korean
Spirit Miami Beach KoreanSpirit Miami Beach Korean
Spirit Miami Beach Korean
 
Telugu Blog Book (తెలుగు బ్లాగు పుస్తకం)
Telugu Blog Book (తెలుగు బ్లాగు పుస్తకం)Telugu Blog Book (తెలుగు బ్లాగు పుస్తకం)
Telugu Blog Book (తెలుగు బ్లాగు పుస్తకం)
 
P13 033
P13 033P13 033
P13 033
 

Dernier

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Dernier (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Studyforprogrammer

  • 1. ? . / , , .‘ ’ . , . / . , , , (Extreme Programming XP) . , . . ( ) ( ) . . , . , . ( ) . 1. . , , . “ !” . . ‘ ’ . ‘ ’ . . . , , , ? . , ‘ ’(construct) ( . (Jean Piaget) , MIT ). , . . ? . ‘ ’ ‘ ’( , ) ? ? , . . ,“ , , ?” . ‘ ’ , . ?
  • 2. 2. , . (pseudo-code) . (C, ) (LISP, Scheme, Haskell), ( , ) . . . . , ‘ ’ ‘ ’ , , , . , . , . 1. 2. 3. 4. (correctness) . . , . .” ?” . . ‘ ’ . . . . . . , “, ” . , ‘ ’ . . , , . (ad hoc) . . , . . . , . . . , . . 3. . . , (concrete) (abstract) . . ‘be- to- ’ 2
  • 3. . ( ) , ACM ICPC(International Collegiate Programming Contest: ) . “ ” . , , . 4. , . . . (E. W. Dijkstra) (N. Wirth) ’ ’(Stepwise Refinement) . Program Development by Stepwise Refinement (1971, CACM 14.4, http://www.acm.org/classics/dec95) . ( ’goto ’ ). Stepwise Program Construction (Selected Writings on Computing: A Personal Perspective, Springer-Verlag, 1982,http://www.cs.utexas.edu/users/EWD/ewd02xx/EWD227. PDF . . . . (loop invariant) . . . (Udi Manber) ( Introduction to Algorithms: A Creative Approach ) . . A Discipline of Programming (Gries) The Science of Programming . . . 5. . ‘ ’ . (Robert Floyd) (The Paradigms of Programming, 1978) . . . . . ‘ ’ . , . . . , , ? . . . ‘ ’ . , , . . .‘ ’ . (Robert W. Floyd) 1978 . , . , . (insight) . . , . . . . . (learn) (unlearn) . 3
  • 4. (George Polya) How to Solve it : , . . . ACM ICPC . , .“ . . ?” . , . . , , . . CLR(Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson, and Ronald L. Rivest) . (Jon Bentley) Programming Pearls . . . . 6. , 2001 11 . OOP . . DP RF . , . DP . RF (Bad Smell) . RF . . . . GoF . ( ) ( ) ( ) . . ? ‘ ’ . , . ( ) GoF . 7. , (Mechanics: ) . (Code Smell) - . , . . . . . TDD(Test Driven Development) . , . , ( ) . , 4
  • 5. . . . , . . , ‘ ’ . , . ‘ ’ . . ( ) ( ) . . . OAOO(Once And Only Once: ) . OAOO - . ‘ ’ . - . 3 ( 3 ) . . , . 1. : 2001 11 2. : ( ) . . 3. OAOO : OAOO , . . . GoF . 4. (Law of Demeter) : . ? 5. (Pair) : . , . , , 3 . . 6. ‘ ’ ‘ ’ : . ? , . (Collaborative Learn- ing) . , . , . . . (Tacit Knowledge) . , , , , , , . . . . (Apprenticeship) . . . , . . . (Jean Lave, Etienne Wenger) Situated Learning : Legitimate Peripheral Participation . . . . , ( ) . . , . . . . . . 2001 12 XP . ,‘ ’ ( ) ‘ ( ), ( ), ( )’ . ? 5
  • 6. . . , . 8. ‘ ’ . . . • , . • . . • . . ‘ ’ . • . , . • . (Toy Prob- lem) . (Christopher Alexander, ) . . The Timeless Way of Building ? . . , . . , , . (Betty Edwards) Drawing on the Right Side of the Brain . . . . . 1000 , . .“ ! !” . . ‘’ . 9. , . . . . “ ” . ,” ! , !” , . (Lev Vygotsky) . , . 6
  • 7. ’ . . ’’ . , ’ ’ , . . , . . , , (GoF ) . . . GoF (Ralph Johnson) . [GoF] , [ ] . . . . . . 10. . . . .‘ + + ’ , ‘I love you’ ‘I hate you’ . , . . DP . , . GoF (John Vlissides) . , GoF . . GoF . . ! (immerse) . . . . . . . . . GoF . . , DP DP . ’ ’ . . , “ ” . GoF 7
  • 8. , ” . ‘ ’ . , (Joshua Kerievsky) A Learning Guide To Design Patterns http://www. industriallogic.com/papers/learning.html . Knowledge Hydrant http://www.industriallogic. com/papers/khdraft.pdf . . LG2DP( A Learning Guide To Design Patterns ) DP . DP . . sorry remorseful . . (Proximal Learning) . . LG2DP . . , , , . , . 11. GoF DP . . DP . . , DP . Smalltalk Best Practice Patterns . . . . OAOO . (Overengineering) , . Stop Over-Engineering! (Software Development Magazine, Apr 2002, http://www.sdmagazine.com/documents/s=7032/sdm0204b/0204b. htm . . 1980 . , , . (James Coplien) . (representation) . , . ‘ ’ . . , C++ , . ‘ ’ ( (Javarian) . (barbarian) ). ‘ ’ Diversify http://www.research.ibm.com/people/v/ vlis/pubs/gurus-99.pdf . ’ ’ . (implementation) (intent) , . DP GoF Design Patterns Smalltalk Companion . . ( ), . , ., . . ‘ ’ . “ ” . 8
  • 9. 12. . • Design Patterns Explained (Shalloway, Trott): DP • Design Patterns Java Workbook (Steven John Metsker): DPE . . • Refactoring (Martin Fowler): DP ( ) • Design Patterns : . • Design Patterns Smalltalk Companion : GoF DPSC • Pattern Hatching (John Vlissides): DP . . • Smalltalk Best Practice Patterns (Kent Beck): . . . • Pattern Languages of Program Design 1,2,3,4: • Pattern-Oriented Software Architecture 1,2: .2 . • Concurrent Programming in Java (Doug Lea): . • Patterns of Software (Richard Gabriel): . • Analysis Patterns (Martin Fowler): . . • A Timeless Way of Building (Christopher Alexander): . .‘ ’(‘ ’ The Nature of Order ). • A Pattern Language (Christopher Alexander): . • Problem Frames (Michael Jackson): DP (solution) . . DP , DPE DPJW RF RF ( . , ). GoF DPSC . . SBPP . DP SBPP . POSA PLOPD . . . ( “ ” ). ‘ ’ . , , . .“ ” . , . ‘OOP ’ ‘ ’ . . . . . . 9
  • 10. XP Explained XP . XP . XP XP . XP , . . ‘ ’ , XP . (XP , ‘ ’ ). 13. XP ( 2001 12 XP ). • XP Explained (Kent Beck): XP • XP Installed (Ron Jeffries et al): C3 , • Planning XP (Kent Beck, Martin Fowler): ( , ) • Refactoring (Martin Fowler): • XP Applied : • XP Explored : XP XPI XPX . XPE (2001 11 ). . • The Timeless Way of Building : . (On-site Cus- tomer), (Piecemeal Growth), (Communication) . • XP in Practice (Robert C. Martin ): XP . ( ). • XP Examined : XP • Peopleware (Tom DeMarco): • Adaptive Software Development (Jim Highsmith): . . • Surviving Object-Oriented Projects (Alistair Cockburn): OO • Software Project Survival Guide (Steve McConnell): SE . • The Psychology of Computer Programming (Gerald M. Weinberg): . (Egoless Programming) . • Agile Software Development (Alistair Cockburn): • Software Craftsmanship (Pete McBreen): • Agile Software Development with SCRUM (Schwaber Ken): (Scalability) XP+SCRUM . • A Practical Guide to eXtreme Programming (David Astels ): . . XPP . • Agile Modeling (Scott Ambler): , . • Agile Software Development Ecosystems (Jim Highsmith): . 10
  • 11. Test Driven Development (Kent Beck): ( ) TDD . TDD XP (TDD ) • IEEE Software/Computer, CACM, Software Development Magazine • XP Conference, XP Universe ( ) • , , http://c2.com , , . , ( 10 , 20 . ). , (Ron Jeffries), (Ward Cunningham), (Alistair Cock- burn), , (Robert C. Martin aka Uncle Bob), (Michael Feathers), (Ken Auer), (William Wake), (Roy Miller), (Dave Thomas), (Andy Hunt), , (Scott Ambler), (Jim Highsmith), (Joshua Kerievsky), (Laurent Bossavit), (John Brewer) , XP . . XP , XP ( ) . ( ). . . . XP , . XP . 14. Refactor Me . ’ ’ , . ( ) . - - , . . . . . . “ , ” . . . . .‘ ’ . . . , , . . 11