초보였던 나와 내가 알던 많은 개발자들, 나아가 고객도 객체지향으로 얻는 효과에 대해 크게

알지 못하고 관심도 없었다. 이들의 관심분야는 하나로 모아졌다.

 

소프트웨어의 온전한 기능구현, ‘기능구현이란 고객의 요구사항을 소프트웨어로 고스란히 구현하는 것이다. 기능 구현은 개발자의 당연한 임무이다. 사실은 기능 구현외에 중요한 것이 있고 같이 챙겨야 것이 있다. 그러나 많은 개발자들은 오직 기능 구현 관점만 신경 쓴다. 개발자들은 주어진 요구사항을 어떻하든 구현하여 돌아가게만 하자~! 이것이 가장 관심사이다.

 

나는 신입이었을 실력 있는 개발자로 빨리 인정받고 싶었다. 문제가 주어지면 문제를 빠르고 버그 없이 구현하고 싶었다. 예를 들어 게시판에 답글 달기, 페이징 기능을 구현하라는 지시를 받으면, 나는 수단과 방법을 가리지 않고 기능을 구현하는데 집중했다. 이렇게 기능 구현에 우선 순위를 두었다. 마치 물에 빠졌을 개헤엄이라도 해서 빠져 나오는 것처럼, 상황을 본능적으로 해결하는 방법이다.

 

우리는 주변에서 개발 경력 3 이상이 중급자를 많이 본다. 중급자는 크게 두가지로 나눌 있다. 하나는 중급자 또한 소프트웨어의 기능 구현만 우선순위를 두는 경우다. 기능 구현이란 목표를 위해 코드 품질(=소프트웨어의 유연함) 크게 신경 쓰진 않는다. 다른 중급자는 객체지향이 좋은지 알고 소프트웨어의 유연성도 염두를 한다. 그러나 대부분의 우리나라 프로젝트는 일정 압박이 심하다. 그러니 중급자도 결국 기능 구현 중심으로 치우친다. 사실은 나도 워낙 바쁘다보니 이런 개발자가 되기도 했다. 주변에서, 어떠한 사항에서도 객체지향적으로 우아하게 개발하는 개발자는 10명중에 1명도 보기도 힘들었다. 이렇게 중급자 또한 원래 개발 스타일이 기능 중심 적이거나 열악한 개발 환경 때문에 결국 기능 구현 중심으로 개발하게 된다.

 

프로젝트 현장에는 개발을 의뢰한 고객이 있다. 고객은 개발자보다 기능 구현 중심적이다. 고객은 원하는 기능이 구현되면 만족한다. 고객은 전제 조건을 하나 붙인다. 최대한 빨리 구현해라~! 대부분의 고객은 원하는 기능이 빠른 시간내 구현 되면 만족한다. 그래서 고객은 최대한 빨리 기능 구현라는 목표를 달성하기 위해 개발자를 압박한다. 개발자는 기능 구현 중심적으로 작업할 수밖에 없다.



덧글) 기존 원고보다 원고 품질을 몇배 높여야 해서 많은 내용을 다시 작성하고 있습니다. 내용에 대해 궁금한점은 댓글 주세요.~


Posted by 산골
산골 블로그 소개 저는 하얀머리 개발자와 작가를 꿈꾸는 블로거 산골 입니다. 프로그램 개발자로서 저의 관심사는 개발자의 숨통을 트여준 아이폰 개발, 철학과 같은 깊이가 있는 객체지향 방법론입니다. 글쓰기와 수영을 좋아합니다. 블로그를 통해 관심사를 공유합니다. 제 블로그에 관심 있으시면 아래 RSS나 즐겨찾기로 편하게 구독하세요.

rss Bookmark and Share

댓글을 달아 주세요

  1. intermediate 2018.07.25 21:34 신고  댓글주소  수정/삭제  댓글쓰기

    쓰시는글 흥미롭게 보고 있습니다. 그럼 출간일은 올해말보다 더 늦춰지는건가요? 지금까지 작성하신 글 보면 흔치않은 좋은서적이 출간될 것 같군요.

    • BlogIcon 산골 2018.07.26 22:38 신고  댓글주소  수정/삭제

      아 피드백 감사합니다.~ 원고 마감은 8월 말이고.. 차질 없으면 올해 말즈음 나올것 같습니다.~
      격려 감사합니다.~
      제가 글을 자주 올려야 할텐데요.~
      근데 이전보다는 자주 올리겠습니다.~!~