자바의 기본 문법과 제어 흐름을 실전에 적용해 보기 위해 텍스트 기반의 데이터 관리 시스템을 구축하는 콘솔 프로젝트를 수행했다.
사용자의 입력을 실시간으로 처리하고 적절한 결과를 출력하는 프로그램의 입력-처리-출력(IPO) 주기를 완벽히 이해하는 데 주력했다.
while 루프와 switch 문을 결합하여 사용자가 종료를 선택할 때까지 지속적으로 동작하는 인터랙티브한 프로그램 구조를 설계했다.
Scanner 클래스를 활용하여 사용자로부터 문자열과 숫자를 입력받고 버퍼 관리 기법을 적용하여 입력 오류로 인한 프로그램 멈춤 현상을 방지했다.
ArrayList를 사용하여 동적으로 늘어나는 데이터를 메모리에 저장하고 관리하며 try-catch 구문을 통해 잘못된 입력에 대한 방어 로직을 꼼꼼히 구축했다.
기능별로 클래스를 분리하여 코드의 응집도를 높이고 각 객체가 명확한 책임을 갖도록 설계함으로써 객체지향 프로그래밍의 기초를 실천했다.
단순한 기능을 구현하는 것을 넘어 예외 상황에 대한 철저한 대비가 얼마나 견고한 소프트웨어를 만드는지 직접 체감하는 소중한 경험이었다.
콘솔 프로젝트는 비록 UI는 화려하지 않지만 프로그램의 논리적 뼈대를 세우는 가장 효과적인 학습 방법임을 깨달았다.
이번 프로젝트를 통해 얻은 자신감을 바탕으로 파일 시스템을 연동하여 데이터의 영속성까지 확보하는 고도화된 시스템을 구축했다.
작은 프로그램 하나에도 개발자의 치밀한 설계가 담겨야 함을 다시 한번 되새기며 기본기를 탄탄히 다졌다.
텍스트 기반의 인터페이스 속에서 논리적인 완결성을 갖춘 시스템을 완성했다.