과연 언제 깔끔한 코드를 짤 수 있는 코더가 될 수 있을까요..

정상인의 이미지

별로 질문까지는 아니고 가볍게 말하는 거라 자유게시판에 적습니다.
언제나 코딩을 하다 보면 목표와는 다른 스파게티 코드를 만들게 되지요. 물론 정확히 할 게 정해진 일이라면 덜하지만..개인 프로젝트로 적당히 짜거나 시간에 쫒기는 경우에는 언제나 그런 결과물을 구경하게 되지요. 나중 가면 심지어 뭐라고 적었는지 읽기조차 힘든..
능력은 둘째치고 개인적으로 만드는 건 마음가볍게 만들다 보니 그런 부분에 엄해지지 않는 거 같기도 하고, 도중도중에 이리저리 바꾸어 나가다 보면 결국 당연히 그런 결과물이 나와버리는 것 같습니다.

과연 언제 어떻게 하면 언제나 깔끔한 코드를 짜는 사람이 될 수 있을까요..

xyhan의 이미지

딴지는 아니고 코더와 개발자 의미는 약간 다릅니다..
목표도 틀립니다...
코더는 제공되는 패키지를 활용해서 프로젝트를 완성하는 사람들입니다.
제가 코더인데.. 이것도 오래하면 능률이 배로 올라갑니다.
처음부터 코더가 목표였던건 아니고요..
처음엔 개발자 같은 코더를 했더니.. 패키지가 엉망이 돼서 유지보수가 힘들게
되더군요..
이미 제공된 패키지에는 유저인터페이스에서 부터 화면전환 이것저것 모든것을
할수 있는 철학이 이미 들어가있습니다...
그것을 이해하고 그것에 맞춰 코딩하는게 훌륭한 코더죠..
아그리고.. 여기서도 마찬가지인게..
고객들이 계속 요구사항을 바꾸다 보면..
내가 만들던게 짬뽕인진... 짜장면인지 모르는 지경이 옵니다..
말바꿀때마다 첨부터 다시 짤수는 없으니까요...

============================================================

선한 인간이냐 악한 인간이냐는 그사람의 의지에 달렸다. -에픽테토스-
의지 노력 기다림은 성공의 주춧돌이다. -파스퇴르-

============================================================

익명 사용자의 이미지

항상 다음 원칙을 지키려 노력 합니다.

1. 하나의 함수는 한 가지 일만 한다.
2. 같은 일을 하는 함수를 만들지 마라.

일단 이정도만 지켜도 상당히 깔끔한 코드가.. ^^;;

jeongheumjo의 이미지

이런 고민에서, 제가 추구하는 방법은

- 객체지향적으로 프로그램 한다.
- UML을 작성한다.
- Doxygen 과 같은 주석을 성실하게 작성한다.

그 다음 아직 모르지만 배우고 싶은 방법은

- 리펙토링을 한다.
- XP 개발 방법론을 적용한다.

입니다.

winner의 이미지

특히 앞의 세개는 말이죠.
뒤의 두개에 대한 이야기라면 그걸 그대로 적용하지는 않고, 진행스텝을 제 자신이 신뢰할 수 있을만큼 작게 가져갈 수 있도록 노력하기는 합니다.

이런 작업들이 장기적으로 큰 도움이 되는 것은 분명합니다만 회사에서는 그런 것을 인정해주지 않거든요. 회사에서 원하는만큼만 하다보니 이모양이네요. 가끔 전체적인 그림이 필요할 때 예전에는 UML을 그려봤지만 지금은 중요흐름만 대충 파악할 정도만 해보고 맙니다.

jeongheumjo님의 그런 작업에 대해서 주변 분위기는 어떤가요?

jeongheumjo의 이미지

저도 저 3가지를 많이 써보지는 못했습니다. 거의 최근에서야 그렇게 하고 있습니다.

주위 사람들 의견은, 글쎄요, 제가 지금 회사를 그만두었는데 이런 결과물에 대한 의견을 들어보진 못했습니다. 실상 저의 회사에서 이런 결과물을 사용하는 것도 제가 첫번째였고 다른 사람들은 그게 모야? 하는 식이었기 때문에... 객체 지향 방식으로 코딩하는 사람도 UML을 모르고 doxygen 도 아무도 해본 사람이 없었습니다. 객체 지향 방식으로 코딩하는 것에 대해 제대로 아는 사람도 한 둘 있을 정도였지요. 모두 C++ 을 쓰긴했지만요..

그런데 제가 언급한 3가지를 제가 제대로 하느냐.. 그런건 아닙니다. 저도 제가 이해하는 범위 안에서 제가 필요로 하는 만큼만 사용합니다. winner 님 말씀처럼요. UML만 해도 제대로 하려면 공부할게 상당히 많은 것 같습니다. 저는 거의 클래스 관계 다이어그램 정도만 작성합니다. StarUML로요..

rubenz의 이미지

아마도 업무량을 줄일 수 있을때.. 가능 할거예요..
(빼 먹으라는 소리가 아니고....)

cleansugar의 이미지

재벌 2세가 재벌이 될 확률과
금메달리스트 2세가 금메달을 딸 확률이 비슷해지도록
자유오픈소스 대안화폐를 씁시다.

아이디의 아이디어 무한도전
http://blog.aaidee.com

귀태닷컴
http://www.gwitae.com

익명 사용자의 이미지

링크가 왕복편이군요
보통 편도로 거시든데
감사합니다