프레임워크를 활용한 개발의 장점

by HeuJung


개발 | Posted on Mon, Nov 5, 2018 4:47 PM
1

나는 약 10년 간 Legacy PHP 개발자였다.

개인 홈페이지(제로보드)와 블로그(Tattertools)를 운영하며 해당 솔루션의 코드를 보고 프로그래밍을 독학하였기 때문에 프로그래밍의 기초를 모른 상태에서 프로그래밍을 했다.

당연히 소프트웨어 공학, 디자인 패턴 등 고급 기술에 대한 지식이 전무하였고, 이는 점차 개발 경력이 쌓일 수록 나를 붙잡는 족쇄가 되었다.

Legacy PHP로도 충분히 개발은 가능하다. 전 회사에서도 Legacy PHP로 개발을 잘 했다. 그리고 잘 동작하게 만들 수 있다. 보안 취약성도 Parameter를 필터링하고 특수문자를 필터링해서 잘 해결 했다.

하지만, 가장 큰 문제는 직장인 개발자에게 요구되는 핵심 역량인 "협업"이 불가능하다는 것이다.

객체지향 프로그래밍을 하고 프레임워크를 도입하는 이유가 여기에 있다. 회사는 나 혼자 일하는 곳이 아니기 때문에 반드시 협업을 해야 한다. 하지만 "나만의 세상에 갇힌" 코드로 개발을 하게 되면 동료나 후임자가 그 코드를 이해하는데 "비용"이 크게 발생한다. 남이 작성한 코드를 봐야하는 일 자체가 달갑지 않은 일인데 듣도 보도 못한 스타일의 코드를 해석하자면 고문이 따로 없을 것이다.

이것을 해결하는 것이 "프레임워크"이다. 프레임워크는 개발자에게 코드 스타일, 설계의 표준을 어느 정도 강제하고 이를 따르도록 만든다. 해당 프레임워크를 학습하는데 초기 비용이 발생하지만, 그 프레임워크가 어느 정도 인지도가 있고 생태계에서 영향력이 있다면, 그 프레임워크를 사용하는 개발자를 쉽게 채용할 수 있을 것이고 해당 프레임워크 개발자만 채용한다면 쉽게 업무 인수인계를 할 수 있다는 장점이 있다.

물론 프레임워크에서 강제하는 코드 스타일과 표준은 개발자 개인에게도 역량 개발의 기회가 될 수 있으며, 프레임워크가 제공해주는 편의 기능과 Helper 등은 개발 생산성을 향상시켜준다.

어떤 프로그래밍 언어를 배우고자 한다면 해당 언어에서 가장 널리 쓰이는 프레임워크를 공부하는 것이 좋은 학습법이라고 할 수 있겠다.

Develop Framework Legacy PHP 제로보드 Tattertools 협업


Leave a Comment:
류하은 1 day ago Edit Delete Reply
<p>대학원 친구가 나에게 '카드깡으로 현금 필요할 때 유용하다'고 추천해줬다. 처음에는 무슨 뜻인지 모르겠어서 의아했지만, 아는 친구들에게 물어보니 정확히 알게 됐다. 카드깡이란 현금이 부족할 때 신용카드를 이용해 현금을 받아주는 서비스였다. <a href="https://zkemgusrmaghk.dothome.co.kr/">카드깡</a> 그러면서 카드사로부터 현금서비스 수수료를 받는 것이며, 일반적으로 고금리로 부담스러운 서비스로 알려져 있었다. 하지만 나는 다르게 카드깡을 활용하기로 했다. 대학원생활이 어려운 점은 자금 관리인 것 같았다. 한 달 말기에는 항상 현금이 부족했고, 카드깡을 통해 현금을 빌릴 때마다 친구들에게 이용 후기를 곧잘 듣게 됐다. <a href="https://creditdkk-dox220lldi.netlify.app/">카드 현금화</a> 내가 선택한 방법은 카드깡을 통해 받은 현금을 가장 빨리 상환하고, 이자를 최소화하는 것이었다. 이러한 방식 덕분에 카드깡을 통한 현금서비스를 유용하게 활용할 수 있었다. 이렇게 카드깡을 적절히 활용하며 나의 현금 관리를 보다 효율적으로 할 수 있었다. 카드깡의 잘못된 인식을 고쳐 나만의 방식으로 이용해오면서, 주변 친구들에게도 이 방법을 소개하고 다니며 서로 현금 관리에 도움이 되고 있다. 앞으로도 카드깡을 효율적으로 이용해 나 자신의 자금을 보다 <a href="https://cardcredit-site-go65.netlify.app/">신용카드 현금화</a> 더 지혜롭게 관리해야겠다. 현금이 필요할 때, 카드깡은 빠르고 편리한 대안이 될 수 있음을 깨달았다.</p>