달력

3

« 2024/3 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2007. 4. 28. 15:55

Bad Smell development2007. 4. 28. 15:55


  1. Duplicated Code
  2. Long Method
  3. Large Class
  4. Long Parameter List
  5. Divergent Change
  6. Shotgun Surgery
  7. Feature Envy
  8. Data Clump
  9. Primitive Obsession
  10. Switch Statement
  11. Parallel Inheritance Hierarchies
  12. Lazy Class
  13. Speculative Generality
  14. Temporary Field
  15. Message Chains
  16. Middle Man
  17. Inappropriate Intimacy
  18. Alternative Classes with Different Interface
  19. Incomplete Class Library
  20. Data Class
  21. Refuse Bequest
  22. Comment

어느 프로젝트에서나 난 저위의 것들을 적당히 풍겨가며 개발을 하고 있다.
최근에 그 문제점이 무엇인지 생각을 많이 해보았다.
1. 개발스킬 부족.
    : 난 OOP개념보단 전처리 개념을 먼저 배웠기에..(취업하기전까진 자바가 뭔지도 잘몰랐다.) 코딩스타일이 자바스타일이 아니다...... 게다가 원래 창의적이지 못하다..
2. 업무 분석 미비.
   : 업무를 머리에 완벽히 넣어야 큰틀안에서 코딩해나갈수 있는데.. 부분부분 인계를 받으니 띄엄띄엄 코딩되 앞뒤가 잘맞지 않는다.
3. 기간
  : 나쁜냄새를 맡았으면 리펙토링을 하면된다.. 불가능하지도 않다. 프로젝트 기간 예를 들어 근무일 모두 야근을 한다. 나쁜냄새를 맡지 않더라도.. 그럼 야근이 끝나고. 리펙토링을 해야하는건가? 항상 왜 나쁜 냄새를 맡고 수정하지 않는걸 개발자 책임으로 모는지.. 이해가 가지 않는다. 리펙토링할 시간을 달라. 학교에서 수업끝나고 남는시간에 개발하는게 아니다. 9시부터 10시 11시까지 일정에 따라가기 바쁘다.. 내공이 부족해서? the One이 아니라면 대부분 일정에 쫓긴다. 아니 the One에겐 더많은 일을 주기에 더쫓길걸...

대충 이렇지 않을까....
문제는 알지만 난 개발에 미친사람이 아니기에 어떻게 할수가 없다. 업무분석에 스케쥴기간에 주말을 다 내주고 개발스케쥴끝나면 밤새서 리펙토링하고 이런건 못하겠다.....

나름대로 열심히 하고 싶지만... 이런건 아니라고 본다.

:
Posted by lch6