p4우리 모두는 자신이 짠 쓰레기 코드를 쳐다며 나중에 손보겠다고 생각한 경험이 있다.우리 모두는 대충 짠 프로그램이 돌아간다는 사실에 안도감을 느끼며 그래도 안 돌아가는 프로그램보다 돌아가는 쓰레기가 좋다고 스스로를 위로한 경험이 있다. 다시 돌아와 나중에 정리하겠다
의미 있는 이름은 개발을 할 때 가장 기본적이면서도 너무 중요하다.디렉토리, 파일, 변수 등 개발을 하는 모든 곳에서 이름이 필요하고 이를 제대로 짓지 않으면 분명 언젠가 문제가 생긴다.무슨 의도로 작성한 코드인지 전혀 알 수 없으므로 언제나 사용 목적에 맞는 이름을
작은 함수는 가독성을 높이는 가장 기본적인 방법이다.괜히 뉴스나 긴 글을 볼 때 사람들이 농담(?)으로 세 줄 요약을 해달라는 말이 나오는 것이 아니다.함수가 길어지면 자연스럽게 코드를 읽기 전부터 한숨부터 나오고 거북함이 생긴다.구글에 long code를 키워드로 검
사실상 주석은 기껏해야 필요악이다. 프로그래밍 언어 자체가 표현력에 풍부하다면, 아니 우리에게 프로그래밍 언어를 치밀하게 사용해 의도를 표현할 능력이 있다면, 주석은 거의 필요하지 않으리라. 아니, 전혀 필요하지 않으리라.주석은 정보를 쉽게 전달하려는 목적으로 작성된다
다른 사람들과 협업을 하게 되면 다양한 규칙을 적용해야 한다.코드 외적으로는 VCS와 관련된 브랜치 전략, 이슈 관리, 커밋 컨벤션 등이 있다.코드 내적 형식으로는 인덴트, 함수 길이, 주석, 이름 등 정말 다양한 컨벤션을 정할 수 있다.또 이를 정했다면 Intelli
예외 처리를 오류 코드로 하게 되면 리턴 타입이 오류 코드이거나, 리턴하는 모든 객체가 오류 코드에 관한 맴버 변수를 항상 들고 있어야 한다.그리고 항상 리턴하는 경우 받는 쪽에서 오류 코드를 계속 확인해야 되고 순식간에 코드가 지저분해진다.조금 극단적이긴 하지만 이런
이번 장에서 말하는 경계란 오픈 소스와 같은 외부의 코드를 말하며, 어떻게 본인이 개발 중인 코드와 깔끔하게 통합시킬지에 대해 설명한다.인터페이스 제공자는 기능의 핵심을 벗어나지 않는 선에서 최대한 많은 사람들이 사용할 수 있도록 설계를 하고, 사용자는 본인이 원하는
왜 이 주제가 여기 있지라는 생각을 할 수도 있지만 이 장 이후로도 계속 객체 지향과 관련된 코드 작성법이 나오기 때문에 간단하게 다루는 것 같다.도형에 대한 구체 클래스와 인터페이스가 존재한다.구체 클래스의 어떤 도형인지 알기 위해 항상 객체 생성시에 선언을 해줘야