나에게 필요한 지식과 기술을 검색해 보세요.

좋은 코딩, 나쁜 코딩: 읽기 쉬운 코드가 좋은 코드다

지은이

박진수

출간일

2004.09.25

레벨

초급

평점

3.6(5명)

정가

14,000

판매가

12,600

총 결제 금액

10%

12,600

적립 예정

630P

성공하는 프로그래머의 94가지 코딩 습관
잘못된 코딩 습관은 소프트웨어 전체를 파괴한다

성공하는 사람들의 이면에는 좋은 습관이 있듯이 성공하는 프로그래머에게도 좋은 습관이 존재한다. 좋은 습관은 특별한 것이 아니라 읽기 쉽고 통일되게 코딩 원칙을 준수하는 것이다. 현대 프로그램 대부분은 공동 작업의 산물이다. 따라서 한 명의 잘못된 코딩 습관은 프로젝트 전체를 망치는 원인이 될 수도 있다. 납기일 지연은 물론이고 엄청난 유지보수 비용 증가와 오류 투성이인 프로그램은 잘못된 코딩 습관에서 비롯된 결과다.

이 책에서는 기존의 언어 창시자나 훌륭한 프로그래머들이 주장하는 꼭 필요한 좋은 코딩 습관을 주제별로 분류하여 누구나 참고할 수 있도록 아주 쉽게 구성하였다.

누구를 위한 책인가?

"세 살 버릇 여든까지 간다"는 속담처럼 프로그래머가 되기 위해 언어를 처음 학습하는 독자가 읽기를 강력하게 추천한다. "빠르다"는 것보다는 "정확하고" "읽기 쉽게" 작성하는 습관이야말로 입문하는 독자가 반드시 가져야 하는 자세로서 이 책이 충분히 가이드 역할을 할 수 있을 것이다. 또한, 언어의 문법이나 스킬에 초점을 맞춘 책이 아니기 때문에 언어적 지식이 많지 않아도 충분히 학습할 수 있다.

개발 기간보다 유지보수나 디버깅 혹은 다른 프로그래머와 의사소통이 잘 안 되는 현업 프로그래머에게도 반드시 필요한 책이다. 내 자신이 팀에 해를 끼치는 좋지 않은 습관이 있는지 이 책을 통해서 찾아볼 수 있다.

"이 책에는 경험 많은 다양한 프로그래머들의 아이디어가 녹아 있다. 그런 아이디어를 제공한 프로그래머들과 해커나 구루(guru)라고 칭해질 만큼 뛰어난 실력을 지닌 프로그래머들에게 감사의 마음을 전한다. 우리는 이들의 헌신적인 노력과 지적 생산물에 힘입어서 프로그램 코드를 아름답고, 정교하며, 효율적인 것으로 만들어 갈 수 있는 것이다." _ 머리말 중에서

"코딩 스타일은 단위 프로그램을 정교하게 만들어주는 공구와 같다. 이런 의미에서, 프로그래머가 공구를 다루는 방법을 익히지 않고 프로그램을 작성한다면 조악한 프로그램을 만들기 쉽다. 프로그래머들이 코딩 스타일을 익히는 것은 기계를 다루는 사람이 각종 공구를 익히는 것만큼 기본적인 일이다." _ 본문 중에서

주요 내용
  • 프로그램 설계 시에 알아야 할 좋은 코딩 습관
  • 띄어쓸 때 좋은 코딩 습관
  • 들여쓸 때 좋은 코딩 습관
  • 주석을 작성할 때 좋은 코딩 습관
  • 식별자 이름을 지을 때 좋은 코딩 습관 I
  • 식별자 이름을 지을 때 좋은 코딩 습관 II
  • 연산자를 사용할 때 좋은 코딩 습관
  • 명료한 프로그램을 만들기 위한 좋은 코딩 습관
  • 이식하기 쉬운 프로그램을 만들기 위한 좋은 코딩 습관
  • 정밀한 프로그램을 만들기 위한 좋은 코딩 습관
  • 성능 향상을 위한 좋은 코딩 습관
  • 이해하기 쉬운 프로그램을 만들기 위한 좋은 코딩 습관
  • 사용자 인터페이스를 처리할 때의 좋은 코딩 습관
  • 오류 없는 프로그램을 만들기 위한 좋은 코딩 습관

저자

목차

1장 시작하기 전에
    코딩 스타일이란 무엇인가
    코딩 스타일에 대한 교육이 부족하다
    코딩 스타일을 익혀야 할 시기	
    코딩 스타일을 왜 배워야 하나	
    코딩 스타일은 수학이나 영어보다 더 중요하다 	
    모든 언어에 코딩 스타일이 필요하다
    C 언어로 코딩 스타일을 설명하는 이유	
    코딩 스타일은 컴파일 방식과 하이브리드 방식에 유용하다
    컴포넌트 기반 개발 방식과 코딩 스타일	

2장 프로그램 설계 시에 알아야 할 좋은 코딩 스타일
    최신 표준을 따르라
    개발 인원을 적정한 규모로 한정하라 
    프로그램을 새로 만드는 것보다 유지보수하는 경우가 많다
    프로그램을 쉽게 수정할 수 있다는 생각을 버려라 
    새로운 기법을 도입할 때는 신중히 하라
    "Run and Fix" 전략을 피하라 

3장 띄어쓸 때 좋은 코딩 스타일
    한 줄에 한 문장만 써라 
    선언문과 실행문을 구분하라 
    단락을 구분하라 
    제어문들 사이를 구분라라
    함수들 사이를 구분하라 
    연산자의 앞뒤로 빈 칸을 두라
    단항 연산자를 피연산자에서 띄어쓰지 마라

