관리 메뉴

nkdk의 세상

object, Component, FrameWork 본문

My Programing/My IT Consuldent

object, Component, FrameWork

nkdk 2008. 3. 19. 22:54

3가지에 대해서 적절한 예를 들어 설명 합니다.

Object (부품:칩)

- 컴퓨터 부품과 비교된다.

- ex) CPU, 트랜지스터, 다이오드, 프로펠러, 모터, 납, 기판, I/O칩, RAM 칩, RAM 기판, 케이스, 콘덴서, 전선 등등...

- 재사용성: 모든 부품 재사용 가능하다. 꼭 컴퓨터가 아닌 여러 전자 제품에서 재사용할 수 있다.

- 조립난이도: 전문가의 손길이 필요.조립 속도 가장 늦다.

- 시스템 안정성: 약간의 납땜 및 장착 실수가 시스템에 악영향을 미친다.

- 디버깅: 오류 발생시 어디서 왜 발생했는지 찾는데 시간이 많이 든다.



Component (반제품:보드)

- CPU, 컴퓨터의 랜카드, VGA카드, 메인보드, 모듈램 등 반제품 상태

- ex) 랜카드, VGA카드, 모듈램, 메인보드, 파워서플라이, 케이스, CPU 팬, HDD 등등...

- 재사용성: 재사용하기가 부품보다는 수월하지만 재사용의 범위가 컴퓨터 제품 만드는 영역에 한정된다.

- 조립난이도: 부품을 직접 납땜질하는거 보다는 수월. 수퍼사용자 정도면 조립가능. 부품 땜질하는것 보다는 조립속도 빠르다.

- 시스템 안정성: 부품을 직접 납땜질하는거 보다는 제품 완성 후 안정성이 훨씬 좋다.

- 디버깅: 제품의 오류 발생시 보드 단위로 교체하면서 테스트 할 수 있고, 아예 보드 단위로 테스트 되어서 나왔을 것이다.

- 이때 중요한것, Component 단위로 조립한다고 해서 낱개의 부품을 전혀 안쓰는것은 아니다. 위의 예처럼, CPU를 사용하지 않는가!

  즉, Component 기반 개발이라도 클래스와 적절히 썪어서 조립한다는 것이다.


Framework (거의 완제품:베어본)

- 베어본 기반 시스템과 유사. 거의 완제품 상태

- ex) 베어본, CPU, HDD, ODD, RAM 모듈 등등...

- 재사용성: 재사용하기가 컴포넌트 보다야 훨씬 쉽지만, 재상용의 영역이 훨씬 좁아진다.

- 조립난이도: 일반 사용자라면 누구라도 쉽게 조립할 수 있다. 조립속도 가장 빠르다.

- 시스템 안정성: 어느정도 메인보도와 파워서플라이, 케이스 등등 가장 적합한 상태로 미리 조립되어져 있어서 보드 단위로 직접 조립하는것 보다 훨씬 안정성이 뛰어나다. 괜히 파워서플라이를 몇 와트로 해야하는지 고민할 필요가 없다. 단지, 특정 부분만 사용자가 추가하면된다. CPU, 모듈램, HDD, ODD 등.

- 디버깅: 조립의 절차가 훨씬 간결하기 때문에 오류 발생을 검사하기 쉽다.

물론 이렇게 보면 프레임워크만 쓰면 되겠네라고 하겠지만, 프로그래밍은 그것보다는 약간 더 손을 봐 줘야 한다. 소비자에게 맞게끔 칩도 바꿔 끼워야 하고 콤포넌트도 바꿔주어야 한다. 물론 이걸 잘 활용해야 한다^^