필요한 기능이 있으면 계속 순서대로 추가해가며 구현하는 방식이다. 비구조적 프로그래밍(Non-Structured Programming)이라고도 한다.
코딩을 코드의 흐름, 순서에 기반하는 프로그래밍이며 가장 초기에 등장한 코딩 패러다임이다.
int N;
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
...
if (N == 0) { goto A; }
else if (N == 1) { goto B; }
}
}
goto C;
A: printf("A\n");
B: printf("B\n");
C:
...
비구조적 프로그래밍에서는 goto문을 활용한다. 만약 이전에 작성했던 코드가 다시 필요하면 그 곳으로 이동하기 위함이다.
하지만, 규모가 커지면 goto문을 무분별하게 사용하게 되고, 코드가 어떻게 연결되어있는지 확인 조차 못하게 된다.
따라서 사람들은 코드의 중복을 최대한 피하기 위해서 코드를 단위화할 방법을 찾게 된다.
물이 위에서 아래로 흐르는 것처럼 순차적인 처리가 중요시 되며 프로그램 전체가 유기적으로 연결되도록 만드는 비구조적 프로그래밍 기법이다. 대표적인 절차지향 언어에는 C언어가 있다.