클래스 줄이면 코드가 가벼워집니다.OOP가 늘 정답은 아니다. 단순함이 이길 때가 많다.TL;DR상태가 필요 없으면 함수로 시작하자.데이터 보관만 필요하면 @dataclass가 깔끔하다.가벼운 상태는 dict로 충분하다.공용 유틸/상태는 모듈 자체를 싱글턴처럼 쓰면 된다.너무 이른 추상화는 가독성과 테스트를 망친다.물론 상속/폴리모피즘/GUI/프레임워크 요구가 있을 때는 클래스를 쓰자.용어 미리보기 (누구나 알 수 있게)OOP(Object-Oriented Programming): 객체(데이터+메서드) 중심으로 코드를 구성하는 방식.클래스(Class): 객체의 설계도. 속성(데이터)과 메서드(행동)를 정의한다.상속(Inheritance): 기존 클래스를 확장해서 새 클래스를 만드는 것.캡슐화(Encapsu..
과한 추상화 멈추기: 실전 파이썬 리팩터링
클래스 줄이면 코드가 가벼워집니다.OOP가 늘 정답은 아니다. 단순함이 이길 때가 많다.TL;DR상태가 필요 없으면 함수로 시작하자.데이터 보관만 필요하면 @dataclass가 깔끔하다.가벼운 상태는 dict로 충분하다.공용 유틸/상태는 모듈 자체를 싱글턴처럼 쓰면 된다.너무 이른 추상화는 가독성과 테스트를 망친다.물론 상속/폴리모피즘/GUI/프레임워크 요구가 있을 때는 클래스를 쓰자.용어 미리보기 (누구나 알 수 있게)OOP(Object-Oriented Programming): 객체(데이터+메서드) 중심으로 코드를 구성하는 방식.클래스(Class): 객체의 설계도. 속성(데이터)과 메서드(행동)를 정의한다.상속(Inheritance): 기존 클래스를 확장해서 새 클래스를 만드는 것.캡슐화(Encapsu..
2025.09.02