Component Based Development 방법론이다. 개발 방법론은 여러가지가 있다. 컴포넌트 기반으로 개발을 한다는 것이다. 컴포넌트는 무엇일까?
프로그램의 기본 단위는 함수라고 할 수 있다. 함수도 어떤 기능을 한다. 모듈이 있다. 모듈도 기능을 하는 것인데, 함수들의 집합이다. 함수들이 어떤 순서로 동작이 되면서 기능을 하는 것이다. 모듈은 꽤 큰 기능을 표현할 때 사용한다. 결제 모듈, 화면 모듈 서버 모듈, 이런식의 표현을 사용쓴다. 그리고 모듈들을 여러개 모이되 주제를 기반으로 모인 것을 컴포넌트라고 한다.
컴포넌트는 꽤 큰 주제인데, 이 아래 여러개의 모듈이 있을 수 있다. 컴포넌트 베이스 개발 방법론의 취지는 주제별로 독립적으로 개발을 하고 서로 다른 컴포넌트 간의 상관 관계를 줄이자는 취지이다. 컴포넌트간에 연관이 없을 수는 없다. 소위 말하는 Loosely Coupled 이다. 연관관계를 줄이는 것이다.
왜 연관관계를 줄이려고 할까요?
프로그램에서 모듈간의 연관관계가 가지는 의미는 연관이 많이 되어 있다는 것은 한 모듈을 수정했을 때 연관되어 있는 모듈에 영향을 미칠 확률이 높아진다는 의미이다. 그리고 독립적이지 못하다는 것이죠. 독립적이지 못하다는 것은 디펜던시가 있다는 것인데, 타 모듈과 연동시 또다른 고려사항이 생길 경우가 많아진다는 의미이다. 그래서 최대한 그 모듈이 스스로 동작될 수 있도록 하는 것이 좋고, 영향도를 줄이는 것이다. 그럼으로써 컴포넌트가 다른 곳에서도 사용이 용이하게 해주는 것이다.
컴포넌트 개발 방법론의 철학 정도이고, 컴포넌트 개발방법론은 이렇게 컴포넌트를 기준으로 개발을 하고, 최대한 모듈화하고, 컴포넌트 하는 것이다. 재사용성을 높이고, 유지보수성을 높이자는 차원이다.
책처럼 전체를 보기를 원하시면 아래 링크를 클릭하시고 북마크 하셔서 보시면 편리합니다.
'쉽게 풀어본 IT 기술 ' 카테고리의 다른 글
애자일 방법론, 방법론 테일러링 (0) | 2018.09.01 |
---|---|
플랫폼! 기차 기다리는 곳이 플랫폼 (0) | 2018.09.01 |
DevOps는 시너지이다. (0) | 2018.08.31 |