• Like
  • Save
Reflection
Upcoming SlideShare
Loading in...5
×
 

Reflection

on

  • 1,432 views

 

Statistics

Views

Total Views
1,432
Views on SlideShare
1,296
Embed Views
136

Actions

Likes
0
Downloads
8
Comments
0

2 Embeds 136

http://scor7910.tistory.com 134
http://www.hanrss.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Reflection Reflection Presentation Transcript

    • REFLECTION ARCHITECTURE PATTERN 아 . 꿈 . 사 스터디 그룹 ( http://cafe.naver.com/architect1 ) 발표 : 김연기 ( SCOR7910.TISTORY.COM )
      • 소프트웨어 시스템의 구조와 동작을 동적으로 변경할수 있는 메커니즘 제공 .
      REFLECTION ARCHITECTURE PATTERN
    • REFLECTION ARCHITECTURE PATTERN
    • REFLECTION ARCHITECTURE PATTERN
    • REFLECTION ARCHITECTURE PATTERN
      • Context : 원하는 기능이 동적으로 수행이 되는 시스템을 구축해야 한다 .
      • Problem :
        • 기존 코드를 수정하는데 귀찮다… ( ㅡ _ ㅡ ;;)
        • 복잡하고 변경이 잦은 코드를 분리하여 시스템의 복잡성을 감춰야 하는데 귀찮다 ...
        • 그냥 귀찮다 !!!
    • REFLECTION ARCHITECTURE PATTERN
      • Solution : 동적으로 오브젝트가 스스로 구조와 동작을 알아서 할 수 있도록 한다 .
    • REFLECTION ARCHITECTURE PATTERN
      • 메타 오브젝트 : 기본 레벨의 구조 , 동작 , 상태 중 한 측면 (Aspect) 를 선택해 그 정보를 캡슐화 ( 은닉 ) 한다 .
      • 메타레벨 : 오브젝트의 구조와 동작에 대해 자체 설명 (Self Representation) 제공 .
      • 기본 레벨 : 메타 객체를 이용하여 동작 로직을 정의 한다 .
    • REFLECTION ARCHITECTURE PATTERN Structure
    • REFLECTION ARCHITECTURE PATTERN Dynamic : Base Level 과 Meta-Level 동작 예
    • REFLECTION ARCHITECTURE PATTERN Dynamic :Metaobject Protocol 동작 예
    • REFLECTION ARCHITECTURE PATTERN implementation
      • Application 의 모델을 정의 한다 .
      • 변경 되는 동작 정의 .
      • 변경 되지 않는 동작 정의 .
      • 변경 되거나 되지 않는 동작의 구조적 제약에 상관없는 시스템 서비스 정의 .
      • Meta Object 정의 .
      • Meta Object Protocol 정의 .
      • 기본 레벨 정의 .
    • REFLECTION ARCHITECTURE PATTERN 장 / 단점
      • 변경이 쉽다 .
      • 다양한 종류의 변경을 지원한다 .
      • 메타레벨에 수정을 가할 경우 문제가 발생할 수 있다 .
      • 속도가 느려진다 . (C++ virtual table).
      • 잠재적인 모든 변화를 지원할 수 없다 .
      • 모든 언어가 Reflection 을 완벽히 지원하지 않는다 .(C++ 는 타입식별만 지원 )
    • REFLECTION ARCHITECTURE PATTERN 참고 자료
      • http://www.vollmann.com/pubs/meta/meta/meta.html
      • http://www.garret.ru/cppreflection/docs/reflect.html#introduction