메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

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

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

한빛미디어

집필서

절판

  • 저자 : 박진수
  • 출간 : 2004-09-25
  • 페이지 : 248 쪽
  • ISBN : 8979142994
  • 물류코드 :1299
  • 초급 초중급 중급 중고급 고급
4점 (11명)
좋아요 : 16

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

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

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

누구를 위한 책인가?

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

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

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

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

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

박진수

정보기술(IT)과 관련하여 다양한 개발·저술·번역·기술편집·기술교정·자문·발표·기고를해 왔다. 1인 기업을 세웠다가 닫았다. 최근에는 주로 인공지능과 관련한 번역·자문·강의를 한다. 저술하고 번역한 책이 많아서 좁은 지면에 모두나열하기 어렵다. 이 책들을 온라인 서점에서 역자의 이름으로 쉽게 검색해서 찾아볼 수 있다(다만 검색된다고 해서 다 역자의 책인 것은 아니다).저술하고 번역한 책 중에는 정보기술과 무관한 것들도 있다.

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)를 무시하지 마라
    런타임 에러를 인식하고, 그것이 발생하지 않도록 코드를 작성하라
    배열이 큰 경우에는 정적 변수로 선언하라 

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

어느정도 현재 잘못 알려진 내용이나 표준C 라입, 혹은 C++에 관한 내용 기반으로 생각했는데 그게 아니더군요.



읽기 쉬운 코드를 위한 방법론도 어느정도 잘못 전달된듯 보입니다.



아 다르고, 어 다르단 말이 있듯이, 저자가 제시한 방식을 "비롯하여" 읽기 쉬운 코드가 좋다는 쪽으로 이야기를 했어야했다고 보는데



저자가 제시한 방식만이 옳다는 식으로 이해될수도 있는 내용들 (실제 저자분의 생각은 그렇지 않으셨겠습니다만)은 조금 아쉬웠습니다.



게다가 몇몇 내용의 경우는 실무자들도 이런 사람이 있나? 싶은 내용도 일정 부분 포함되어, 페이지 메꾸기 용이 아닌가...싶은 생각까지 들었습니다.



뭐 어찌되었든간에 의도는 좋았고, 결과물도 나쁘지는 않았습니다만, 개정판이 나온다면 여러가지로 손볼곳이 있어보였습니다.

저는 프로그램을 잘 짜는 사람은 그 코드가 그만큼 간결하며, 어떠한 전문 지식을 가진사람도 그 말이 어려운 것 보다는 쉽고 "잘" 가르치는 사람이 정말 실력있는 사람이라고 생각합니다.

소스코드가 Standard 형식으로 클래스를 구현하거나 남이 여러분의 코드를 컴파일하여, class 라이브러리나 빈으로 사용하려고 할때,

코드의 정숙성과 구조는 명확해야 합니다. 무엇보다도 남이 봤을때 이해할 수 있게 짜야합니다.

특히나, 큰 프로젝트에서 많은 개발자들이 같이 일할때 그것의 중요성은 더욱 커집니다.



이 책은 코딩스타일의 중요성에 대해서 강조를 하고, 짧은 예제를 통해서 해결 방법도 보여주고 있습니다.

현재는 C로 개발 하지 않고 있지만, C로 개발을 하고 있을 때를 반성하게 되더군요.

코딩스타일은 언어별로 조금씩은 다르지만, 저자가 말하는 바와 같이 다른 프로그래을 사용하시는 분들도 많은 도움이 되리라 생각됩니다.



이 책은 정말 간결하고, 잘 잊기 쉬웠고, 남이 보았을 때 "정말 잘 구현한 코드" 를 구현하는 프로그래머가 꿈이라면 한번 쯤 봐도 괜찮을 책입니다. 책 크기는 좀 다른 책보다 작은 편입니다.

한 1년~2년차 정도? 이제 프로그래밍 좀 할만하다.. 라고 하시는 분들이 보시면, 한번 정리가 되는 책입니다.

헝가리안 표기법 아시지요? 그런 스타일 정말 좋아하시고, 특히 "변수 이름" 결정하기 어려운 분들 동감하시면서 보시면 좋을 듯합니다.

심지어는 저자가 설명하는 스타일 이외의 코딩스타일에 대해서는 다소 안좋게 기술하데 있다.

