[잡담]갈수록 코드가 개판이 되어갈때...어떻게 하십니까?
글쓴이: ed.netdiver / 작성시간: 토, 2005/04/23 - 1:17오후
냐하하하, 안녕하세요.
지금 열심히 스파게티를 만들고 있습니당.
하나의 문제를 해결하기 위한 꽁수가 시간이 지나서 다른 문제를 내고..
어흑, 빈곤의 악순환이랄까요?
돌아가기엔 너무 먼 길을 와버렸고,
대책없이 꼬여버린 코드앞에서 좌절...ㅠ.ㅠ;
아 언제쯤이면 시간이 지날수록 이뻐지고 먹음직스런 코드를 만들수 있을지 암담합니당...
여러분들은 혹시 이런 경험 없으신가요?
우문에, 그때그때 다른게 정답이겠지만, 이럴땐 어떻게 하는게 현명한 결정일까요?
역시, 냄비째 쓰레기통행?ㅎㅎ
그럼 좋은 하루하루 되세요~~~
Forums:
그럴때는 코드를 보지 말고 고 명상을 해보세요.그리고 이제 기존코드를
그럴때는 코드를 보지 말고 고 명상을 해보세요.
그리고 이제 기존코드를 보지 말고 다시 짭니다.
몇백줄의 코드가 단 몇십줄로 줄어들겁니다.
XP 라고 우깁니다. :lol:
XP 라고 우깁니다. :lol:
[quote="maja"]그럴때는 코드를 보지 말고 고 명상을 해보세요.
어흑, 해봤는데 안돼요.ㅠ.ㅠ; 자꾸 머리속에서 가인이 예슬이가 아른거려요...ㅠ.ㅠ;
--------------------------------------------------------------------------------
\(´∇`)ノ \(´∇`)ノ \(´∇`)ノ \(´∇`)ノ
def ed():neTdiVeR in range(thEeArTh)
refactoring 할 시간이군요..먼저 testcase를...
refactoring 할 시간이군요..
먼저 testcase를...
What do you want to eat?
Test Case
모든 유효한 코드는 오류를 발생시킵니다. :D
Real programmers /* don't */ comment their code.
If it was hard to write, it should be /* hard to */ read.
[quote="qed"][quote="maja"]그럴때는 코드를 보지 말
호옷, 정답이 있는 문제군요. ^^ whitekid님이 말씀하셨듯 리팩토
호옷, 정답이 있는 문제군요. ^^ whitekid님이 말씀하셨듯 리팩토링이 답인 듯 합니다. 코드에서 냄새 나는 부분을 찾아 리팩토링하세요.
http://c2.com/cgi/wiki?CodeSmell
http://c2.com/cgi/wiki?RefactorMercilessly
1. 보기싫은 코드를 가릴 수 있게 그것을 호출하는 예쁜 이름의 함수를
1. 보기싫은 코드를 가릴 수 있게 그것을 호출하는 예쁜 이름의 함수를 만들어 보이지 않도록 하십시오..
2. 문제를 일으키는 입력은 그 함수의 입력단에서 비교하여 에러처리를 해 주시구요..
3. 완성된 함수는 기능과 입출력, 에러코드를 문서화합니다..
4. 포장이 다 되었으면, 사용하실 분에게 넘겨주세요..
5. 원래 소스를 폐기 처분하시고 그냥 잊어버리세요
함수를 사용하시던 분이 불편하면 새로 작성해 쓰실겁니다 :-)
http://blog.dreamwiz.com/shjii
[quote="shji"]1. 보기싫은 코드를 가릴 수 있게 그것을 호출
아 정말이지 오늘의 베스트 댓글로 포인트 10점 드리...고 싶습니다.^^;
특히 5번이 맘에 쏙 듭니다.ㅋㅋ
--------------------------------------------------------------------------------
\(´∇`)ノ \(´∇`)ノ \(´∇`)ノ \(´∇`)ノ
def ed():neTdiVeR in range(thEeArTh)
대부분그런것은 애초 구조설계자체가 잘못되어 있는경우입니다.재대로 잡을
대부분그런것은 애초 구조설계자체가 잘못되어 있는경우입니다.
재대로 잡을래야 잡을수 없는 구조로 설계되어 있지요..
이런일들은 어떠한 정책수정이나 협의를 다시하지 않으면
완전히 깨끗해지지않습니다.
바꿀수 있는최대한 다뒤집어 보세요..
----------------------------------------------------------------------------
개판 코드를 목표로 하고 개발해 보세요.- 토끼군
개판 코드를 목표로 하고 개발해 보세요.
- 토끼군
[quote="tokigun"]개판 코드를 목표로 하고 개발해 보세요.
오옷! 그런 방법이!!!+.,+;;
하지만, 그건 토끼군님 레벨이나 되야 가능하죠.
전 아마 컴파일도 못해보구 좌절하지 않을지...ㅋㅋ
역시 리팩토링이겠죠? 하지만 겁나...ㅠ.ㅠ;
--------------------------------------------------------------------------------
\(´∇`)ノ \(´∇`)ノ \(´∇`)ノ \(´∇`)ノ
def ed():neTdiVeR in range(thEeArTh)
리펙토링의 두려움을 극복하기 위해서는 UnitTest가 최선인 것 같습니
리펙토링의 두려움을 극복하기 위해서는 UnitTest가 최선인 것 같습니다. 전 TestCase없는 코드는 리펙토링 하기가 너무 무섭네요.
ㅜㅜ
---------
Byeongweon Moon
http://tasy.jaram.org/blog
사랑하면 알게 되고 알면 보이나니 그때에 보이는 것은 전과 같지 않으리라.