4장 들여쓸 때 좋은 코딩 스타일
    중괄호의 위치 
    중괄호의 위치를 통일시켜라 
    내부 블록은 들여써라 
    피제어부를 들여써라 
    쓸데없는 들여쓰기를 하지 마라

5장 주석을 작성할 때 좋은 코딩 스타일
    다양한 주석의 형태 
    한 줄 주석과 상자 주석을 구분하라
    변수 사전 작성용 주석을 달아라 
    의사 코드를 프로그램에 기입하라	
    프로그램의 목적을 주석으로 달아라 
    프로그램의 앞부분에 머리 주석을 꼭 달아라

6장 식별자 이름을 지을 때 좋은 코딩 스타일 I
    변수 이름을 체계적으로 지어라
    헝가리안 표기법으로 변수 이름을 지어라 
    변수의 자료형을 변수 이름에 접두사로 표기하라
    기억 영역 계층을 접두사로 활용하라
    함수의 역할을 접두사로 활용하라
    자신만의 접두사를 만들어 활용하라 

7장 식별자 이름을 지을 때 좋은 코딩 스타일 II
    이름을 의미 있게 지어라
    비슷한 변수 이름을 사용하지 마라 
    의미를 잃지 않는 범위에서 짧게 지어라 
    이름이 길면 밑줄 또는 대소문자로 구분하라
    변수 이름을 밑줄로 시작하지 마라
    밑줄을 과도하게 사용하지 마라 
    대소문자를 적절히 배합해서 만들어라 
    C 언어가 대소문자를 구분한다는 것을 악용하지 마라

8장 연산자를 사용할 때 좋은 코딩 스타일
    조건 연산자가 경우에 따라서 효율성을 발휘한다 
    연산자의 우선순위에 의존하는 식을 만들지 마라 
    포인터 연산자를 변수 이름쪽에 붙여서 써라
    시프트 연산 대신 산술 연산을 사용하라
    극단적으로 효율성을 추구하지 마라

9장 명료한 프로그램을 만들기 위한 좋은 코딩 스타일
    약삭빠른 코드 대신에 명료하고 이해하기 쉬운 프로그램을 작성하라
    while 문에서 관계/대입 연산자의 우선순위를 혼동하지 마라
    묵시적인 "non zero test"를 하지 마라	
    조건식에 대입문을 사용하지 마라 	
    부작용이 나타나지 않도록 주의하라 	
    함수의 원형에도 인수의 자료형을 표시하라	
    가인수에도 이름을 기입하라	
    반환 자료형을 반드시 표시하라	
    결과값에 주의하라 

10장 이식하기 쉬운 프로그램을 만들기 위한 좋은 코딩 스타일
    파일 이름의 길이를 14자로 제한하라 
    파일 이름에 특수 문자를 사용하지 마라
    조건부 컴파일을 활용하여 이식성을 높여라
    컴파일러의 한계를 인식하라
    자료형의 크기가 달라질 수 있다는 점을 고려하라
    절대 경로를 지정하지 마라 

11장 정밀한 프로그램을 만들기 위한 좋은 코딩 스타일
    컴퓨터는 생각보다 정밀하지 않다 
    정밀한 계산이 필요하다면 부동 소수점 연산을 피하라 
    정밀한 계산에는 float형보다 double형을 쓰라
    정수형의 크기를 확인하라 
    계산 단위를 반드시 명시하라 
    나눗셈 연산에는 주의를 기울여라 
    자료형의 변환이 이루어지지 않도록 하라

12장 성능 향상을 위한 좋은 코딩 스타일
    성능이 중요하다면 될 수 있는 한 출력하지 마라 
    연산을 단순한 형태로 바꿔라 
    효율성이 요구되는 큰 파일을 다룰 때는 바이너리 파일을 사용하라 
    팩키드 구조체와 언팩키드 구조체의 장단점을 인식하고 사용하라 
    실행 환경을 고려하여 언어를 선택하라 

13장 이해하기 쉬운 프로그램을 만들기 위한 좋은 코딩 스타일
    goto 문을 사용하지 마라
    C의 구성 요소를 선행처리기로 치환하지 마라 
    긴 자료형은 짧은 이름으로 바꾸어 사용하라
    조건식보다는 if 문을 사용하라
    배열의 차원을 3차원으로 한정하라 

14장 사용자 인터페이스를 처리할 때의 좋은 코딩 스타일
    입력 값을 저장할 변수의 크기를 충분히 확보하라 
    변환 지정자와 매개변수의 개수를 일치시켜라 
    scanf() 함수보다는 fgets()와 sscanf() 함수를 사용하라 
    fflush() 함수를 사용해 표준 입출력 장치의 버퍼를 비워라 

15장 오류 없는 프로그램을 만들기 위한 좋은 코딩 스타일
    배열의 첨자는 0부터 시작한다는 것을 잊지 마라
    치환 문자열을 반드시 괄호로 씌워라 
    파일을 열었다면 반드시 닫아라
    컴파일러의 경고(warning error)를 무시하지 마라
    런타임 에러를 인식하고, 그것이 발생하지 않도록 코드를 작성하라
    배열이 큰 경우에는 정적 변수로 선언하라 

부록: 참고할 만한 웹 페이지들과 검색 방법
참고 문헌

리뷰

오탈자

14,000

10%

12,600