상세 컨텐츠

본문 제목

[Python] classes

Python

by TUZA 2024. 1. 19. 23:31

본문

OOP

 

OOP는 우리의 데이터를 어떻게 구조화해야하는 지 알려준다.

OOP를 사용하면 코드를 더 나은 방법으로 이해하기 쉽고, 보다 전문적으로 개발할 수 있다는 것이 큰 장점이다.

그리고 코드를 보다 확장성 있게 만들어주고 필요한 구조와 규칙 및 모델을 제공한다.

 

 

Class를 사용하지 않을 경우 
jay = {
	"name":"Jay",
	"XP": 1000,
	"team": "Team X",
}

def create_player(name, xp, team):
	return {
		"name":name,
		"XP":xp,
		"team": team,
	}

def introduce_player(player):
	name = player["name"]
	team = player["team"]
	print(f"Hello, my name is {name} and i player for {team}")


introduce_player(jay)
jay = create_player('Jay', 2000, "team Z")
introduce_player(jay)

 

 

Class를 사용한 경우
#Classes
class Puppy:
	pass

ruffus = Puppy()


#method : function inside a class

-----

#Classes
class Puppy:
	def __init__(self): #클래스 안에 있는 메소드는 무조건 인자를 받게됨
		self.name = "Ruffus"
		self.age = 0.1
		self.breed = "Beagle"

ruffus = Puppy()
print(ruffus.name) #Ruffus
print(ruffus.age)
print(ruffus.breed)

 

Class는 데이터와 데이터를 처리하는 함수들을 함께 묶어 놓은 것이라고 보면된다.

여기서 함수는 "메서드" 라고 불린다.

클래스를 하나의 틀로 생각할 수 있는데, 붕어빵을 찍어내는 틀이라고 비유해도 좋을 거 같다.

이 틀을 사용하여 실제 데이터를 가지고 있는 객체를 만들 수 있다.

 

클래스 안의 메서드의 첫 번째 agrument는 관례적으로 "self"로 명명하며, 자기 자신을 가리킨다.

이를 통해 메서드 내에서 데이터의 속성에 접근할 수 있다.

클래스를 이용한다면 코드를 구조화하고 유지보수하기 쉽게 만들어 줄 수 있을 것이다.

반응형

관련글 더보기