교양/클린 코드
-
Clean Code #5 형식 맞추기교양/클린 코드 2022. 5. 2. 19:53
코드의 가독성에 필수적인 포맷팅 포맷팃이 중요한 이유 public void horriblyFormattedMethod() { System.out.println("First line"); System.out.println("First line"); System.out.println("First line"); for (int i = 0; i < 3; i++) System.out.println("number " + i); } public void horriblyFormattedMethod() { System.out.println("First line"); System.out.println("First line"); System.out.println("First line"); for (int i = 0; i <..
-
Clean Code #4 주석교양/클린 코드 2022. 3. 14. 11:28
주석을 최대한 쓰지 말자 주석은 나쁜 코드를 보완하지 못한다! // 직원에게 복지 혜택을 받을 자격이 있는지 검사한다. if ((employee.flags & HOURLY_FLAG) && employee.age > 65)) //위 코드는 의미있는 이름을 지으면 주석 없이 해결된다. if (employee.isEligibleForFullBenefits()) 코드에 주석을 추가하는 일반적인 이유는 코드 품질이 나쁘기 때문이다. 자신이 저지른 난장판을 주석으로 설명하지 말고 개선하는데 시간을 보내야 한다. 주석은 방치된다. 코드의 변화에 따라가지 못하고, 주석은 방치된다. 코드는 컴파일되어 호출되지만, 주석은 그저 주석이기 때문에 그 자리에 방치되고 결국 의미없는 텍스트가 되어버린다. 주석은 최대한 지양하지만..
-
Clean code #03 함수교양/클린 코드 2022. 2. 28. 15:55
더보기 1. SOLID 2. 간결한 함수 작성하기 3. 안전한 함수 작성하기 4. 함수 리팩터링 함수를 안전하고 간결하게 SOLID 객체지향 설계의 5가지 원칙 SRP(Single Responsibility): 단일 책임 원칙 -> 한 클래스는 하나의 책임만 가져야 한다. 클래스는 하나의 기능만 가지며 어떤 변화에 의해 클래스를 변경해야 하는 이유는 오직 하나뿐이어야 한다. SRP 책임이 분명해지기 때문에, 변경에 의한 연쇄작용에서 자유로워질 수 있다. 가독성 향상과 유지보수가 용이해진다. 실전에서는 쉽지 않지만 늘 상기해야 한다. OCP(Open/Closed Principle): 개방-폐쇄 원칙 -> 소프트웨어 요소는 확장에는 열려 있으나 변경에는 닫혀 있어야한다. 변경을 위한 비용은 가능한 줄이고, ..
-
Clean code #01~02 코드에 관하여교양/클린 코드 2022. 2. 24. 15:39
zero-base의 '한달한권 | 클린코드' 강의를 수강하면서 요약한 내용 나쁜 코드 나쁜 코드가 되기 위한 3가지 기준 성능이 나쁜 코드 = 불필요한 연산이 들어가서 개선의 여지가 있는 코드 의미가 모호한 코드 = 이해하기 어려운 코드 네이밍과 그 내용이 다른 코드 중복된 코드 = 비슷한 내용인데 중복되는 코드들은 버그를 낳는다. 나쁜 코드는 왜 나쁠까? 1. 깨진 유리창의 법칙 깨진 유리창의 법칙처럼 나쁜 코드는 깨진 유리창처럼 계속 나쁜 코드가 만들어지게 한다. (깨진 유리창의 법칙 : 깨진 유리창 하나를 방치해 두면, 그 지점을 중심으로 범죄가 확산되기 시작한다는 이론) 2. 생산성 저하 나쁜 코드는 팀 생산성을 저하시키고, 기술 부채를 만들어 수정을 더 어렵게 한다. 3. 추가 비용이 발생한다...