10. Phase 8 - MainApplication으로 추상화
1. MainApplication으로 추상화
입출금 내역 분석기(BankStatementAnalyzer)가 어느 정도 구현이 완료되었기 때문에
실제 애플리케이션을 실행하는 메인 클래스를 dev.bank 패키지 내에 MainApplication.java라는 이름으로 별도의 클래스로 분리
BankStatementAnalyzer 내 main() 메서드를 analyze()라는 이름으로 변경하고, BankDataParser 인터페이스를 인수로 받는 형태로 변경
→ 인터페이스를 통한 매개변수의 다형성을 이용하여 특정 구현에 종속되지 않도록 개선
1-1. 적용 결과
- BankDataParser interface를 구현하였기 때문에 BankStatementAnalyzer 클래스는 더 이상 특정 형식(TSV)의 Parser에 의존하지(종속되지) 않게 되었음
따라서 요구사항이 변경되거나 추가되어도(JSON 파일도 읽기) 보다 유연하게 대응할 수 있음
MainApplication은 BankStatementAnalyzer만 호출하면 프로그램이 동작함
Last updated on