Skip to main content

OOP 기초

객체지향 프로그래밍(Object-Oriented Programming, OOP)은 데이터(속성)와 기능(메서드)을 하나의 단위(객체)로 묶어 설계하는 프로그래밍 패러다임입니다.

절차적 vs 객체지향

특성절차적객체지향
중심함수와 데이터 분리데이터와 함수를 객체로 통합
재사용함수 호출클래스 상속/조합
확장성새 함수 추가새 클래스/메서드 추가
적합 사례간단한 스크립트복잡한 시스템, 프레임워크

OOP 4대 원칙

ML 프레임워크(PyTorch, scikit-learn)는 OOP로 설계되어 있습니다. nn.Module을 상속하여 모델을 만들고, Dataset__getitem__을 구현하는 것이 모두 OOP 패턴입니다.