앞선에서 다루었던 Data Abstraction입니다. https://coding-leaf.tistory.com/156 Data Abstraction - 데이터 추상화 데이터 추상화에 대해서 알기 위해 먼저 추상화를 알 필요가 있다. 추상화(abstraction)는 여러가지 필요한 부분, 중요한 부분을 하나로 만드는 것을 말한다. 그 예로, 동그란 원에 숫자가 12개까지 coding-leaf.tistory.com Template Method Pattern Superclass의 method로 일반적으로 abstract superclass이며, 수많은 상위 단계의 관점에서 연산의 뼈대(골격)을 정의합니다. Abstact keyword를 사용하여 empty implementation을 만듭니다. abstrac..
Generic Component(재사용 가능한 component) 소스 코드를 수정하거나 사소한 변경없이 다양한 컨텍스트에서 확장(extended), 조정(adapted) 및 재사용(reused)할 수 있는 프로그램 구성 요소. 객체 간 기능을 공유한다. Refactoring이란? 반복되는 코드를 계속 사용하는 것이 아니라, 하나의 generic component로 만들어서 계속 사용하게 코드를 바꾸는 것이다. refactoring를 하면, 가독성을 높이고 유지보수를 쉽게 할 수 있게 도와준다. Generalizing - 일반화 유사한 문제의 범주에 대한 특정 해결책의 재구성 Refactoring 과정 다양한 위치에서 중복 코드 세그먼트 식별 중복 logic을 generic component로 캡처 반복..