급한 성격상 일단 코드부터 두둘기면서 개발을 시작했는데, 이게 개발에 정말 안좋은 습관이란 걸 깨달았다..
이런 생각을 들게 해준 발단
카카오 developer 문서 보면서 OAuth 로그아웃을 구현하는데 문서보면서 무작정 따라 했다.
문제가 문서를 제대로 안보고 따라해서 계속 오류를 마주침.....
예를 들어서 쿼리 파라미터로 들어가야하는 값이 body로 들어가서 계속 잘못된 요청이라고 떳다. 이걸 해결 못해서 1시간 동안 삽질했다.
회고해보면 내가 이렇게 해서 허비한 시간만 합쳐도 1년도 넘을 것 같다. 대학교 1학년부터 지금까지 개발할 때 이런식으로 했으니까...
깨달은 점
개발하기 전에 어떻게 개발할지 흐름이라도 작성하자.
나무를 보지말고 숲을 보라는 말이 있듯이 개발도 똑같이 적용된다고 생각한다... 코드 빨리 짜고 싶어서 무작정 시작하면 전체 흐름을 놓치고 하나씩 나사가 빠지기 마련이다.
개발하기 전에 한번 더 생각해보고, 어떤 흐름으로 구현해야할지, 어떤 예외가 있는지부터 파악하는게 개발의 시작이라고 깨달았다.
그리고 개발자를 "사회문제를 해결하는 해결사" 라고 생각하는데 이 관점에서 보면 무작정 코드를 작성하는 것보다 지금 나타나는 문제를 해결하기 위해 어떤 방법이 있는지 살펴보고, 여러 방법 중 어느 것을 선택해야 문제를 해결할 수 있는지 고민하는게 더 중요하다고 생각했다.
위 말을 개발자스럽게 변형하면
문제를 해결하기 위한 기술을 많이 있고, 그 중 어떤 기술을 사용하면 사용자에게 최고의 해결책(유저 경험)을 제공할 수 있는지 고민하는 것
앞으로 노력할 점
위와 같은 개발자가 되기 위해서 생각 정리하는 시간을 더 많이 가져야한다.
개발을 시작하기 전에 간략한 흐름이라도 작성하고, 거기서 발생하는 문제를 최대한 생각해보는 것이다.
서비스 전체 흐름을 작성하기 어렵다면 기능별로 작성해보자.
"서비스에서 로그인이 동작하는 흐름" 이런식으로 기능별로 분류해서 작성하다 보면 패키지 구조나 클래스를 어떻게 구성해야 SOLID원칙을 지킬 수 있는지도 떠올릴 수 있을 것이다.
흐름을 정리하는 것은 서비스가 제대로 동작하게 하기 위한 중요한 과정이고, 개발하면서 오류를 마주치는 확률을 줄일 수 있는 방법이라 생각한다.
'ETC' 카테고리의 다른 글
[회고] 막학기부터 지금까지 (2024.09 ~ 2025.04) (1) | 2025.04.22 |
---|