노골적으로 표현하지는 않았지만 다른 스타일의 코딩법은 다소 무시하다는 느낌이 들더군요.

저자가 제시하는 코딩스타일은 모두 C언어를 기준으로 설명하고 있는데,

개인적인 생각에 프로그래머의 코딩 스타일보다는

C언어 자체가 여러스타일로 코딩을 하도록 유연성을 제공하는 것이 더 큰 문제라고 봅니다.

초보자분들께 권합니다.

제목에 끌려서 보게 된 책...



자기 자신만의 코딩 스타일을 고수하는것도 중요하지만,

어느정도 일반적인 코딩 틀은 지켜주는게 좋다..라고 요약 할 수 있을듯.



이 책을 읽으려고 하는 분들에게 한가지 당부드리고 싶은건,

여기 나와있는거에 너무 얽매이거나 그 스타일을 따르려고 노력하지 않았으면 하는 점입니다.



제가 좀 개인적인 성향이라서 그럴수도 있지만, 저는 최소한의 기본적인 것들만 지켜주고 그 외에는 자신만의 스타일을 만들어 나가는게 더 좋지 않을까 생각합니다.

코딩을 하면서 주의해야할 사항들을 정리한 책입니다. 보통의 프로그래밍 서적들에서도 약간의 코딩 스타일을 다루고는 있지만, 이런 부분만을 정리해서 하나의 책으로 나와 있는 것은 거의 없는 것 같습니다.

초보 프로그래머 뿐만 아니라, 프로그래밍에 익숙한 개발자들도 간과하기 쉬운 코드 스타일 원칙들을 나름대로 잘 알려주고 있는 듯 합니다.

책을 읽으면서 제가 하는 코딩스타일하고 비교를 하면서 읽어 나가면서



나름대로 잘 하고 있었다는 부분도 있었고, 이 스타일은 좀 고쳐 나가야지 하는



생각이 드는 부분도 상당 수 발견하는 계기가 되는 책이였고,



물론 코딩하는 스타일이 정형화 된것은 아니지만



깔끔하고 눈에 쉽게 들어오는 코딩을 하도록 경각심을 일으켜주는 책인듯...



자신의 스타일과 비교를 하면서 읽어나가면 재미있을듯한 책...

코딩을 하다보면, 이전에 자신이 작성한 프로그램도 나중에 보면 이해하기 어려운 경우가 종종 있다. 효율적인 프로그래밍을 한다고 어렵게 코딩을 하는 경우도 있고, 지금 귀찮다고 주석을 다는 일을 게을리하는 까닭이다.

이 책은 프로그래머가 범하기 쉬운 사소한 문제까지도 짚어주는 책이다. 초보 프로그래머에게도 유용한 내용이지만, 중급 이상의 프로그래머들도 평소에 소홀히 했던 부분을 되새길 수 있는 내용이 담겨져 있다.

좋은 코딩 나쁜 코딩을 구입하고 읽은지 꽤 되어서야 서평을 작성 하네요..



저는 C나 자바 같은 범용 언어 프로그래머는 아니지만.. 웹 관련 스크립팅과



프로그램을 공부하고 있습니다.



javascript 나 php 그리고 actionscript등이죠...^_^;;



이 책에 주로 다루어진 c나 자바는 할 줄은 모르지만..



코딩 스타일에 대해서 개념을 잡기에는 딱 좋은 책이고 추천할 만합니다..



자신의 코딩 스타일이 좀 너저분(?) 하다 싶으신분들은 보시면 좋을거라고



생각이 듭니다.. 가끔 나오는 저자님의 옛 이야기들도 읽는데 조그마한



즐거움이기도 하고요..^_^

개발자가 되려는 사람뿐만 아니라.



단순히 학교에서 프로그래밍을 배우는 학생 등



모든 프로그래밍을 배우는 사람이 꼭 봐야되는 책





그런데 책 예제들이 좋은것도 있는데



썩 좋은 예제가 아닌것들도 몇개 보입니다.



그리고 씨언어에 치중된 내용도 있지만



거의 대부분은 모든 언어에 공통적으로 적용되는 것들 입니다.





암튼 모든 프로그래밍을 배우는 사람들이 꼭 보아야될 책임에 틀림없습니다.





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

책 제목이 제가 평소 갖고 있던 생각과 같아 구입을 했습니다.

