본문 바로가기
좋은 개발자가 되기위한 방법들/객체지향

Clean코드 작성하는 3가지 원칙(코드 잘짜는법)

by chief_sac 2021. 7. 7.
반응형

1. DRY - Don't Repeat Yourself(반복하지마라)

똑같은 일을 두번 하지 않는다 중복되는 함수나 코드는 하나의 공통의 컴포넌트에 넣고 사용한다. 큰 시스템을 여러 조각으로 나누고 서로 참조한다.

  • 장점 : 복잡도를 낮출수 있고 개발 및 유지보수 비용이 절감된다
  • 반대 되는 단어로는 WET
    'Write Every Time' 매번 작성하고
    'Write Everything Twice' 모든걸 두번 작성하고 'Waste Everyone's Time' 으로 사용되는데 반복되어 정리되어있지 않은 코드는 모두의 시간을 낭비하게 만든다라는 뜻입니다

즉, 드라이는 특정한 지식이나 의도, 로직등이 다양한곳에서 다양한 형태로 계속 반복되는 걸 피하자로 생각하면 될것같습니다.

2. KISS - Keep It Simple, Stupid

심플하고, 멍청하게 유지하자!

  • 장점 : 가독성을 증가 시킬 수 있고 협업에서 업무를 조정하는데 있어서 좋다, 별도에 주석이 없어도 문제없을정도로 하는것이 좋다(함수명, 변수명)
  • 시스템은 대부분 복잡하기 보다는 심플할 경우에 제일 잘 동작한다 그러므로 소프트웨어를 디자인 할때에 간단하고 단순하게 가 주 목표가 되어야하고 불필요한 복잡성은 피해야 한다!
  • KISS원칙은 다양한 곳에서 적용할 수 있는데 그중에서 코드를 작성할때 열줄 코드를 한줄코드로 만들 때에 화려한 테크닉으로 가독성을 떨어뜨리는 것 보다는 누가봐도 알아볼수 있도록 작성하는것이 좋다!

다양한 곳이란 함수, 매개변수, 단일class ,UI로직용 view, 하나의 업무를 담당하는 담당하는 Service

3. YAGNI – You Aren’t Gonna Need it(너 그거 필요없어)

필요하지 않는 기능, 사용하지 않는 기능, 지나치게 미래 지향적인 확장적인 코드를 만들지 말자

  • 장점: 정확한 기능을 잘 구현하면 비용절감이 발생할 수 있다. 유지보수가 용이하다
  • 현재기능만 동작하도록 코드를 아무렇게 작성하지말고 깨끗하고 변경이 쉽게 유지보수가 용이하도록 시스템에있어 불필요한 복잡성을 더 하지 않는 내에서 코드를 작성하자는 이야기입니다!

코드를 잘짜는 개발자가 되기위해서

반복하지말자! 간단하고 단순하게! 지나친 것은 언제나 독이된다! 정도로 저는 정리되는 것 같습니다

반응형