자바 프로그래밍의 가장 근본적인 철학인 객체지향(OOP)의 핵심인 클래스와 객체의 개념을 심도 있게 분석하고 정리했다.
현실 세계의 복잡한 대상을 소프트웨어 세계의 논리적 단위로 추상화하여 코드로 구현하는 일련의 과정을 실습했다.
데이터를 나타내는 속성(Field)과 동작을 정의하는 행위(Method)를 하나의 단위로 묶는 클래스를 설계하고 new 키워드를 통해 실체인 객체를 생성했다.
필드를 private으로 숨기고 메서드를 통해 접근을 제어하는 캡슐화 원칙을 적용하여 객체의 내부 상태를 안전하게 보호하는 방안을 익혔다.
각 객체가 자신만의 독립적인 상태를 유지하면서도 클래스에 정의된 공통의 로직을 공유하는 메커니즘을 명확히 이해했다.
자바 개발의 본질은 현실의 문제를 클래스 단위로 잘 쪼개고 이들 객체 간의 유기적인 협력 구조를 설계하는 데 있음을 깨달았다.
클래스 설계를 통해 코드의 재사용성을 높이고 유지보수가 용이한 구조를 만드는 과정이 얼마나 매력적인지 직접 체감했다.
좋은 클래스는 명확한 책임과 역할을 가져야 하며 이를 통해 전체 시스템의 복잡도를 낮출 수 있음을 다시 한번 확인했다.
객체지향 원칙을 충실히 따르는 정교한 클래스 설계를 통해 어떠한 변화에도 흔들리지 않는 견고한 소프트웨어의 기반을 다졌다.
객체라는 살아있는 단위를 다루는 감각을 익힘으로써 진정한 자바 개발자로 성장하기 위한 첫 단추를 꿰었다.
현실의 복잡함을 코드라는 질서로 치환하는 즐거움을 만끽했다.