본문 바로가기

분류 전체보기166

클린코드 5장 이 포스트는 2021.12~2022.09 기간동안 벨로그에 작성한 글을 티스토리에 옮겨 적은 것입니다. 클린코드 5장 프로그래머라면 형식을 깔끔하게 맞춰 코드를 짜야 한다. 코드 형식을 맞추기 위한 간단한 규칙을 정하고 그 규칙을 착실히 따라야 한다. 팀으로 일한다면 팀이 합의해 규칙을 정하고 모두가 그 규칙을 따라야 한다. 형식을 맞추는 목적 오랜 시간이 지나 원래 코드의 흔적을 더 이상 찾아보기 어려울 정도로 코드가 바뀌어도 맨 처음 잡아놓은 구현 스타일과 가독성 수준은 유지보수 용이성과 확장성에 계속 영향을 미친다. 코드 형식은 의사소통의 일환이고 의사소통은 전문 개발자의 일차적인 의무이다. 적절한 행 길이를 유지하라 일반적으로 큰 파일보다 작은 파일이 읽기 쉽다. 🔎 신문 기사처럼 작성하라 신문을.. 2022. 9. 15.
클린코드 4장 이 포스트는 2021.12~2022.09 기간동안 벨로그에 작성한 글을 티스토리에 옮겨 적은 것입니다. 4장 주석 주석이 필요한 상황에 처하면 곰곰이 생각하기 바란다. 상황을 역전해 코드로 의도를 표현할 방법은 없을까? 주석은 나쁜 코드를 보완하지 못한다. 코드가 엉망진창이라 설명하기 위해서 주석을 단다? 그냥 코드를 깔끔하게 바꿔라. 뼈때리네.. 코드로 의도를 표현하라 //직원이 복지해택 받을 자격 있으면... if (employee.flag==True){ ... } 이렇게 하지말고 if (employee.isEligibleForFullBenefits()){ ... } 이렇게 하자 좋은 주석 아래는 글자값 하는 주석의 목록이다. 법적인 주석: 코드 파일 첫머리의 저작권 정보 등.. 정보를 제공하는 주석.. 2022. 9. 15.
클린코드 3장 이 포스트는 2021.12~2022.09 기간동안 벨로그에 작성한 글을 티스토리에 옮겨 적은 것입니다. 3장 함수 의도를 분명히 표현하는 함수를 어떻게 구현할 수 있을까? 함수에 어떤 속성을 부여해야 처음 읽는 사람이 프로그램 내부를 직관적으로 파악할 수 있을까? 작게 만들어라 중첩 구조가 생길만큼 함수가 커져서는 안된다. 함수에서 들여쓰기 수준은 1단이나 2단을 넘어서면 안된다. if문, while문 안에 들어가는 코드가 길어질거 같다면 함수로 쪼개자 한 가지만 해라 함수는 한 가지만 해야 한다. '한가지' 의 기준이 좀 모호한데... 의미 있는 이름으로 다른 함수를 추출할 수 있다면 그 함수는 여러 작업을 한다고 봐도 된다. 함수 당 추상화 수준은 하나로 추상화 수준이 높은 함수랑 추상화 수준이 낮은.. 2022. 9. 15.
클린코드 2장 이 포스트는 2021.12~2022.09 기간동안 벨로그에 작성한 글을 티스토리에 옮겨 적은 것입니다. 2장 의미 있는 이름 의도를 분명히 밝혀라 좋은 이름으로 절약하는 시간이 많다... 예를들면 날짜 변수라면 int d; 이딴식으로 짓지 말고 int elapsedTimeInDays; int daySinceCreation; 이렇게 짓자. 이렇게 이름을 통해 정보를 제공하면 코드의 단순성(연산자 수, 상수 수 등)은 똑같더라도 코드가 더욱 명확해진다. 그릇된 정보를 피하라 나름대로 널리 쓰이는 의미가 있는 단어를 다른 의미로 사용하면 안된다. 예를들어 직각삼각형의 빗변(hypotenuse)를 hp라고 하면...오해의 소지가 있다. 그냥 int 변수를 어쩌구_List 이렇게 짓는 것도 피하자. 헷갈릴 여지가.. 2022. 9. 15.
클린 코드 1장 이 포스트는 2021.12~2022.09 기간동안 벨로그에 작성한 글을 티스토리에 옮겨 적은 것입니다. 1장 깨끗한 코드 모든 프로그래머가 기한을 맞추려면 나쁜 코드를 양산할 수밖에 없다고 느낀다. ..(중략).. 나쁜 코드를 양산하면 기한을 맞추지 못한다. 오히려 엉망진창인 상태로 인해 속도가 곧바로 늦어지고, 결국 기한을 놓친다. 깨끗한 코드란? 전문가들에게 물었다. 깨끗한 코드는 한 가지에 집중한다. 너무 많은 일을 하려 애쓰다간 의도가 뒤섞이고 목적이 흐려지기 때문. 가독성이 좋아야 한다. 코드를 읽는 사람에게 프로그래머가 단호하다는 인상을 줘야 한다. 다른 사람이 고치기 쉬운 코드여야 한다. 그리고 테스트 케이스가 있는 코드여야 한다. 깨끗한 코드는, 세세한 사항까지 꼼꼼하게 신경쓴, 주의 깊게.. 2022. 9. 15.
알파벳 배열 쉽게 만들기 이 포스트는 2021.12~2022.09 기간동안 벨로그에 작성한 글을 티스토리에 옮겨 적은 것입니다. from string import ascii_uppercase from string import ascii_lowercase alpha = list(ascii_uppercase) print(alpha) alpha2=list(ascii_lowercase) print(alpha2) 알파벳 하나하나 쳐가면서 배열만들거나 아스키코드가 몇이엇지...26빼서 만들면 되나? 하는 그지같은 나날은 이제 끝이다. from string import ascii_lowercase 기억하자! 참고로 a->97 같은걸 원하면 ord 함수를 쓰면 된다. ord('a')=97!! 2022. 9. 14.
반응형