웹개발 및 최신 테크 소식을 전하는 블로그, 웹이즈프리

HOME > webdevetc

레거시 함수, 레거시 코드란 무엇인가?

Last Modified : 2017-11-23 / Created : 2017-11-23
26,347
View Count
개발과정에서 레거시 함수, 레거시 코드라는 말을 자주 볼 수 있다. 이번에 이 용어를 정리해보고자한다. 먼저 Legacy Code란 무엇이고 언제 어떻게 사용하는가?



# 레거시(Legacy Code)코드란 무엇인가?

사전적 의미에서 보면 유산, 산물이 된 코드라고 해석된다. 즉 누군가 떠나면서 남겨둔 코드임을 날 수 있다. 개발에서 사용되는 legacy라는 용어는 은어처럼 사용되는 부분과 기술적인 부분에서 사용되는 것 두 가지로 구분되는 것 같다. 후자는 특히 OS관련되어 불려지고 여기서는 개발에서 흔히 사용되는 레거시 코드 또는 함수를 알아보려한다.

아래에서는 레거시 코드, 레거시 함수 비슷하므로 함께 표현하되 용어는 레거시 코드로 통일하여 적어보았다. 먼저 레거시 코드라는 말은 더 이상 쓰기 힘들거나 화나게 만드는 코드를 일컫는다. 화나게 만드는 코드라... 부정적인 표현의 용어임에 틀림없다. 이런 코드는 아래와 같은 경우에 해당한다.

  • 다른 코드와의 개연성을 무시한 채 Due Date만 맞춰 작성한 코드
  • 코드의 종속성... 디펜던시를 낮추는 노력이 1도 없는 코드
  • 코맨트 등을 전혀 남기지 않아 더 수정, 보완 등이 어려운 코드
  • 기능 단위의 함수 나아가 모듈 자체가 지나치게 큰 코드

위와같이 몇 가지로 예를들어보았다. 사실 이런 기존의 코드들을 상속받아 개발을 이어 나가야하는 개발자의 어려움을 레거시 코드라는 용어를 사용함으로써 나타낼 수 있다하겠다.


# 마치면서

코드는 계속되어야한다... Deprecated 전 까지...
다시말하면 개발 코드는 개선, 보완되어야한다. 다음 버전으로 배포, 릴리즈되면서 기능 향상 등의 개선점들이 반영되어야하는데 이를 고려하여 코딩, 개발하는 것은 사실 쉽지 않은 일이다... 여기서 개발자의 역량이 나타나는데 개발을 잘 한다라는 의미가 속도가 빠르다라는 말과는 또 다르게 사용되어야할 것 이다.

! "개발을 잘한다"는 말은?

빠른 개발보다는 실제 운영함에 있어 에러 및 버그 등이 없어야하고 만약 발생하더라도 작은 단위의 코드 수정만으로 해결할 수 있는 코드, 개발이 진짜 잘하는 개발이라 하겠다... 코드의 단위가 전체 코드에 전혀 영향을 주지 않는 의존성이 낮은 코드 일수록 진정한 실력자임을 말해주는 것이다.
아래의 글도 찾고 계시지 않나요?

    Previous

    블로그 또는 웹사이트 글을 Facebook에 올리기

    Previous

    Facebook Comment 사용방법 및 알림 설정하기