min

[항해 99 클론코딩 주차 1일차] 본문

TIL

[항해 99 클론코딩 주차 1일차]

minprogramming 2023. 7. 24. 23:41

<회고록>

오늘은 프로젝트를 시작하는 주만큼 내가 처음에 준비해야 할 것들이 많았다. 그래서 나는 오늘 내가 협업을 하면서 주관적으로 내가 필요했다고 느껴졌던 부분들에 대해서 설명을 하려고 한다.

 

1. 코드 컨밴션

코드 컨밴션은 협업을 하는 데 있어서 내가 가장 중요하다고 생각했다. 우리는 프로그래머다. 프로그래머는 코드를 읽고 , 코드를 작성하기 위해서 생각하는 사람이다. 즉 코드와 아주 밀접한 관계가 있는 사람이다. 근데 만약에 다른 사람과 협업을 할 때 서로의 변수명이 다 다르다면 어떨 것인가? 만약 개발자가 코드를 읽기 어렵다면 어떨 것인가? 이는 엄청난 비용과 유지보수의 힘든 점들을 가져올 것이다. 즉 변수명 하나로 인해서 이렇게 까지 큰 스노우 볼이 굴러올 수 있다. 그래서 우리는 사전에 변수명 , 파일명 , 깃허브 커밋 메시지 등을 맞추고 시작을 했다. (그렇다고 해서 순조롭게 진행되지는 않았다....)

 

2. 폴더 구조

코드 컨밴션 다음으로 중요한 것은 폴더 구조라고 생각한다. 가장 좋은 폴더 구조는 다른 사람들이 이해하기 쉬운 구조다. 즉 화려하거나 멋진 구조가 좋은 구조가 아니라 큰 프로젝트에서도 끄떡없고 다른 사람들이 폴더 구조를 파악하는데 굉장히 쉬운 구조가 가장 좋은 폴더 구조다. 이 뿐만 아니라 폴더 구조로 인해서 내가 원하는 코드가 어디에 있는지를 파악하는 시간도 단축될 뿐만 아니라 이와 관련한 유지보수 비용도 줄어든다. 그래서 우리는 사전에 폴더 구조에 대해서 많이 생각해보고 더 좋은 폴더 구조가 있는지 없는지에 대해서 정말 많이 생각하며 결국엔 기능 중심 즉 도메인 중심의 폴더 구조를 잡았다.

 

3. 레이아웃 파악 

마지막으로 가장 중요한 것은 레이아웃 파악이라고 생각한다. 만약 레이아웃을 파악하지 않는다면 불필요한 코드는 정말 빠르게 불어날 것이고 이로 인해서 결국엔 쓸데없는 비용이 발생한다. 이 뿐만 아니라 내가 큰 그림을 그리지 못한다면 장기적으로 보았을 때 좋은 프론트 개발자가 되기 어렵다. 그래서 나는 가장 먼저 한 작업이 코드 컨밴션과 레이아웃 파악이었다. 왜냐하면 레이아웃 파악은 오래 걸리는 만큼 정말 고도의 집중과 많은 시간이 필요하다. 그래서 가장 먼저 레이아웃과 코드 컨밴션을 파악했고 이를 가지고 코딩을 이어나가니 정말 코딩이 잘되는 기분을 느낄 수 있었다.