Skip to main content
Advanced Search
Search Terms
Content Type

Exact Matches
Tag Searches
Date Options
Updated after
Updated before
Created after
Created before

Search Results

57 total results found

김주엽

Clean Code 초안 4장 주석

1. 📌 핵심 개념 정리 ✅ 요약하기 나쁜 코드에 주석을 달지 마라. 새로 짜라. 브라이언 W. 커니핸, P.J. 플라우거 주석은 나쁜 코드를 보완하지 못한다 코드에 주석을 추가하는 일반적인 이유는 코드 품질이 나쁘기 때문이다. 표현력이 풍부하고 깔끔하고 주석이 거의 없는 코드가 주석이 많은 코드보다 훨씬 좋다. 주석으로 설명할 시간에 코드를 깔끔하게 수정하자. 코드로 의도를 표현하라! 코드만으로 의도를 설명하기 어려운 경우가 존재한다. 많은 ...

김시용

Clean Code 초안 3장 함수

1. 📌 핵심 개념 정리 ✅ 요약하기 함수를 작게 만들어라 가독성을 위하여 블록과 들여쓰기는 1단~2단이 적당하다 함수는 한 가지 기능만 하게해라 > 지정된 함수 이름 아래 추상화 수준이 하나인 단계 > 의미 있는 이름을 가진 함수 추출 더 이상 불가한 단계 switch 문 추상 팩토리에 숨긴다 -> 다른 클래스에 노출하지 않는다 다형적 객체를 생성하는 코드 안에서만 해당 (불가피한 상황 존재) 함수 이름 잘 짓기 서술적인 이름 사용 (동사) : 같...

김시용

Clean Code 초안 4장 주석

