[클린코드 JS] 01. 클린코드를 고민해야 하는 이유

Serin-B·2023년 6월 14일
0

클린코드JS

목록 보기
1/15
post-thumbnail

돌아가는 코드가 가장 좋은 코드라고 생각하던 시절이 있었다. 지금도 많이 부족한 햇병아리 개발자이지만, 더 좋은 개발자이자 동료가 되기 위해 하루라도 빨리 클린 코드를 작성하는 좋은 습관을 기르고자 공부를 시작했다. 이 글이 나와 같은 사람들에게 도움이 되길 바란다...!

왜 클린코드를 고민해야할까?

하나, 나쁜 코드는 나와 팀의 생산성을 떨어트리기 때문이다!
나쁜 코드를 읽고 해석하는데 걸리는 시간과 노력, 추후 유지보수 할 때 나쁜 코드를 고치려고 애쓰는 시간과 노력은 결코 적지 않다. 또한 나쁜 코드를 고치기 위해 더 나쁜 코드를 쓰게 되는 경우가 많은데, 시간이 지날수록 그 프로젝트에는 계속 나쁜 코드가 쌓이게 된다.

둘, "나중에 리펙토링해야지..." 에서 나중은 오지 않기 때문이다!
프로젝트 초반에 빠르게 개발하기 위해 대충 코드를 짜고 나중에 리팩토링하겠다고 다짐하지만, 그 나중은 오지 않는다. 모든 코드를 갈아엎겠다는 원대한 프로젝트를 시작하더라도, 그 프로젝트가 현재 돌아가는 프로젝트를 완벽하게 따라 잡는데 걸리는 시간과 노력은 굉장히 크다.

👉 나와 우리 팀의 생산성을 높이고, 미래의 나와 팀을 위해 우리는 클린 코드를 고민하고 지향해야 한다!


클린코드란?

그렇다면 클린 코드란 무엇일까? 클린 코드 책에서는 유명한 프로그래머들의 의견을 소개하고 있는데, 그 중 하나는 아래와 같다.

- 그래디 부치(Grady Booch)
"클린 코드는 단순하고 직접적이다. 클린 코드는 잘 쓴 문장처럼 읽힌다. 클린 코드는 설계자의 의도를 숨기지 않는다. 오히려 명쾌한 추상화와 단순한 제어문으로 가득하다."

이외에도 클린 코드란...

  • 세세한 사항까지 꼼꼼하게 처리하는 코드
  • 한 가지에 집중하여 그 한 가지를 잘 하는 코드
  • 다른 사람이 읽기 쉽고, 고치기 쉬운 코드
  • 읽으면서 짐작한 대로 돌아가는 코드
  • 의미와 의도가 분명한 코드

라고 여러 프로그래머들이 소개한다. 이렇게 다양한 정의들을 읽고 내가 생각하는 클린 코드에 대해서도 정의해보면 아래와 같다.

"클린 코드란 단순하고 작은 단위로 작성되어 한 번에 잘 읽히는 코드이다."

개인적으로 클린 코드의 핵심은 '잘 읽히는 코드'라고 생각한다. 클린 코드를 지향하는 가장 중요한 이유는 나의 의도를 잘 설명하고, 다른 사람들과 원활하게 소통하기 위해서라고 생각하기 때문이다. 정답은 없으니 이 글을 읽고 있다면 나만의 클린 코드에 대해 정의를 내려보면 좋겠다.

마지막으로, 클린 코드는 아는 것이 아니라 실천하는 것이다. 실천되지 않는 마음은 아무런 힘이 없다. 그렇다면 어떻게 클린 코드를 작성할 수 있을까?

오늘 클린 코드에 대한 WHY WHAT 을 살펴보았다면, 이어지는 시리즈에서는 HOW 즉, "클린 코드를 작성하는 방법"에 대해 다뤄보려고 한다. 함께 고민하고 실천해보자!


내가 정말 좋아하는 명언 중 하나를 소개하며 클린코드 JS의 첫 게시글을 마친다.

Great things are not done by impulse, but a series of small things brought together.

위대한 업적은 단 번에 이루어지는 것이 아니라, 일련의 작은 일들이 모여 만들어지는 것이다.

- van gogh

위대한 그 어떤 것도 작은 것들이 쌓여서 만들어진다는 것을 기억하자. 별 것 아닌 것 처럼 보이는 나쁜 코드들은 코드 습관들이 조금씩 쌓이면 마침내 멋진 코드들을 만들어낼 수 있을 것이다!

참조

  • 도서 Clean Code(클린 코드) / 로버트 C. 마틴 / 2013.12.24.
  • Udemy 강의 클린코드 자바스크립트 / Poco Jang / 2023. 5.
profile
프론트엔드 개발자

0개의 댓글

관련 채용 정보