제 경우는 거시적인 블록도 정도는 한번 그려 놓고 시작합니다.
세세한 순서도는 많은 노력을 필요로 하지만 전체 시스템에 대한 대략적인 블록도는 큰 노력이 들지도 않고, 작업이 끝날 때까지 훌륭한 지도의 역할을 해 줍니다.
C++을 이용한 프로그램이라면, 보통 클레스들 사이의 상관관계 주고받을 데이터 역할 등을 간단한 그림으로 그려줍니다.
C를 이용한 프로그램은 보통 하드웨어가 포함되는 경우가 많아서 하드웨어까지 하나의 시스템으로 보고 블록도를 그려 줍니다.
저는 아직 학부생이고 보통 혼자서 소스를 짜기 때문에, 아직까지 3000줄 이상 나가는 프로그램을 짜 본적이 없어서 확신하긴 어렵지만, 한번 작성해 놓은 블록도는 덩치가 큰 소스일수록 도움이 많이 되는 느낌입니다.
음... 저도 그렇게 하긴 합니다. 그런데
음...
저도 그렇게 하긴 합니다.
그런데 머릿속에 전체 로직과 알고리즘이 들어있지 않으면 안좋은 것 같네요.
저는 일단 굴러가는 프로그램을 만든 후, 세부적인 것들을 뜯어고치는 방식으로 개발합니다.
피할 수 있을때 즐겨라! http://melotopia.net/b
...
바로 슈도코드로 표현할 수 있을 정도면 python으로 대략 동작가능한 코드 작성 후 c로 재작성(메인이 이쪽이라),
알고리즘을 평가해봐야 하거나 조금 복잡하면 종이에 낙서좀 해보고 계산좀 해보고 슈도코드 작성. 이네요
전체적인 틀을 머리속에서 완성 시키고 앞으로 코딩할
전체적인 틀을 머리속에서 완성 시키고 앞으로 코딩할 계획을 주석으로 답니다.
// 여기선 A 작업
// 여기서 B 작업
풀어야 할 문제가 많이 복잡한 경우 키보드에서 손을 떼고 종이에 알고리즘을 구상합니다.
----------------------------------------------------
개인 블로그: https://kangssu.com
우와..
저랑 비슷하시네요.
역시 손을 움직여서 종이에 직접 그릴때 머리도 잘 돌아가는거 같아요^^
저두요 저두
많은 분들이 초보때부터 수도코드 등 이용해서 잘 체계화 하라고 햇는데 아직 그 버릇은 못들였어도 종이에 손으로 그리면서 흉내내고 있네요ㅋㅋ
http://kldp.org/node/120205
http://kldp.org/node/120205
이런글이 있었네요
피할 수 있을때 즐겨라! http://melotopia.net/b
경우에 따라 다른 것 같습니다.
제 경우는 거시적인 블록도 정도는 한번 그려 놓고 시작합니다.
세세한 순서도는 많은 노력을 필요로 하지만 전체 시스템에 대한 대략적인 블록도는 큰 노력이 들지도 않고, 작업이 끝날 때까지 훌륭한 지도의 역할을 해 줍니다.
C++을 이용한 프로그램이라면, 보통 클레스들 사이의 상관관계 주고받을 데이터 역할 등을 간단한 그림으로 그려줍니다.
C를 이용한 프로그램은 보통 하드웨어가 포함되는 경우가 많아서 하드웨어까지 하나의 시스템으로 보고 블록도를 그려 줍니다.
저는 아직 학부생이고 보통 혼자서 소스를 짜기 때문에, 아직까지 3000줄 이상 나가는 프로그램을 짜 본적이 없어서 확신하긴 어렵지만, 한번 작성해 놓은 블록도는 덩치가 큰 소스일수록 도움이 많이 되는 느낌입니다.
저는 걷습니다. 신선한 바깥공기를 쐐며 하늘을
저는 걷습니다.
신선한 바깥공기를 쐐며 하늘을 보고,
천천히 걸으며 머리속으로 구상을 시작합니다.
가끔은 벤치에 앉기도 하고요.
그렇게 10~20분걷으며 머리속으로 디자인을 짭니다.
돌아와서는,
hsnks100님처럼, 방금생각한 디자인을 토대로 앞으로 코딩할 계획을 주석으로 답니다.
// 여기선 A 작업
// 여기서 B 작업
행여나 막히는 부분이 있으면, 다시 밖으로 나갑니다. -_-
왠만큼 완성할때까지는 컴파일조차 하지 않습니다.
생각하는데로..그냥 써나가기
댓글 달기