Abstraction   추상화

(2016-12-07)
1. 추상화 (Abstraction)

  ㅇ 실세계의 복잡한 상황을 간결하고 명확하게 단순화/일반화/개념화 ↔ 구체화
     - 이를 통해 모델링을 할 수 있게 됨

  ㅇ 일반적으로, 추상화란 보통의 사람들이 이해할 수 있는 언어나 그림으로 표현하게됨


2. 추상화 과정  

  ㅇ 통상 구체적인 사항은 되도록 생략하고 핵심이 되는 원리만을 추구함
     - 추상화를 통해 모델링되어 나타난 추상적 모델은, 
        . 그후에 구체화(구현) 과정을 거쳐 프로그램,컴퓨터 내부언어 등으로 변환하게 됨


3. 추상화 방법의 종별

  ㅇ 일반화 (Generalization)
  ㅇ 집단화 (Aggregation)
  ㅇ 연관화 (Association)
  ㅇ 전문화 또는 세분화 또는 상세화 (Specialization)


4. [프로그래밍]  추상화프로세스(제어/연산)의 추상화 (Procedural Abstraction)
     - 복잡한 실행 절차를 하나로 묶어 단순화시키는 것
        . 例) 부프로그램(함수) 등

     - 과거 초창기 고급 프로그래밍언어부터 도입된 제어 추상화 例로는,
        . 반복문,조건문,부프로그램 등이 있음
           .. 이들은 상황에 따라 프로그램 실행 경로/순서를 수정하는 성질을 추상화시킨 것

  ㅇ 데이터(자료)의 추상화        (Data Abstraction)
     - 여러 자료형을 하나로 묶어 단순화하는 것
        . 例) 사용자 정의 자료형으로써 구조체(Structures) 등

  ※ 위 둘을 하나로 묶음 => 추상 자료형 (Abstract Data Type, ADT)
     - `자료` 및 `연산`을 모두 하나의 단위로 묶고, 
     - 외부로부터 내부 자료를 함부로 접근 못하게함
        . 이를두고, 캡슐화(Encapsulation) 또는 정보은닉(Information Hiding) 라고도 함

  ㅇ 한편, 프로그래밍 의도를 추상화시켜 컴퓨터에 전달하는 도구는, => 프로그래밍 언어 참조


[공통/유사어(ㅂ~ㅊ)]1. 분해능 (resolving power)  2. 불확정성 (uncertainty)  3. 상관성 (correlation)  4. 상호 운용성 (IOP)  5. 스크램블 (scramble)  6. 여기 (excitation)  7. 이동성 (mobility)  8. 인터페이스 (interface)  9. 입도 (granulaity)  10. 재사용성 (reusability)  11. 접두사 (prefix)  12. 척도 (scale)  13. 추상화 (abstraction)  
  1.   기술공통
    1.   공통/유사어(ㄱ~ㅁ)
    2.   공통/유사어(ㅂ~ㅊ)
    3.   공통/유사어(ㅋ~ㅎ)
        1. 컨텍스트 (context)
        2. 클래스 (class)
        3. 클러스터 (cluster)
        4. 타이머 (timer)
        5. 태그 (tag)
        6. 트리거 (trigger)
        7. 파이프 덕트 튜브 관로
        8. 파라미터 (parameter)
        9. 포화 (saturation)
        10. 프로세스 (process)
        11. 프로토타입 (prototype)
        12. 플랫폼 (platform)
    4.   단순기술용어
  2.   기초과학
  3.   파동/광학/음향
  4.   방송/멀티미디어/정보이론
  5.   전자/전기/제어
  6.   통신/네트워킹
  7.   정보기술(IT)
  8.   기계/재료/공업일반
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     모바일웹     참고문헌