프로그래밍 스타일의 요소

The Elements of Programming Style
The Elements of Programming Style.jpg
제2판 표지
작가브라이언 W. 케르니건과 P. J. 플로거
출판된맥그로힐
발행일자
1978
페이지168쪽
ISBN978-0070342071

Brian W. KernighanP. J. Plauger가 쓴 프로그래밍 스타일요소들은 컴퓨터 프로그램이 컴파일러나 개인 프로그래밍 "스타일"을 만족시키기 위해서뿐만 아니라 특히 소프트웨어 유지보수 엔지니어, 프로그래머, 기술 wright wrigger에 의한 "읽기성"을 위해 쓰여져야 한다는 개념을 옹호하는 프로그래밍 스타일의 연구다. 책은 1974년에 출판되었다.

이 책은 Strunk & WhiteThe Elements of Style에 제목과 어조로 명시적인 경의를 표하고 있으며 Edsger Dijkstra의 구조화된 프로그래밍 토론을 촉진하는 실질적인 템플릿으로 여겨진다.그 영향력이 컸으며, 「C 프로그래밍 스타일의 요소」, 「C# 스타일의 요소」, 「Java(TM) 스타일의 요소」, 「MATLAB 스타일의 요소」 등, 개별 언어에 맞춘 유사한 텍스트가 잇따라 생겨났다.

이 책은 프로그래밍 교과서에 실물로 출판된 프로그램들의 짧은 예를 바탕으로 만들어졌다.이는 추상적 또는 학문적 논의보다는 실제적인 처우를 낳는다.그 문체는 외교적이고 대체로 그 비평에 공감하며, 또한 뻔뻔스럽게 솔직하기도 하다. 그 문체가 흠을 찾는 예들 중 일부는 작가 자신의 작품에서 나온 것이다(제2판의 한 예는 초판이다).

레슨

교훈은 "기계가 더러운 일을 하게 하라"와 같이 각 섹션의 끝에 요약되어 있다.

  1. 똑똑하게 쓰세요 – 너무 영리하게 쓰지 마십시오.
  2. 간단하고 직접적으로 무슨 뜻인지 말해라.
  3. 가능할 때마다 라이브러리 기능을 사용하십시오.
  4. 너무 많은 임시 변수를 피하십시오.
  5. 명료하게 쓰십시오 – 효율성을 위해 명료성을 희생하지 마십시오.
  6. 기계가 더러운 일을 하게 내버려 두어라.
  7. 반복 표현식을 공통 함수에 대한 호출로 대체한다.
  8. 모호성을 피하기 위해 괄호화한다.
  9. 혼동하지 않을 변수 이름을 선택하십시오.
  10. 불필요한 가지를 피하십시오.
  11. 논리적인 표현이 이해하기 어렵다면, 그것을 변형해 보십시오.
  12. 프로그램을 단순하게 만드는 데이터 표현을 선택하십시오.
  13. 이해하기 쉬운 사이비언어로 먼저 쓰고, 그 다음 당신이 사용해야 하는 어떤 언어로 번역하라.
  14. 모듈화하다.절차 및 기능을 사용하십시오.
  15. 프로그램을 읽기 쉽게 유지할 수 있다면 gotos를 완전히 피하십시오.
  16. 잘못된 코드를 패치하지 말고 다시 작성하십시오.
  17. 큰 프로그램을 작은 조각으로 쓰고 테스트하라.
  18. 재귀적으로 정의된 데이터 구조에는 재귀 절차를 사용하십시오.
  19. 입력의 신뢰성 및 유효성을 테스트하십시오.
  20. 입력이 프로그램의 제한을 위반하지 않도록 하십시오.
  21. 개수가 아닌 파일 끝 마커로 입력을 종료하십시오.
  22. 잘못된 입력을 식별하고 가능한 경우 복구하십시오.
  23. 입력을 쉽게 준비하고 자체 설명을 출력하십시오.
  24. 동일한 입력 형식을 사용하십시오.
  25. 교정하기 쉬운 입력을 만드십시오.
  26. 자가 식별 입력을 사용하십시오.기본값 허용.출력 시 둘 다 반향한다.
  27. 사용하기 전에 모든 변수가 초기화되었는지 확인하십시오.
  28. 한 번에 멈추지 마라.
  29. 디버깅 컴파일러를 사용하십시오.
  30. 한 개씩의 오차도 조심해라.
  31. 평등하게 올바른 길을 갈 수 있도록 조심해라.
  32. 중하부에서 같은 곳으로 루프가 빠져나가는 경우 주의한다.
  33. 당신의 코드가 우아하게 "아무것도" 하지 않도록 하라.
  34. 프로그램을 경계값으로 테스트한다.
  35. 몇 가지 답안을 손으로 확인하십시오.
  36. 10.0 곱하기 0.1은 거의 1.0이 아니다.
  37. 7/8은 0이고 7.0/8.0은 0이 아니다.
  38. 단지 평등을 위해 부동 소수점 수를 비교하지 마십시오.
  39. 빨리 만들기 전에 바로 만들어라.
  40. 더 빨리 만들기 전에 고장 방지 장치를 만들어라.
  41. 더 빨리 만들기 전에 분명히 해라.
  42. 효율성의 작은 이득을 위해 명료성을 희생하지 마십시오.
  43. 컴파일러가 간단한 최적화를 수행하도록 하십시오.
  44. 코드를 다시 사용하는 데 무리를 주지 말고, 대신 재정비하십시오.
  45. 특수 케이스가 정말로 특별한지 확인하십시오.
  46. 더 빨리 만들기 위해 단순하게 유지하라.
  47. 더 빨리 만들기 위해 코드를 디들링하지 말고 더 나은 알고리즘을 찾으십시오.
  48. 프로그램을 계측하십시오.효율성을 변경하기 전에 측정하십시오.
  49. 코멘트와 코드가 일치하는지 확인하십시오.
  50. 코드에 코멘트를 그대로 반영하지 말고 모든 코멘트를 세어 보십시오.
  51. 나쁜 코드는 언급하지 말고 다시 쓰세요.
  52. 의미가 있는 변수 이름을 사용하십시오.
  53. 의미가 있는 문 레이블을 사용하십시오.
  54. 독자가 이해할 수 있도록 프로그램을 포맷하십시오.
  55. 데이터 레이아웃을 문서화하십시오.
  56. 과대평가하지마

현대의 독자들은 그 예가 오늘날 인기 있는 언어와는 상당히 다른 오래된 절차 프로그래밍 언어(FortranPL/I)를 사용하는 것이 단점이라고 생각할 수 있다.이 책이 쓰여질 때 오늘날 인기 있는 언어는 거의 발명되지 않았다.그러나 일반적으로 양식적, 구조적인 문제를 우려하는 이 책의 많은 요점들은 특정 언어의 세부 사항을 초월한다.

리셉션

킬로바드 마이크로컴퓨팅은 "다른 사람들이 사용할 프로그램을 쓰려면 이 책을 읽어야 한다.전문 프로그래머가 되려면 이 책은 의무적으로 읽어야 한다.[1]

참조

  1. ^ Reeves, Jack W. (January 1980). "The Elements of Programming Style". Kilobaud Microcomputing. p. 9. Retrieved 23 June 2014.
  • B. W. Kernighan과 P. J. Plauger, The Elements of Programming Style, McGraw-Hill, New York, 1974년.ISBN 0-07-034199-0
  • B. W. Kernighan과 P. J. Plauger, The Elements of Programming Style 2 Edition, McGraw Hill, 1978.ISBN 0-07-034207-5

외부 링크