아래 원문을 보고 간단히 번역해봤습니다.
(오역이 많으니 가능하면 원문을 보시는게 좋을것 같습니다.)
뭐 아래 같은 얘기는 많이 들어봤을텐데 다시 상기시키는 차원에서 보면 좋을것 같습니다.
개인적으로는 Smash같은 경우는 첨 들었고 "문법설탕(syntactic sugar)을 제거하였나요?" 이 부분은 뭔가 고민되네요.


원문: http://slowjavascript.com/

  1. 스크립트 테그의 위치가 올바른가요?
  2. DOM Monster에서 확인 해보셨나요?
  3. 헤더에 캐시가 적용되었나요?
  4. 여러개의 파일을 합치고 한줄로 만들어서 캐시하게 만들었나요?
  5. 축소하고 압축(Gzip)하였나요?
  6. Smash을 이용하여 css sprite와 favicon을 만들었나요?
  7. 프래임워크를 확인해봤나요?
  8. 잘못 사용하는 timer들은 없나요?
  9. Dom을 최대한 효율적으로 사용했나요?
    • 노드 탐색
    • 이벤트 버블링과 캡쳐
    • innerHTML
    • 투명 이미지
    • 스타일
    • 복잡도
  10. Ajax를 적절하게 사용했나요?
  11. 코드를 간단하게 만들었나요?( 변수 할당, 연산자들, 리터럴들)
  12. 지나치게 완벽하게 만든 코드들을 수정하였나요?(Strip out excessive cleverness)
  13. 효율적으로 정규표현식을 사용했나요?
  14. JSON을 사용했나요?
  15. 정규식을 캐시하여 사용했나요?
  16. 클로져, 전역변수, 리터럴들을 조심해서 사용했나요?
  17. 가장 효율적인 구문을 사용했나요?
  18. 가장 효율적인 반복문을 사용했나요?
  19. 객체의 속성들을 가장 효율적으로 사용했나요?
  20. 변수들은 캐시해서 사용했나요?
  21. 메모리 릭을 최대한 제거했나요?
  22. 효율적으로 arguments를 사용했나요?
  23. 문법설탕(syntactic sugar)을 제거하였나요?
  24. 루프를 사용하지 않고 펼쳐서 사용하거나 적절하게 사용했나요?
  25. iPhone을 위해 최적화를 했나요?



DOM Monster

Thomas Fuchs(scriptaculs 제작자)와 AmyHoy(디자이너)가 만든 프로파일링 툴

Smash
이미지의 품질을 지키면서 용량을 줄이는 웹 도구.

문법설탕(syntactic sugar)
개발할때 코드를 읽기 쉽거나 사용하기 쉽게 하기 위해서  만든 문법을 말한다.
사용하기에는 편하나 성능면에서는 비효율적일수 있다.

지나치게 완벽하게 만든 코드들을 수정하였나요?(Strip out excessive cleverness)
- 이 부분은 제가 이해하기로는 "추후를 예측하여 현재 불필요한 코드를 만들어서 성능에 영향을 미치는 경우"와 같은 류를 말하는것 같습니다.


Posted by 전용우
,