10.1.2 프로그램 구현
두 번째는 프로그램 구현 단계입니다. 목표를 실제 동작하는 프로그램으로 만드는 단계죠. 목표 수립 단계에서 프로젝트 목표를 세워도 막상 프로그래밍에 들어가면 머리가 뒤죽박죽 정리되지 않는 경우가 종종 있습니다. 이러한 상황을 줄이기 위해 코드를 작성하기 전에 알고리즘을 작성합니다.
▲ 그림 10-4 프로그램 구현 단계
알고리즘이란 단어를 처음 듣는 사람도 있을 겁니다. 알고리즘은 어떤 문제를 해결하기 위해 필요한 절차를 순서대로 표현한 것입니다. 알고리즘은 문제, 해결, 절차라는 3가지 키워드만 기억하면 됩니다. 이 3가지 키워드로 알고리즘을 설명할 수 있습니다.
여기에서 문제는 어떤 것일까요? ‘문제’는 다양한 것이 될 수 있지만 현재 상황에서 우리의 문제는 바로 수립한 목표를 아직 달성하지 못했다는 것입니다. 앞의 프로그램 목표 수립 단계에서 프로젝트 목표와 하위 목표를 정했죠. 하지만 목표를 어떻게 달성할지는 아직 모릅니다. 그래서 우리가 수립한 각각의 하위 목표를 달성할 수 있는 (그래서 프로젝트 목표를 달성해 문제를 해결할 수 있는) 절차를 정리해야 합니다. 하위 목표는 프로젝트 목표를 실현하기 위한 수단으로 하위 목표 각각을 알고리즘으로 작성해야 합니다. 우리는 이미 카드 이용내역 분석에서 알고리즘을 수차례 접했습니다. 프로그래밍하기 전에 작성한 프로그램 흐름을 기억할 거예요.