Module, Modularity   모듈, 모듈화, 모듈성

(2017-11-13)
1. 모듈 이란?

  ㅇ 일반적으로, 본체(本體)에서 분리되어 작은 부분으로 유기적으로 구성되어 있다가,
     - 필요할 때 본체에 합류하여 그 기능을 수행할 수 있는 것

  ㅇ 통상적으로,  
     - 모듈은 그 자체로 하나의 완전한 기능을 수행할 수 있는 독립된 실체를 의미
        . 例) 각기 다른 여러 모듈 단위로 조립하여 전체를 완성해 나가는 등 (모듈 조립)

     - 표준화된 부품


2. 문제를 다룰 때 모듈화 이란?

  ㅇ 모듈화는, 거대한 문제를 작은 조각의 문제로 나누어 다루기 쉽도록 하는 과정
     - 여기서, 작게 나누어진 각 부분을 모듈이라고 함
        . 각 모듈은 논리적 또는 기능적으로 분리되어 격리되고 독립적인 일을 수행

  ㅇ 모듈화 과정 잇점
     - 기본적인 것을 엮어서 복잡한 형상으로 짜맞추고, 이를 요약하여(간추리어) 이름을 짓는 등,
       더 높은 수준으로 만들어가면서, 큰 눈으로 시스템을 구조적으로 바로볼 수 있게 함


3. 모듈의 특성

  ㅇ Unity (한가지 일만 수행)
  ㅇ Smallness(간단명료)
  ㅇ Simplicity(단순성)
  ㅇ Independency(독립성) 등


4. 모듈화 장점

  ㅇ 수정 용이
  ㅇ 재사용성 용이
  ㅇ 유지관리 쉬움

  ※ 이때, 모듈간 호환성 고려 필요 => 표준화가 중요


5. 모듈화 및 캡슐화 비교

  ㅇ `구조적 프로그래밍 기법에서의 모듈화`와 `객체지향 프로그래밍 기법에서의 캡슐화`는
     유사한 의미를 갖으나, 
     - 캡슐화는 잘 설계된 모듈에서 나오는 특성을 주로 의미함


[프로그래밍 기타일반] 1. 구조적 프로그래밍 2. 절차식 프로그래밍 3. 모듈 4. 프로그램 5. 부 프로그램/함수 6. 래퍼 함수 7. 핸들 8. 화일 끝 9. 콜백 10. 플러그인 11. 연산자
  1.   기술공통
  2.   기초과학
  3.   파동/광학/음향
  4.   방송/멀티미디어/정보이론
  5.   전자/전기/제어
  6.   통신/네트워킹
  7.   정보기술(IT)
        1. 정보기술
    1.   전산기초
    2.   컴퓨터구조
    3.   프로그래밍
      1.   프로그래밍 언어론
      2.   객체지향
      3.   자료구조
      4.   알고리즘
      5.   자료표현(알파벳/코드)
      6.   시스템 프로그래밍
      7.   프로그래밍언어 종류
      8.   프로그래밍 기타일반
        1.   1. 구조적 프로그래밍
            2. 절차식 프로그래밍
            3. 모듈
            4. 프로그램
            5. 부 프로그램/함수
            6. 래퍼 함수
            7. 핸들
            8. 화일 끝
            9. 콜백
            10. 플러그인
            11. 연산자
    4.   데이터베이스
    5.   소프트웨어 공학
    6.   운영체제
    7.   정보보호/보안
    8.   IT 기타기술
  8.   기계/재료/공업일반
  9.   표준/계측/품질
  10.   기술경영

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