아래 몇몇 서평에서 지적된 대로 내용은 초급자들을

대상으로 했다는 느낌을 저도 받았습니다.

단행본을 한자리에서 2시간도 안 되어 다읽은 경험은 많지 않은 터라

개인적으로 내용에 대한 만족감은 그렇게 충만하지는 않네요.



그런데 한가지, 잡지에서 기사 귀퉁이에 한꼭지씩

소개되는 코딩 팁들을 잘 정리했다는 점은 높이 살만 합니다.

흔히 좋은 팁들을 만나면, 기억해 둬야지 했다가

어디있는지 몰라 읽은 내용을 못찾곤 하는 데,

이 책은 그런 레퍼런스로 사용할만 하겠네요.

그리고 초보자들이 잘 느끼지 못하는 코딩 스타일이나 습관에

대해 여러측면에 짚어주려고 한 점도 괜찮습니다.



읽기 쉬운 코드가 좋은 코드라는 사상에 의한 것인지 몰라도

책 내용마저 너무 읽기 쉽게 써서 그런지

중급자들에게는 높은 평가를 못받는 듯 합니다.



다음 판에서는 중급자들을 위한 내용이 더 다루어지면 좋겠네요.



발췌: 강컴서평중 - 김성용님

시스템 관리와 프로그램 개발 업무를 하게 되면서 언어 자체도 프로그램에 있어선 중요한 요소였지만 그보다 코딩 가이드 라인이 필요했던 것이 한두번이 아니었다. 아마 이러한 것이 가이드 라인 책에 대한 갈증으로 나타났다고 생각한다.



본인은 일반적으로 프로그램을 작성할때 그래도 괜찮다고 생각하는 코딩 방식으로 프로그램을 작성해왔는데, 그 방법이라는게 단순하게 주석을 필요한데에 적절하게 추가하는 것과 들여쓰기에 주의하는 것이었다.



사실 지금도 코드는 들여쓰기가 적절히 되어야만 읽기 편하고 속된 말로 헤드 컴파일이 편리해지기 때문이다. 들여쓰기가 전혀되지 않거나 되었지만 엉망인 코드는 꼴도 보기 싫을 정도다. 이러한 것은 이제까지 책에서 보이던 언뜻언뜻 이렇게 작성하라는 내용을 보고 내 나름대로 승화(?)시킨 것이라고 할까?



그런면에서 이 책은 모든 독자가 자신의 것으로 만들어야 한다는 생각이 된다. 일부 초보 프로그래머들이 실수하기 쉬운 것과 프로그램에 익숙해져 갈 수록 자신의 프로그램은 안전하다는 상식을 깨어준다.



이 책에서 얻을 수 있었던 건 내가 프로그램을 만들면서 해왔던 코딩 방식을 전혀 새로이 뒤엎는 것 그리고 생각해왔던 것들 중 일부는 이 책의 내용에 비로소 매치시킬 수 있었다.



프로그래머로 밥줄을 놓지 않을 생각이라면 이 책을 읽어보길 강력히 권한다. 독자분의 생각을 2 단계 이상으로 업그레이드 시켜줄 것이다.

대학다니며 프로그래밍을 본격적으로 시작할때 어떻게 코딩하는게 좋은 걸까라는 생각을 많이 했었다. 지금처럼 인터넷이 발달된 것도 아니고 그렇다고 리눅스 소스를 쉽게 접할수 있는 상황도 아닌지라 다만 책에 나와있는 정리되지 않고 일관성없는 코드를 따라 할 수 밖에는 없었다. 이런 책이 그당시에 있었더라면 하는 아쉬움이 드는 좋은 책인것 같다. 프로그래밍을 시작하는 사람들은 물론 어느 정도 레벨에 올라섰다고 생각하는 사람도 가벼운 마음으로 자신의 코딩 스타일을 돌아보고 좋은 점은 과감히 자기 것으로 만들 필요가 있지 않을까 생각된다.

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
좋은 코딩, 나쁜 코딩: 읽기 쉬운 코드가 좋은 코드다
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
좋은 코딩, 나쁜 코딩: 읽기 쉬운 코드가 좋은 코드다
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
좋은 코딩, 나쁜 코딩: 읽기 쉬운 코드가 좋은 코드다
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실

최근 본 책0