SW의 재사용 방안

2021. 9. 19. 17:22벡엔드 개발 공부

우리가 코드를 짜다 보면 반복적으로 사용하게 되는 코드의 양이 상당하다는 것을 깨닫게 된다. 요즘은 여러가지 방법으로 코드를 재사용할 수 있도록 만들었지만 옛날에는 코드를 일일이 다 짜줘야 해서 아주 피곤한일이 반복되었다. 그러면 어떻게 코드를 재사용할 수 있게 변해왔는지 확인해보자.

 

1. Copy and Paste

첫 시작은 말 그대로 복사 붙여넣기였다. 학교 시스템을 개발하는 프로그램을 짠다고 생각해보면 각 선생님들과 수업에 대한 코드는 상당히 겹칠 가능성이 크다. 하지만 이때는 별도의 방법이 없어 그저 복사해서 붙여 넣기를 해주었다. 일단 코드를 복사 붙여넣기 하는 것도 귀찮을 뿐더러 코드를 수정하는 일이 생기면 일일이 모든 코드들을 수정해주어야하니 생각만 해도 복잡하다. 

 

2. Method

그래서 함수라는 개념이 나왔다. 함수를 통해 우리는 코드를 반복적으로 작성하는 일이 훨씬 줄어들었다. 더군다나 수정사항을 한번에 적용할 수 있다는 장점도 있다. 하지만 한가지 문제가 있다. 이 함수를 수정하면 모든 코드들이 영향을 받기때문에 수정이 필요없는 방면에도 적용이 된다. 

3. Class

그래서인지 class 의 inheritance(상속)개념은 부모, 자식이 나누어져있어 몇몇 자식들에게만 수정사항을 적용할 수 있을 뿐더러 반복되는 코드는 부모class에 적용할 수 있게 되었다. 지금으로도 많이 편리하지만 문제가 온전히 해결된것은 아니다. 부모class를 변경하면 또 자식 class에도 영향을 끼치기 때문이다.

 

4. AOP

Aspect Oriented Programming은 OOP(객체지향)프로그래밍을 지원해주면서 좀더 OOP스럽게 사용할 수 있게 해준다.

그리고 절차적 프로그래밍에도 적용할 수 있다. 

 

참고

https://tacademy.skplanet.com/live/player/onlineLectureDetail.action?seq=88

'벡엔드 개발 공부' 카테고리의 다른 글

프레임워크의 구성요소  (0) 2021.09.19
OOP 객체지향 프로그래밍(Object Oriented Programming)  (0) 2021.09.13
ORM에 관해서  (0) 2021.07.25
데이터베이스(2)  (0) 2021.07.18
프레임워크와 라이브러리  (0) 2021.06.15