-
[객체지향] 모듈과 클래스의 차이프로그래밍/프로그래밍상식 2020. 4. 7. 13:33
안녕하세요:)
이번엔 객체지향 프로그래밍에서 필수적인 상식! 모듈과 클래스모듈의 차이에 대해 알아보도록 하겠습니다.
클래스
클래스는 사용자가 직접 객체를 선언하고 객체 멤버를 구성하여 사용할 수 있습니다. 이 때 클래스의 범위와 용도를 정해줄 수 있죠. 이렇게 만든 클래스는 그 용도와 목적에 맞게 상속을 통한 인스턴스화, 인터페이스 구현이 가능합니다. 즉, 다른 객체에서 해당 클래스의 내부 멤버를 세부용도에 맞게 변경하여 사용할 수 있다는 것입니다.
외부 객체에서 접근가능한 클래스 명을 import하여 사용할 수 있으며, 외부 객체에서 끌어다 쓰는 이 클래스 내부 멤버들은 클래스를 구현하는 동안에만 수명이 지속됩니다.
모듈
모듈은 어느 개인이나 단체에 의해 이미 완성되어 있는 것을 사용자가 가지고온 후 그 모듈 객체와 객체 멤버를 끌어와서 사용합니다. 이러한 모듈은 클래스와 다르게 상속을 통한 인스턴스화, 인터페이스 구현이 불가능합니다. 즉, 다른 객체에서 해당 모듈의 내부 멤버를 변경하여 사용하지 못한다는 것입니다.
모듈의 내부 멤버에 프로그램 수명동안 기본적으로 접근이 가능합니다.
이처럼 모듈과 클래스 모듈은 용도에 맞도록 구성한 객체 멤버들을 캡슐화 시킨 후 가져다 사용한다는 부분에서는 동일하지만, 그 사용성에 가장 큰 차이가 존재합니다. 모듈은 보통 다운받은 파일을 프로그램에 포함시켜 놓고 자유롭게 사용하는 반면 클래스는 그 목적에 맞게 각 프로세스에서 상속하여 사용합니다. 모듈은 내부 멤버를 변경하여 사용할 수 없지만 상속받은 클래스는 멤버를 자유롭게 변경할 수 있습니다.
'프로그래밍 > 프로그래밍상식' 카테고리의 다른 글
오류(Error)와 예외(Exception) (0) 2020.04.02 변수(Variable)와 인수(Argument), 매개변수(Parameter) (0) 2020.04.02