본문 바로가기

반응형

class

(8)
[VBA] 클래스(class) 완벽 가이드 이 포스트는 Excel Macro Mastery 사이트의 'VBA Class Modules - The Ultimate Guide(by Paul Kelly)'의 내용을 다시 정리한 것입니다. 이번 포스트에서는 VBA의 클래스 모듈에 대해 다룹니다. 클래스 요약 용어 설명 클래스(Class) 사용자는 클래스를 기반으로 객체를 만들 수 있습니다 메소드(Method) 클래스 모듈의 공용 함수 또는 서브루틴 멤버 변수(Member Variable) 클래스 모듈에 선언된 변수 프로퍼티(Property) 변수 처럼 사용되는 특수 함수 또는 서브루틴 프로퍼티 타입(Property Type) Get, Set, Let 생성자(Event Initialize) 클래스 모듈 객체가 생성될 때 자동으로 실행되는 서브루틴 소멸자(..
[Python] 클래스(class) #8 상속 이번 포스트에서는 파이썬 클래스의 상속에 대해서 알아 보도록 하겠다. 상속의 기본 문법을 시작으로 상속과 관련된 문제와 그 문제들의 해결 방법을 알아 본다. 목차 파이썬 클래스 소개 instance vs static dict vs slots property의 활용 special method callable object 클래스 데코레이터(class decorator) >> 상속 추상 클래스와 추상 메소드 클래스 상속이란 클래스의 '상속'이란, 기존에 정의 되어 있는 클래스에 정의 된 속성(필드와 메소드들)을 이어 받아, 그대로 사용하거나 수정 또는 다른 속성들을 추가하여 사용하는 것을 말한다. 기존에 정의 되어 있던 클래스를 기초 클래스(base class) 또는 부모 클래스(parent class), 상..
[Python] 클래스(class) #7 클래스 데코레이터 이번 포스트에서는 이전에 배운 callable object를 이용하여 클래스 형태의 데코레이터(decorator)를 만들어 보도록 하겠다. 목차 파이썬 클래스 소개 instance vs static dict vs slots property의 활용 special method callable object >> 클래스 데코레이터(class decorator) 상속 추상 클래스와 추상 메소드 Callable Object 와 Decorator 본격적인 설명에 앞서 이전 강좌를 못 본 분들도 있을 것이므로 callable object와 decorator에 대해 간단한 한줄 요약을 정리하고 넘어 가도록 하겠다. 자세한 사항은 각 링크된 포스트들을 살펴 보도록 한다(아무리 요약이 있더라도 꼭 살펴 보도록 하자). ca..
[Python] 클래스(class) #6 callable object 이번 포스트는, 이전 #5 special method에 이어 객체를 함수 처럼 사용 할 수 있는 callable object라는 개념에 대해 살펴 보고, __call__ 스페셜 메소드를 이용해 어떻게 만드는지 알아 볼 것이다. 또한, 객체를 함수 처럼 사용 할 수 있을 때 얻을 수 있는 장점에 대해서도 살펴 보도록 한다. 이번 장은 나중에 나올 클래스 데코레이터나 기타 많은 부분에서 유용하게 사용되므로 주의 깊게 살펴 보도록 하자. 목차 파이썬 클래스 소개 instance vs static dict vs slots property의 활용 special method >> callable object 클래스 데코레이터(class decorator) 상속 추상 클래스와 추상 메소드 __call__ 스페셜 메소..
[Python] 클래스(class) #5 special method 목차 파이썬 클래스 소개 instance vs static dict vs slots property의 활용 >> special method callable object 클래스 데코레이터(class decorator) 상속 추상 클래스와 추상 메소드 스페셜 메소드(special method)란? 스페셜 메소드는 특정 상황에서 자동으로 호출 되는 메소드(이름이 약속되어 있는 메소드)들을 일컫는 말이다. 스페셜 메소드는 __xx__() 형태, 앞에 언더바 두 개, 뒤에 언더바 두개 형태를 가진다. 스페셜 메소드는 파이썬 표준 타입과 유사하게 동작하는 클래스를 설계하기 위해서 반드시 필요하다. 약 100여개가 넘는 스페셜 메소드가 있다. 스페셜 메소드의 사용 예 스페셜 메소드는 특정 상황에서 자동 호출 되는 미..
[Python] 클래스(class) #4 property 이번 시간에는 클래스 필드의 getter와 setter를 쉽게 만들어 줄 수 있는 property라는 문법에 대해 살펴 보도록 하겠다. 이번 포스트에서는 사용법 위주로 익히고, 원리에 대한 자세한 설명은 뒤에 descriptor를 다루면서 추가 하도록 하겠다. 목차 파이썬 클래스 소개 instance vs static dict vs slots >> property의 활용 special method callable object 클래스 데코레이터(class decorator) 상속 추상 클래스와 추상 메소드 getter와 setter 먼저 프로퍼티에 대해 살펴보기 전에 우리는 getter와 setter의 개념에 대해 알아야 한다. getter와 setter는 C#이나 Java에서도 많이 사용되는 개념으로써,..
[Python] 클래스(class) #3 __dict__ vs __slots__ 이번 포스트에서는 메모리 절약과 필드 생성을 제어 할 수 있는 __slot__에 대해 살펴 보도록 한다. 목차 파이썬 클래스 소개 instance vs static >> dict vs slots property의 활용 special method callable object 클래스 데코레이터(class decorator) 상속 추상 클래스와 추상 메소드 __dict__ 이전 포스트 '클래스(class) #2 instance vs static'에서 우리는 파이썬 클래스의 인스턴스 필드를 생성하면 클래스 객체의 __dict__어트리뷰트에 저장된다는 것을 배웠다. __dict__에 필드를 저장하게 되면 단점이자 특징이, 외부에서 "새로운 필드(멤버)를 자유롭게 추가" 할 수 있다는 것이다. 예를 들어 클래스 내..
[Python] 클래스(class) #1 소개 이번 포스트 부터 파이썬의 클래스에 대해 알아 보도록 한다. 문법도 잘 모르는데 클래스란 무엇인지 어떻게 쓰는지 장황하게 설명해봐야 처음에는 잘 이해되지 않을 것이다. 우선은 문법 위주로 강의를 진행하고 개론적인 접근은 차차 예제들과 함께 깊이 파고 들어가도록 하겠다. 당장 이해 되지 않아도 멈추지 말고 계속 앞으로 진행해 나가도록 하자. 어차피 앞으로 다뤄질 포스팅에서 지겹도록 계속 언급 된다. 목차 >> 파이썬 클래스 소개 instance vs static dict vs slots property의 활용 special method callable object 클래스 데코레이터(class decorator) 상속 추상 클래스와 추상 메소드 클래스(class) 문법 클래스가 뭔지, 어떤 개념이 있는지 앞..

반응형