변화하는 소프트웨어 요구사항에 유연하게 대응하기 위해 전략 패턴(Strategy Pattern)을 실무에 적용했다.
코드 수정은 최소화하면서 기능 확장은 극대화할 수 있는 객체지향 설계 역량을 강화하는 데 주력했다.
자주 변하는 로직을 인터페이스로 추상화하여 구체적인 구현체와 분리하는 캡슐화 원칙을 실천했다.
기존 코드를 건드리지 않고도 새로운 기능을 추가할 수 있는 개방-폐쇄 원칙(OCP)의 준수 방안을 파악했다.
좋은 설계는 초기에 더 많은 고민과 비용이 발생할 수 있지만, 프로젝트가 커질수록 시스템 수명을 결정짓는 핵심임을 이해했다.
유지보수 비용을 절감하고 테스트 용이성을 확보하는 등 설계가 주는 장기적인 이점을 체감했다.
끊임없는 고민과 리팩토링을 통해 견고하고 확장 가능한 소프트웨어 아키텍처를 설계하는 능력을 길렀다.
논리적이고 구조적인 설계 역량이 훌륭한 개발자의 필수적인 척도임을 다시 한번 되새겼다.