-
-
객체지향 파이썬 - 파이게임과 GUI로 객체지향 프로그래밍 정복하기
어브 캘브 지음, 박찬성 옮김 / 제이펍 / 2023년 10월
평점 :
객제지향 프로그래밍은 코드와 데이터를 효과적으로 결합해 재사용성이 높은 코드를 만듭니다. 복잡성을 피하고, 효율적인 코드 작성을 할 수 있기 때문에, 코드를 작성하는 본인뿐만 아니라 다른 사람이 봐도 코드에 대한 이해가 가능해서 유지보수에 유리합니다.

이 책은 1부에서 객체지향 프로그래밍에 대해서 배운 뒤, 2부에서는 파이게임pygame으로 GUI(그래픽 사용자 인터페이스) 프로그램을 만들어 봅니다. 3부에서는 객체지향의 핵심 요소인 캡슐화, 다형성, 상속, 객체의 메모리 관리를 배웁니다. 4부에서는 타이머, 파이위젯 애니메이션 게임, 가위바위보 게임, 다이얼로그, 주사위 굴리기 프로그램을 만들며 객체지향 프로그래밍을 이해합니다.


책의 장점으로는 첫째, 문제-해결책-정리로 이어지는 구성을 통해 효과적으로 객체지향을 배울 수 있습니다. 절차 지향에서 생긴 문제를 해결하기 위해 작성한 코드를 객체지향으로 변환하고, 마지막으로 정리를 하는 과정을 통해, 코드를 재활용하는 효율적인 코드 작성법을 익힐 수 있었습니다.
둘째, 시각화된 프로그램을 만들면서 객체지향 기법을 학습합니다. 파이썬 튜터Python Tutor를 사용해 객체의 생명주기를 알아보는 것, 상호작용할 수 있는 게임을 만들면서 직관적으로 이해할 수 있었습니다.
셋째, 단계별로 예제를 실습하면서 하나의 프로그램을 만듭니다. 처음에는 쉬운 프로그램부터 테스트와 객체 관리, 예외 처리처럼 점점 더 복잡하고 현실적인 프로그램을 만들면서 점진적으로 객체지향에 대한 개념을 익힐 수 있었습니다.


이 책은 파이썬의 기본 문법은 알지만, 객체지향의 개념에 익숙하지 않은 독자들에게 추천합니다. 단계별 실습으로 객체지향에 대한 개념과 왜 필요한지를 알 수 있었습니다. 이 책은 파이썬의 동작 원리 및 내부 구현과 같이 고급 주제를 다루지는 않았습니다. 따라서 초급 개발자부터 중급 개발자에게 유용해 보입니다.
책을 읽고 나서 객체지향 프로그래밍은 우리 사회와 비슷하다고 느꼈습니다. 우리들은 복잡한 세계를 단순화하여 추상화하고, 상위 개체에서 하위 개체로 생각하고, 다양한 역할과 책임을 가집니다. 객체들이 상호작용을 하듯이 우리도 서로 협업을 통해 원하는 목표를 이뤄냅니다. 하지만 현실 세계를 잘 표현할 수 있는 객체지향 프로그래밍에도 단점이 있는데 복잡하고, 어렵다는 것입니다.
객체지향 파이썬은 복잡하고, 어려운 객체지향을 이해하는 기초를 알려줍니다. 객체를 정의하는 것부터 시작하여 객체의 데이터를 다루는 MVC 디자인 패턴까지 폭넓게 객체지향 프로그래밍을 배우면서, 프로그래밍을 바라보는 새로운 시각을 기를 수 있었습니다.
객체지향 프로그래밍의 이해를 위한 다양한 접근법도 인상적이었습니다. 직관적으로 이해를 돕는 시각적인 프로그램을 만들고, 개발자인 저자가 직접 겪은 사례, 코드에 대한 이해를 돕는 상세한 설명, 현실에 적용할 수 있는 다양한 예시를 통해 객체지향을 이해하는 데에 큰 도움이 되었습니다.
길을 잃기 쉬운 객체지향의 세계에서 『객체지향 파이썬』은 흥미를 가지고 객체지향을 배울 수 있는 기반을 알려줍니다. 이 책을 통해 객체지향에 대한 기초를 단단히 다지시길 바랍니다.
연습하고 연습하고 또 연습하자. 연습을 통해 진정한 객체지향 프로그래머로 성장하길 바란다!
(책의 마지막에서)
해당 서평은 출판사로부터 책을 제공받아 작성했습니다.