사상 - 프로그래밍 이데올로기
UNIX 철학
대화형 인터페이스 회피
구속적 인터페이스라고도 하는데 이렇게 되면 사용자도 머신도 소프트웨어에 구속당한다.
- 소프트웨어별로 독자적인 대화 방법을 기억해야 된다.
- 소프트웨어끼리 대화 할수 없다.
- 대기 시간이 많아진다.
- 입력부분에 대한 해석 코드가 많아지고 흉해진다.
- 큰것이 아름다운 접근법으로 변질된다.
필터화
소프트웨어를 필터로 설계 한다. 모든 소프트웨어는 입출력이다.
표준입출력을 사용하자
10개의 작운정리
- 환경 커스터마이즈
- 작고 가벼운 커널
- 소문자 사용
- 자연 보호
- 침묵은 금
- 병렬 사고
- 부품 협력
- 90%의 해
- 열등해야 뛰어나다
- 계층 지향
관점 - 프로그래머가 보는 시각
응집도
응집도란 모듈에 포함된 기능의 순수함을 나타내는 척도로 모듈의 강도를 측정하는 단위이다.
응집도란 7단계이다.
- 압합적 강도 - 우연히 요소가 일치한다.
- 논리적 강도 - 어떤기능을 추상적으로 파악해서 모은것이다.
- 시간적 강도 - 특정시점에 연속해서 실행되는 여러 개의 기능을 하나의 모듈로 모은것
- 순서적 강도 - 순서적인 관련성이 있다.
- 연락적 강도 - 순서적 강도의 특성을 가지면서 데이터를 교환하거나 참조한다.
- 정보적 강도 - 특정 정보를 다루는것을 하나의 모듈로 묶은것
- 기능적 강도 - 기능적 강도 모듈은 모듈내의 모든 명령이 하나의 역활을 실행 하기 위해 서로 관련된 모듈
섞여 있는 모듈은 깨지기 쉽다.