클린코드(Smells and Heuristics)-part2
클린코드 냄새와 발견법(Smells and Heuristics) part2 함수 부정 조건은 피하라. 부정 조건은 긍정 조건보다 이해하기 어렵다 가능하면 긍정 조건으로 표현하라. 위에 코드가 아래 코드 보다 낫다. 함수는 한가지 일만 해야 한다. 함수를 짜다 보면 한 함수 안에다 여러 단락을 이어서 일련의 작업을 수행하고
20 posts
클린코드 냄새와 발견법(Smells and Heuristics) part2 함수 부정 조건은 피하라. 부정 조건은 긍정 조건보다 이해하기 어렵다 가능하면 긍정 조건으로 표현하라. 위에 코드가 아래 코드 보다 낫다. 함수는 한가지 일만 해야 한다. 함수를 짜다 보면 한 함수 안에다 여러 단락을 이어서 일련의 작업을 수행하고
클린코드 냄새와 발견법(Smells and Heuristics) part1 주석 부적절한 정보 다른 시스템(svn, git, 이슈트렉커 등등)에 저장될 정보는 주석으로 부적절하다. 주석은 코드의 설계에 기술적인 설명을 부연하는 수단이다. 쓸모 없는 주석 오래된 주석, 엉뚱한 주석, 잘못된 주석은 더이상 쓸모가 없다. 중복
클린코드 Successive Refinement(점진적 개선) 프로그래밍은 과학보다 공예에 가깝다. 클린코드를 짜려면 먼저 지저분한 코드를 짠 뒤에 정리해야 한다는 의미 점진적 개선을 하기 위해 TDD를 실천 하였고 그래서 하나 씩 개선해 나간 내용이다 이부분은 책으로 꼭 읽어 봐야 할듯 하다 책의 내용이 전체적으로 리펙
클린코드 Concurrency(동시성) 동시성이 필요한 이유 동시성은 결합을 없애는 전략이다. 즉 무엇과 언제를 분리하는 전략이다. 스레드가 하나인 프로그램은 무엇과 언제가 서로 밀접하다. 그래서 호출스택을 살펴보면 프로그램 상태가 곧바로 드러난다. 단일 스레드를 디버깅하는 프로그래머는 정지점을 정한후 어느 정지점에 걸렸
클린코드 Emergence(드러나다, 창발성) 켄트백의 간단한 설계규칙 4가지 모든 테스트를 실행한다. 중복을 없엔다. 프로그래머의 의도를 표현한다. 클래스와 매소드 수를 최소로 줄인다. 간단한 설계규칙 : 모든 테스트를 실행하라. 문서로는 시스템을 완벽하게 설계했지만 시스템이 의도한대로 돌아가는지 검증할 방법이 없다면
클린코드 Systems 이장에서는 높은추상화 수준에서 즉 시스템 수준에서 클린 코드를 구현하는 방법을 살펴 본다. 시스템 제작과 시스템 사용을 분리하라. 소프트웨어 시스템은 응용프로그램 객체를 제작하고 의존성을 서로 연결하는 시작단계와 시작단계 이후 이어지는 실행 단계를 분리해야 한다. 시작단계는 모든 응용 프로그램이 풀
클린코드 단위테스트 TDD 법칙 3가지 1. 실패하는 단위 테스트를 작성할 때까지 실제코드를 작성하지 않는다. 1. 컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작성한다. 1. 현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성한다. 위 세가지 규칙을 따르면 개발과 테스트가 대략 30초 주기로
클린코드 오류처리 오류 코드를 처리 하는것은 클린코드와 연관이 있다. 흩어진 오류처리 코드때문에 코드를 이해하기 어려워진다면 클린코드라고 하기 어렵다. 오류처리 보다 예외를 사용하라 얼마전까지만 해도 예외를 지원하지 않는 프로그램 언어들이 많았다. 오류 플래그를 설정하거나 호출자에서 오류코드를 넘기는것이 다였다. 오류코드
클린코드 객체와 자료구조 변수를 private으로 선언하는 이유가 있다 남들이 변수에 의존하지 않았으면 싶어서 이다. 자료 추상화 자료를 세세하게 공개하는것 보다 추상적인 개념으로 표현하는 편이 낫다. 인터페이스나 get/set함수만으로 추상화가 이뤄지지 않는다. 아무 생각 없이 get/set함수를 추가하는것이 가장 나쁘
클린코드 형식 맞추기 프로그래머라면 형식을 깔끔하게 맞춰서 코드를 짜야 된다. 형식을 맞추려는 목적 코드 형식은 중요하다. 코드 형식은 의사소통의 일환이다. 적절한 행 길이를 유지하라. 일반적으로 큰파일 보다 작은 파일이 이해하기 쉽다. 신문기사 처럼 작성하라. 신문은 다양한 기사로 이뤄진다. 대다수 기사가 아주 짧다.
클린코드 의미 있는 이름 검색하기 좋은 이름을 사용하라 위에 asis코드와 tebe코드중 어느것이 검색에 더 편하겠나? 일단 숫자형식은 검색하기 매우 까다롭다 이름을 의미 있게 지으면 검색하기 편해진다. 인코딩은 피하라 헝가리식 표기법 옛날 원도우 C API는 헝가리식 표기법을 매우 중요하게 생각했다. 실제로 컴파일하기