요즘 프로그램을 개발하다보니...
느낀점을 몇가지 적는다.
어떤 프로그램이든 어떤 상황에서든 통용될수 있는부분이 있기 때문에....
1. 모든 변수는 무식하다.
일반적인 byte나 char부터 배열, 클래스까지... 모든 변수는 프로그래머가 시킨일만 한다... 사람이 아니기 때문에 일일이 하나하나 꼼꼼하게 오동작하는 놈이 없는가 살펴야한다.. 어차피 오동작이나 에러는 프로그래머 자신이 만든 것이니까...
2. 프로그래머 자신이 사용할 프로그램이 아니라면 최대한 쉽고 편리하게 만들어야 한다.
프로그래머 자신이 사용할 프로그램이라면 에러상황이나 예기치 않는 오류들을 감안하고 사용을 하게 된다. 하지만 그 프로그램을 다른사람이 사용을 하게 된다면 그런 상황을 모르기때문에 불편함을 느낀다. 매뉴얼을 만들면 된다고??? 훗... 고딴거 보지도 않는다. 버리지나 않으면 다행...
따라서..
에러처리는 섬세하게, 사용환경은 편리하게 해줘야 하며.. 혹시 소스를 넘겨야 하는 경우가 생길때를 대비해서 변수명이나 코드는 직관적이고 이해하기 쉽게 구성하는 것이 좋다. 주석도 꼼꼼히 달아줘야한다... 나같은 사람이 있는지는 모르겠지만 몇일 지나면 왜 이렇게 짯는지 몰라 다시 소스분석하는 시간낭비가 필요할수도 있다..ㅡㅜ
3. 프로그램 최초 설계시 프로그램 구동 및 필요구성에 대해서 정확한 이해와 확인이 필요하다.
이번 프로젝트를 하면서 가장 아쉬운점중에 하나는 프로그램 구성을 참 주먹구구식으로 한 상태에서 시간에 맞춰 하다보니 중간에 스펙이 바뀌어 소스변경을 몇번을 했는지 모르겠다.. 물론 아직 프로젝트가 끝나지 않았지만 지금도 이거때문에 조금 헉헉대고 있다. 그러므로 전체 시스템이나 프로그램에서 필요한 기능 및 동작에 대한 이해를 정확히 파악해서 접근하는것이 야근과 삽질을 줄이는 지름길이다.
4. 현재 상황과 실력, 예상치 못한 일에 대한 고려까지... 모든것을 종합해서 예상완료일을 정해야한다.
나는 이번에 c#을 배우면서 하는 관계로 시간이 많이 걸렸다. 그리고 중간에 꼬인것도 역시 oop에 대해서 큰 이해도 없이 하다보니 고생을 했는데 그때문에 사실 많이 프로젝트 진행이 많이 늦었다. 원래 예상은 늦어도 8월 중순이었는데...아직도...ㅠ.ㅠ 만약 내가 이정도까지 고생하고 다른것 다 제쳐두고 했어야 했다면 아마 안하겠다고 했을텐데 나에대한 과대평가가 사실 너무 많았다...
암튼 예상완료일에 대한 설정은 정말 신중에 신중을 기해야 한다. 안그럼 개피본다...
일단 지금까지의 느낀점 정리...
마무리까지 좀 더 남아있지만 후딱 해치웠음 하는 바람이 있다...
아 정말 2달간 개고생만 생각하면..ㅠ.ㅠ
정말 요즘 너무너무 힘들다 .. 내적성이 아닌가 싶기도 하고 이직해야하나 고려중이기도 하고 아예 직종을 바꿔야 하나....
이런생각들까지 하고 있다... 에혀~~
난 개발자 스타일은 아닌것 같다... 일의 속도가 안남..ㅡㅜ
'공부 > C#' 카테고리의 다른 글
c# PC 시스템 시간 가져오기 또는 설정하기. (0) | 2012.10.04 |
---|---|
C# 쓰레드(thread, 스레드)... 그리고 tcpip 소켓.... (0) | 2012.10.04 |
C# Random (2) | 2012.09.21 |
C# 숫자의 여러가지 텍스트 표시 (표준 숫자 형식 문자열) (0) | 2012.08.23 |
C# delay (2) | 2012.08.23 |
댓글