블로그 이미지
Max.

calendar

        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

Notice

2008.02.12 10:44 이전글(~2009)
특히 오래된 소스코드를 보면 한숨이 나올때가 많다. 잘 구조화 되었있지도 않고, 여기 저기 땜빵용 소스코드도 많고, 변수명 규칙도 찾아 볼수 없으며, 심지여는 의도적으로 어렵게 희안한 변수명을 기술한 코드도 많다. 체계적으로 관리한다는 회사에서도, 솔루션 하나에 억대가 넘는 소스코드에서도 이런 코드를 발견할때도 있다. 그래서 어느정도 기술력이 있는 관리급 개발자 출신(꼭 개발자 출신이 아니더라도 소스코드에 대한 확고한 믿음이 없는 사람들)들은 이런말을 자주한다.
'도대체 이런 코드로 어떻게 혁신적인 신기술을 접목시킬수가 있겠어? 다시 처음부터 새로운 페러다임으로 아키텍처를 수립하고 최신기술과 방법론으로 우리 솔루션을 만들어 봐'


이런 생각은 소프트웨어 산업이 생긴 이래로 줄기차게 개발자들과 관리자들은 현혹시키는 은총알 같은 말이다. 참 멋지게 들리기는 하지만 대부분 실패한다.(외국에서도 이런 사례가 많다고 한다.- 서적 : 초난감 기업의 조건 참조 - 넷스케이프,볼랜드) 그 이유에 대해서 조엘 스폴스키가 인터뷰한 내용을 간단히 요약해 본다.

'코드는 완전히 다시 만든다고 해서 기존보다 버그가 더 줄어든다는 보장이 없고 오히려 더 늘어나는 것이 자연스러운 현상이다. 기존코드는 이미 사용되어 지고 있고, 그만큼 수많은 버그와 테스트를 통과한 가장 적절한 코드이다.
(말리고 싶지만...)정말로 완전히 다시 아키텍처를 구성해야 하는 필연적인 상황이라면, 최대한 기존소스를 활용해야 한다.'


내 생각에도 기존소스를 활용하는것이 비지니스측면이나 개발측면으로나 합리적일것이라 생각한다. 만약 기존소스가 정말 미칠정도로 엉망이라면, 개발자가 선택할수 있는건 땜빵용 소스를 리팩토링 하는것 정도일 것이다.(리팩토링이 그래서 중요하다는걸 느끼는...) 어느정도 완성된 솔루션 제품을 아키텍처 부터 새로 만든다는것은 기존의 기술 노하우를 무시해버리겠단 말이 되지 않을까? 사실 완전히 확 뒤집을 만큼 혁신적인 신기술은 존재하지도 않고 기대치 만큼 효과적이지도 않는다건 이미 잘 알고 있는 일인지도 모른다.(자~알 생각해봐 - 모회사 카드 광고를 생각하며...)

이런 생각은 최근에 나에게 위와같은(다시만들기) 문의(?)가 들어와서 생각을 적어 봤다.(아...위험한 발언...-_-;; )
신고

'이전글(~2009)' 카테고리의 다른 글

2008년 JCO 컨퍼런스와 자바인의 밤 다녀오다.  (14) 2008.02.18
찜한 아파트  (12) 2008.02.12
처음부터 다시 만들기(과연...)  (0) 2008.02.12
Spring JMS 기본예제-2  (6) 2008.02.11
Spring JMS 기본예제-1  (6) 2008.02.04
Spring OSGi 학습하기 좋은곳은?  (7) 2008.01.29
posted by Max.

티스토리 툴바