객체지향에 대한 생각

2016. 12. 8. 13:09일상

반응형

실무에서 코딩을 하다보면 객체지향과 관련된 생각을 하게 된다.

개발과 유지보수를 해오면서 느꼈던 생각을 적어보고자 한다.


개발을 할 때는 객체지향, 재사용이라는 개념이 밑바탕이 되어서 설계한다.

개발을 시작할 때는 코드의 유틸기능이 있는 로직은 재사용한다. 보통 실무에서 고급 개발자가 중급, 초급 개발자의 개발 편의성을 위해서 만들어 놓는 공통모듈 작업일 것이다. 여기까지는 좋다. 이후에 중급 혹은 초급 개발자 2명 이상이 비슷한 부분을 작업한다고 했을 때 기능상 거의 차이가 없는 비슷한 로직들을 단독 로직으로 처리하게 된다. 하나의 기능에 하나의 로직만 존재하는 것이고 결국 재사용이 가능한 부분에서 전혀 재사용이 되지 않는 것이다. 이런 이유는 의사소통의 부재와 효율적인 업무 분담의 실패가 요인일 것이다.

의사소통의 부재역시 코드의 중복을 야기시키겠지만 개발에서 선행되는 업무분담이 불완전하다면 단추를 삐뚫어지게 채우는 시발점이 되는 더 중요한 요인이 될 것이다. 개발할 기능 중 비슷한 기능끼리 묶어서 한사람에게 부여한다면 이런 불운한 상황을 피하면서 충분히 재사용되고 효율적인 코드를 작성할 수 있을 것이다. 


유지보수를 하면서 하나의 기능에 하나의 로직만 존재하는 경우를 많이 본다. 아주 간단한 수정을 위해서는 이런 로직이 편하게 느껴질 수 있다. 갈림길 없는 곧은 길을 앞만보고 따라가다 보면 결국 종착지가 나오기 때문이다. 하지만 좋아 보일 뿐이다. 출발만 하면 종착지에 도착하는 일은 쉽겠지만 본래의 목적지가 아닌 다른 곳으로 가고자 한다면 길을 처음부터 하나 새로 만들어야 한다. 처음부터 길을 만들때 갈림길이 존재하는, 복잡해 보이지만 수정과 재사용이 용이한 길로 설계한다면 우리는 목적지가 기존과 다른 곳이라 할지라도 쉽게 갈 수 있을 것이다. 물론 갈림길에 이정표가 있어야하고 이정표를 이해할 수 있는 지식이 있으면 더욱 좋다.


사실 객체지향은 너무나 많이 들어서 진부할 정도지만 개발자들에게 끊임없이 질문을 던지는 아주 중요한 요소이다. 아마 객체지향향만큼 중요한 패러다임이 있을지언정 객체지향보다 더 중요한 개발의 패러다임은 내 생애 존재하지 않을 것 같다. 

반응형

'일상' 카테고리의 다른 글

자바스크립트  (0) 2016.12.08
네이버 웨일 초대장 나눔  (1) 2016.12.08
2016년 12월의 첫째 날을 시작하며  (0) 2016.12.01
램노스 Lemnos 크림 치즈  (0) 2016.11.27
블로그 시작  (0) 2016.11.27