본문 바로가기

기타/객체지향 토막글

진입장벽이 높다는 것

무언가를 배울때 진입장벽이 높다는 것은 두가지 경우가 있다. 하나는, 배우고자 하는 대상이 조잡하여 배우는 진입장벽도 높고 배운 결과물도 안 좋은 경우이다. 


영업력 90 기술력 10프로로 계약을 성사, 어이없게도 SI할때 완성된 솔루션을 공급하는게 아니라 SI 할때 같이 개발을 시작하고 SI 개발자들을 베타테스터로 만드는 엉터리 솔루션을 만드는 업체들의 제품이 여기에 해당한다.


처음부터 조잡하게 설계되어 사용법도 조잡한 경우로 마치 짝퉁 제품들과 같다. 


하나는, 배우고자 하는 대상이 고도의 지식과 노하우가 쌓인 고급 지식이라 배우는 진입장벽이 높고 대신 진입장벽을 넘으면 배움의 혜택을 보는 경우이다.


자동차 운전면허와 비행기 조종면허의 차이점의 예를 들 수 있다. 자동차 운전면허는 보통 사람이 적당한 이론과 실기를 배우면 대부분 합격한다. 기술이라기 보다는 기능에 가까운것이 운전이다.


비행기 조종은 고도의 조종 기술을 익힌다. 보통 사람을 뛰어넘는 신체 능력, 항공 지식, 조종 실력이 있어야 비행기 조종 면허를 취득한다. 만약 비행기 조종을 익히는데 하나라도 부족한 능력이 있으면 탈락한다.


대신 힘들게 비행기 조종 면허를 취득하면 그 만큼의 혜택을 본다. 자동차 운전자 보다 월등히 빠르게 먼길을 이동한다. 자동차 운전자 보다 월등히 많은 월급을 받는다.


예를들면~ 객체지향도 마찬가지이다. 객체지향이 진입장벽이 높은 것은높은 수준의 지식과 노하우가 쌓인 고도의 사고력을 요구하기 때문에 진입장벽이 높다. 


대신 이 진입장벽을 넘으면 보통 주변에서 보는 손 가는대로 하나의 클래스에 덕지 덕지 전역 변수 선언하고 if  문 for문 남발하는 개발자와는 달리 유연하고 확장성이 좋은, 높은 품질의 개발을 할 수 있고 설계와도 관련 있어 좋은 소프트웨어를 설계할 수 있다.