본문 바로가기
Codepresso

SW 유지보수성 향상을 위한 Clean Code 강의노트

by 선의 2022. 2. 9.

SW 유지보수성 향상을 위한 Clean Code

코드의 품질

시각이 다 다름

계속 개선해야 함

그래서 Clean Code란?

이해하기 쉽고 변형하기 쉬운

사람이 읽고 이해하기 쉬운

단순한 한 가지 역할 + 명확한 이름

중복이 없다

테스트 케이스가 있다

클린 코드를 잘 쓰면 귀찮은 일이 없어진다

Clean Naming

좋은 이름은 내부를 들여다보지 않아도 동작과 목적을 쉽게 이해할 수 있음

코드 읽는 사람의 인지적 부하를 최소화할 수 있음

변수 → 출력하지 않아도 데이터를 알 수 있게끔

함수/메소드 → 동작 예측 가능, 코드를 이해 못해도 활용 가능

객체 → 이름만 봐도 어떤 객체가 만들어지는지

원칙

일단 의미가 명확해야 함

줄임말 쓰지 말 것, 규칙과 일관성, 동료와 상의

이해가능한 최소한의 정보 + 적당한 길이(너무 짧은 것도 안 됨)

코드 리뷰

작성된 코드를 작성자 외의 리뷰어가 읽으며 피드백

품질 향상을 위한 활동

Clean Method

크기만으로 판단은 불가

한 가지 역할만!

지속적인 개선이 중요하다

Clean Comment

기본적으로 Bad Smell → 코드 자체로 충분히 의미를 설명하지 못한다는 반증 || 불필요, 중복적, 잘못 된 정보 제공

가급적 comment를 피하고 code로 의미를 표현하는 연습

Clean Formatting

동작에는 영향 X, 가독성에는 크게 영향을 줌

하기 쉬움(이름 짓는 것, 메소드 짧게 만드는 것 보다 낫다)

규칙(조직 내)에 따라 formatting 하기

코드 리뷰, 정적분석 도구 활용하기

Clean Control Structrue

신경 쓰지 않으면 복잡도 증가 → 이해 쉽게, 중첩 적게

최대한 빨리 실패하기(Fail Fast/Early Return)

Clean Refactoring

매일 지속적으로 수행하는 작은 코드 개선 작업

티클 모아 태산 → 아무리 적어도 매일 작업하면 품질 개선 O

최대한 안 좋은 코드를 감지하고 정리하기

 

 

 

코드프레소 Java 웹 개발 체험단 활동 중(https://www.codepresso.kr/)