Hyunseok
현재 사이트는 2024년 11월 이후로 업데이트 되지 않습니다. 새 글은 블로그로 확인해주세요. 블로그로 이동
프로그래밍/팀프로젝트 [팀프로젝트 외전] SQL, 효과적인 데이터 처리
2022. 9. 12. 10:38

현재 사이트는 2024년 11월 이후로 업데이트 되지 않습니다. 새 글은 블로그로 확인해주세요. 블로그로 이동

며칠 전에 팀 프로젝트 코드를 보다 주먹도끼로 뒤통수를 맞은 느낌이 든 코드를 보았다

 

내가 짠 건 아니고.. 팀원분이 짠 코드인데 

 

이유를 설명하기 전에 내가 코드를 작성하는 법을 대충 적자면

 

1. 프론트단에서 필요한 데이터를 생각함

2. 레포지토리+sql구조가 어떻게 되어있는지 확인함

3. 각 레포지토리에서 정보를 가져오고 서비스에서 조합을 함

4. 조합한 코드를 하나의 오브젝트로 만들어 프론트단에 보냄

 

대충 이러하다 그런데 내가 뒤통수를 한 대 맞았다고 하는 건..

 

3번이 다르다, 

 

3. 각 레포지토리에서 > sql에서 조인으로 가져와서 한방에 서비스에 보냄

 

별 거 아니다고 생각할 수도 있지만 데이터가 만개 오만 개 십만 개 늘어나는 상황을 가정하면

 

어린아이라도 조인문으로 sql에서 한 번에 가져오는 것이

 

네트워크 간의 통신도 최소화시킬 수도 있고 

후처리에 필요한 시간도 줄일 수 도있고

코드도 더 짧아지는 것 

 

이라는 것을 알 수 있다 

 

아침에 비몽사몽 하면서 pull request 들어온 코드는 하나하나 쭉 읽다가 

 

그 문제가 되는 코드 부분만 한 20분 보면서 생각이 많아졌다 

 

"아, 이렇게 짜야하는데"

"아, 진짜.. 와.. 하 ;; "

 

그리고 내 코드들을 봤다

 

다수의 코드들은 한 테이블에서 들고 와서 그냥 where문으로 끝내 놓은 코드지만

몇몇의 코드를 보며 

 

"아 이 쓰레기 코드 ㅠㅠ 조인으로 들고 오면 3배는 짧아졌겠다" 하면서 한 시간 동안 한탄을 했다

 

여하튼, 이제 최대한 코드를 효율적으로,

빠르게, sql + 서버 + 프론트 가 나누어진 이유를

더욱더 생각하면서 코드를 짜야겠다 라는 생각을 했다

 

강사님이 "팀 프로젝트 때 실력이 많이 상승한다"라는 말을 해주셨는데 그게 맞는 말인듯하다

 

실제로 나 혼자 공부했으면 이런 코드를 볼 수도 없었을 것이고..

그전에 이런 코드를 보고 이런 생각을 할 수 있을 만큼 성장을 할 수 있었을까 라는 생각도 든다 

 

팀원분에게 감사한다, 종종 항상 내 생각의 틀을 깨 주고 좋은 코드를 보여주니.. 행복할 따름이다

 

 


프로그래밍/팀프로젝트의 다른 글