POP_part21(관점 - 프로그래머가 보는 시각)

관점 - 프로그래머가 보는 시각

프로그래머의 3대 미덕

  • 태만 - 반복적인 작업은 시스템화 하자
  • 성급 - 일어날수 있는 일은 먼저 작업하자
  • 오만할것 - 남에게 부끄럽지 않게끔 작업하고 보수하자.

프로그래머는 중노동에 대해서는 보상받지 못한다. 자기가 일하는 시간이나 노력을 줄이면 줄일수록 프로젝트에 대한 기여는 커진다.

보이 스카우트 규칙

보이스카우트의 규칙은 자기가 머물렀던 자리를 떠날 때는 자기가 왔을때보다 깨끗이 치워야 한다는 규칙이다.
코드도 마찬가지고 깨끗하게 하고 떠나야 된다. 코드에 부패를 막기위해서이다.

코드에서 지름길을 택하면 나중에 시간이 더걸릴수도 있다.

성능튜닝에 관한 금언

최적화의 규칙

  • 해서는 안된다.
  • 아직 해서는 안된다.

빠른코드는 트레이드 오프가 있다.

  • 가독성 저하
  • 품질의 저하
  • 복잡성의 증가
  • 보수의 저해
  • 환경 간의 경합
  • 작업량의 증대

소프트웨어의 성능

  • 실행환경
  • 배치 또는 설치 설정
  • 사용하고 있는 미들웨어
  • 사용하고 있는 라이브러리
  • 상호 운용하고 있는 구 시스템
  • 아키텍처

아키텍처를 설계할때 성능을 고혀하는 쪽이 좋은 경우도 있다.

성능튜닝의 순서

  • 최적화의 필요성을 증명한다.
  • 성능을 계측하고 병목을 특정한다.
  • 병목 코드를 최적화한다.
  • 성능을 계측하고 최적화 효과를 확인한다.
  • 최적화한 코드의 동작에 문제가 없음을 검증한다.

참조