1. 📌 핵심 개념 정리 ✅ 요약하기 주석은 나쁜 코드를 보완하지 못한다. 나쁜 코드에 주석을 달지마라. 코드를 다시 짜라 주석은 최대한 자제하기 주석으로 설명한 부분 함수로 만들어 표현 가능한지 살펴보기 주석으로 설명하는 부분 (개선 전) if ((employee.flags & HOURLY_FLAG) && (employee.age > 65)) 함수로 표현한 부분 (개선 후) if(employee.isEligibleForFullBenefits()...

진소희

Clean Code 초안 3장 함수

1. 📌 핵심 개념 정리 ✅ 요약하기 의도를 분명히 표한하는 함수를 어떻게 구현할 수 있을까? 함수에 어떤 속성을 부여해야 처음 읽는 사람이 프로그램 내부를 직관적으로 파악할 수 있을까? 작게 만들어라! 함수를 만드는 첫째 규칙은 '작게!' 이다. 함수를 만드는 둘째 규칙은 '더 작게!'이다. 얼마나 짧아야 좋을까? 블록과 들여쓰기: if문, else문, while문 등에 들어가는 블록은 한 줄이어야 한다는 의미다. 이 말은 중첩 구조가 생길 만큼 함수...

진소희

Clean Code 초안 4장 주석

1. 📌 핵심 개념 정리 ✅ 요약하기 나쁜 코드에 주석을 달지 마라. 새로 짜라. 우리는 코드로 의도를 표현하지 못해, 그러니까 실패를 만회하기 위해 주석을 사용한다. 주석은 언제나 실패를 의미한다. 이유란? 프로그래머들이 주석을 유지하고 보수하기란 현실적으로 불가능하니까. 주석은 나쁜 코드를 보완하지 못한다 코드에 주석을 추가하는 일반적인 이유는 코드 품질이 나쁘기 때문이다. 표현력이 풍부하고 깔끔하고 주석이 거의 없는 코드가 주석이 많은 코드보다 훨씬...

박수완

Clean Code 초안 5장 형식 맞추기

1. 📌 핵심 개념 정리 ✅ 요약하기 형식을 맞추는 목적 오랜 시간이 지나 원래 코드의 흔적의 흔적을 더 이상 찾아보기 어려울 정도로 코드가 바뀌어도 맨 처음 잡아놓은 구현 스타일과 가독성 수준은 유지보수 용이성과 확장성에 계속 영향을 미친다. 적절한 행 길이를 유지하라 신문 기사 처럼 직성하라 신문은 다양한 기사로 이뤄진다. 대다수 기사가 아주 짧다. 어떤 기사는 조금 길다. 한 면을 채우는 기사는 거의 없다. 신문이 읽을 만한 이유는 여기에 있다...

CleanCode
로버트 C. 마틴

박수완

Clean Code 초안 6장 객체와 자료 구조

1. 📌 핵심 개념 정리 ✅ 요약하기 각자 해당 챕터에서 중요하다고 느낀 개념이나 아이디어를 간략하게 정리하고 개선 전, 후에 대한 예시 코드를 비교하며 개념을 설명합니다. 한 줄 요약 내용 개선 전 개선 전 코드 개선 전 코드의 문제점을 작성합니다. 개선 후 개선 후 코드 개선 후의 코드에 대한 설명을 작성합니다. 한 줄 요약 내용 . . . 한 줄 요약 내용 . . . 2. 🤔 이해가 어려운 부분 🔍 질문하기 책을 읽으며 이해하기 ...

CleanCode
로버트 C. 마틴

3장 함수

Clean Code 완성본

1. 📌 핵심 개념 정리 ✅ 요약하기 1. 작게 만들어라! 함수를 만드는 첫 번째 규칙은 '작게' 만드는 것이다. 두 번째 규칙은 '더 작게' 만드는 것이다. 함수는 가독성을 위해 작아야 하며, 일반적으로 20줄 이하로 작성하고, if/else, while, for 문 등의 블록은 1줄로 만들어 들여쓰기 수준을 1단 또는 2단을 넘지 않도록 해야 한다. 개선 전 public class OrderProcessor { public void processO...

4장 주석

Clean Code 완성본

1. 📌 핵심 개념 정리 ✅ 요약하기 1. 주석은 나쁜 코드를 보완하지 못한다. 나쁜 코드에 주석을 달지 마라. 새로 짜라. 코드에 주석을 추가하는 주된 이유는 코드 품질이 좋지 않기 때문이다. 깔끔하고 표현력이 풍부한 코드는 주석이 거의 필요 없으며, 주석으로 코드를 설명하려 할 시간에 코드를 개선하는 데 집중해야 한다. 주석은 코드의 실패를 의미하며, 유지보수가 현실적으로 어렵기 때문에 최소화해야 한다. 2. 코드로 의도를 표현하라! 코드만으로 의도를 설...

김시용

Clean Code 초안 5장 형식 맞추기

1. 📌 핵심 개념 정리 ✅ 요약하기 코드 형식의 목적 코드 형식은 의사소통의 일환이다. 코드는 재사용이나 재구현의 경우가 많기에 가독성이 상당히 중요 -> 코드 형식 자체가 가독성에 지대한 영향 권장하는 코드 형식 적절한 행 길이 유지 (대부분 200줄) 신문 기사처럼 작성 -> 큰 개념부터 아래로 내려갈수록 의도를 세세하게 묘사 개념은 빈 행으로 분리 (새로운 개념 시작 부분 행 하나 비우기) 세로 밀집도 : 연관성 높은 개념들 밀집시키기 (연관성 ...

진소희

Clean Code 초안 5장 형식 맞추기

1. 📌 핵심 개념 정리 ✅ 요약하기 형식에 맞추는 목적 코드 형식은 의사소통의 일환이기 때문에 중요하다. 오늘 구현한 기능이 다음 버전에서 바뀔 확률은 매우 높다. 오늘 구현한 코드의 가독성은 앞으로 바뀔 코드의 품질에 지대한 영향을 미친다. 원래 코드는 사라질지라도 개발자의 스타일과 규율은 사라지지 않는다. 적절한 행 길이를 유지하라 세로길이(지금은 파일 크기만 고려) 500줄을 넘지 않고 200줄 정도인 파일로도 커다란 시스템을 구축할 수 ...

진소희

Clean Code 초안 6장 객체와 자료 구조

1. 📌 핵심 개념 정리 ✅ 요약하기 변수를 비공개로 정의하는 이유가 있다. 남들이 변수에 의존하지 않게 만들고 싶기 때문이다. 그렇다면 어째서 수많은 프로그래머가 조회 함수와 설정 함수를 당연하게 공개해 비공개 변수를 외부에 노출할까? 자료 추상화 변수 사이에 함수라는 계층을 넣는다고 구현이 저절로 감춰지지는 않는다. 구현을 감추려면 추상화가 필요하다. 그저 조회 함수와 설정 함수로 변수를 다룬다고 클래스가 되지는 않는다. 그보다는 추상 인터페이스를 제공해...

김주엽

Clean Code 초안 5장 형식 맞추기

1. 📌 핵심 개념 정리 ✅ 요약하기 적절한 행 길이를 유지하라 소스 코드의 세로 길이는 얼마나 길어야 적당한가? Junit, FitNesse, testNG, Time and Money, JDepend, Tomcat 등 프로젝트 조사 결과 평균 파일 크기는 약 65줄이다. 프로젝트에서 가장 긴 파일은 400줄이고 짧은 파일은 6줄이다. 여기서 JUnit, FitNesse, Time and Money는 상대적으로 파일 크기가 200줄 정도로 작았다. 코드 길이...

김주엽

Clean Code 초안 6장 객체와 자료 구조

1. 📌 핵심 개념 정리 ✅ 요약하기 어째서 수많은 프로그래머가 getter/setter를 당연하게 public으로 설정해 변수를 외부에 노출할까? 자료 추상화 변수를 private으로 선언하더라도 각 변수마다 getter/setter를 제공한다면 구현을 외부로 노출하는 셈이다. 추상 인터페이스를 제공해 사용자가 구현을 모른 채 자료를 조작할 수 있어야 한다. 개선 전 public class Point { private double x; pri...

김시용

Clean Code 초안 6장 객체와 자료 구조

1. 📌 핵심 개념 정리 ✅ 요약하기 자료 추상화 추상 인터페이스를 제공해 사용자가 구현을 모른 채 자료의 핵심을 조작할 수 있어야 진정한 의미의 클래스다. (인터페이스나 조회/설정 함수만으로는 추상화가 이뤄지지 않는다) 자료/객체 비대칭 객체는 동작을 공개하고 자료를 숨긴다. 그래서 기존 동작을 변경하지 않으면서 새 객체 타입을 추가하기 쉽다. 반면, 기존 객체에 새 동작을 추가하기는 어렵다. 자료 구조는 별다른 동작 없이 자료를 노출한다. 그래서 기존...