코드 재사용: 두 판 사이의 차이

내용 삭제됨 내용 추가됨
편집 요약 없음
편집 요약 없음
16번째 줄:
재사용을 빠르고 용이하게 하기 위해 프로그래밍 정식 절차의 일부로서 보다 체계적으로 실시할 수 있도록 하는 연구가 많이 이루어져 왔다. [[객체지향 프로그래밍]]도 그러한 목적에서 만들어진 것으로 정식화된 재사용기법으로서 일반화되었다. 같은 목적으로 후에 개발된 것으로서 [[제네릭프로그래밍]]이 있다.
 
한층 더 새로운 수단으로서 [[자동프로그래밍자동 프로그래밍]]이 있다. 이것은 프로그램이 사용자가 설정한 일련의 변수에 근거하여 어떤 종류의 프로그램을 생성하는 것이다.유사한 개념으로 [[메타 프로그래밍]]도 있다.
 
== 재사용의 형태 ==
; 편의적 재사용(opportunistic reuse)
: 프로젝트를 시작할 때 재사용가능한 컴퍼넌트가 있는지를 찾아보고 재사용한다.
; 계획적 재사용(planned reuse)
: 컴퍼넌트를 차후에 재사용가능하도록 전략적으로 설계해 나간다.
 
편의적 재사용은 다음으로 더 세분화할 수 있다.
; 내부 재사용(internal reuse)
: 팀내에서 만든 콤포넌트를 재사용한다. 어디까지나 편의상이며 계획적인 것이 아니기 때문에, 인터페이스의 조정 등에 추가적인 비용이 발생할 수 있다.
; 외부 재사용(external reuse)
: 서드파티에서 만든 콤포넌트를 구하여 사용한다. 유상인 경우, 조달비용을 자신이 직접 개발할 때 드는 비용의 20% 이하로 잡는 것이 일반적이다. 또, 조달한 콤포넌트를 학습하여 활용하는데 걸리는 시간도 고려해야 한다.
 
[[분류:소프트웨어 공학]]