본문 바로가기
Computer Science

[Programming] Why do we use flow charts?

by Henry Cho 2019. 12. 19.

Why do we use flow charts?

Flow charts를 그려야 하는 이유


 


Q: 형 프로그래밍 실력을 높이려면 어떻게 공부해야 될까요?

A: you have to draw your own flow charts, 플로우 차트를 직접 그려 봐야 되지.

Q: 플로우 차트랑 프로그래밍 능력이랑 상관이 있나요?

A: 플로우 차트를 그리다보면 보다 더 빠르게 프로그래밍을 할 수 있게 되는 거야.

Q: 아 그래서 교수님이 플로우 차트 그리라고 하는구나.

A: 하지만 대부분의 학생이 듣기만 하고 하나하나 그려보는 사람은 많지 않지.


한국말로 하면 순서도라고도 불리는 Flow charts(플로우 차트 또는 순서도)는 프로그램이 어떤 식으로 작동이 되는지 보여주는 시각적인 표현 방법이라고 볼 수 있다. 하지만 Flow charts를 그리는 건 정말 귀찮다. 심지어 나도 Flow charts를 그려야 하는 걸 알고 있지만 바쁘다보면 Skip 하는 경우가 종종 있다. Flow charts를 그리지 않아도 프로그램 개발을 할 수가 있으며 컴파일 프로그램에서 너무나도 친절하게 문제점을 알려주고 정리를 해준다. 물론 지금처럼 프로그램 개발하기 편한 컴파일 프로그램들이 없던 시절에는 Flow charts를 기반으로 코딩을 하고 문제점을 찾아 보완하는데 중요한 요소였다.

그런데 왜 지금까지도 Flow charts를 직접 그리라고 하는걸까?

그리고 도대체 왜 Flow charts를 그리는게 프로그래밍에 도움이 되는 걸까?

 

Flow charts는 algorithm이다. 


프로그래밍을 배우다보면 알고리즘이라는 말을 정말 많이 듣는다. 하지만 사실 말만 어려워 보이지만(나만 어려워 보이나?), 프로그램이 어떻게 작동할 건지를 나타내는 순서 또는 절차를 의미한다. Flow charts를 알고리즘이라고 표현하는 이유는 알고리즘이 어떻게 되어 있는지를 나타내는 방식 중 하나가 바로 flow charts이기 때문이다. 한마디로 flow charts는 알고리즘을 표현하는 사람을 위한 그림인 셈이다. 

So, flow charts가 프로그래밍 실력을 높이는데 도움이 된다는 건데?

프로그램을 만들려면 해당 프로그램이 어떤 목적을 가지고 결괏값을 산출할 건지를 생각해야 된다. 결괏값을 산출하기 위해서는 때로는 함수를 사용하거나 다른 프로그램과 연동을 한다거나, 파일을 가지고 와야 하는 경우 등 다양한 과정이 존재한다. 결과를 산출하기 위해 생각하고 기획하는 과정 자체가 프로그램 알고리즘이며, 시각적으로 표현하는 과정이 flow charts이다. 직접 flow charts를 매번 그리면서 알고리즘에 대해서 익숙해지고 어떤 과정을 걸쳐야 원하는 결과 값이 산출되는지도 머리와 몸이 익힐 수 있게 된다. 프로그래밍을 배우기 시작한 단계부터 간단한 연습용 코드를 직접 flow charts를 그려보면서 알고리즘에 대해 익숙해지는 과정인 셈이다. 처음에는 그리다 보면 답답하기도 하고 그냥 눈으로만 봐도 코딩을 바로 할 수 있는데 굳이 flow charts를 그리지 않아도 된다고 생각할 수 있다. 내가 바로 이렇게 생각하면서 flow charts를 그려왔었다. 처음에는 별거 아닌 flow charts 그리기가 시간이 지나고 꾸준히 할수록 프로그래밍 실력은 조금씩 아주 조금씩 늘 것이며, 1년 뒤에 돌아본 나의 모습은 정말 생각보다 많이 발전되어 있는 모습에 놀랄 것이다.

 

In conclusion

 


정말 간단한 코드(창피하다고 생각할 수 있는 기본적인 코드)부터 flow charts(플로우차트 또는 순서도)를 그려보자.

Hello World를 flow charts로 그려보는 것부터 시작해보자!


 

* 프로그래밍에 대해서 궁금하신 점은 댓글이나 방명록에 남겨주세요.

728x90

댓글