Loading...
2022. 7. 30. 19:52

객체 지향 프로그래밍이란 2편 -객체는 무엇인가-

1. 객체(object) - 클래스에서 정의한 것을 토대로 메모리(실제 저장공간)에 할당된 것으로 프로그램에서 사용되는 데이터 또는 식별자에 의해 참조되는 공간을 의미하며 변수, 자료구조, 함수 또는 메소드가 될 수 있다 - 객체는 속성(attribute)과 행동(method)으로 구성된 모든 것 - 속성은 변수로 나타내고 행동은 함수로 나타내는데 특별히 class에서는 행동을 method라고 부른다 예시) 가수 태연이라는 존재를 프로그래밍 세계로 옮긴다면? 노래(), 댄스() 직업: 가수, 생년월일: 1989년 3월 9일, 국적: 대한민국 ----------------------------------------------------------------------------------- 태연.노래() ..

2022. 7. 30. 18:47

객체지향 프로그래밍이란 1편 -정의와 왜 필요한지?-

1. 객체 지향 프로그래밍? '프로그래밍의 패러다임' == 방법론 객체지향프로그래밍(Object-Oriented Programming)은 컴퓨터 프로그래밍의 패러다임 중 하나 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위인 객체들과 그 객체들 간의 상호작용으로 파악하는 프로그래밍 객체들은 서로 메시지를 주고받고 데이터를 처리한다 2. 객체? 객체 = 정보 + 행동을 모두 가진 것을 변수 처럼 이름을 붙이면 그것이 바로 객체 정보는 '변수'로 표현하고 행동은 '함수'로 표현 >> 객체 = 변수 + 함수 예) 가수 = 예쁘다(정보) + 노래부른다(행동), 강아지 = 리트리버(정보) + 먹기,자기(행동) 가수가 강아지에게 먹이를 주었다. 강아지는 가수에게 멍멍 짖었다 변수, ..

2022. 2. 19. 20:34

파이썬 object의 magic method

파이썬의 객체는 이미 내장되어있는 __가 들어간 method를 활용하여 자신만의 객체를 만들 수 있다 1. __init__ __init__ method는 인자를 받아서 인스턴스 내부에 여러가지 속성을 부여한다. 팥과 고구마 붕어빵을 가르는 역할을 해준다는 것 name과 position, back_number를 받아서 객체에 속성을 부여하는 __init__ __init__이 있는경우 초기값을 지정하지 않으면 에러가 남 마지막에는 같은 클래스 틀에서 생성되었지만 서로 다른 인스턴스가 된다는 것을 보여준다 2. __str__ __str__ method는 print()하면 출력해주는 내용을 지정해준다 str method를 지정하지 않으면 메모리 주소만 출력해줌 str method로 리턴값을 지정해주면 print..

2022. 1. 27. 21:01

파이썬(python)의 객체(object)와 클래스(class)

1. 객체(object) 속성(attribute)과 행동(action)을 가짐 속성은 변수로 행동은 함수로 표현 파이썬은 객체 지향 언어이다. 모든 데이터는 객체로 표현되거나 객체 사이의 관계로 표현된다 여러 물체들을 객체로 표현하여 실제 세상을 모델링 예) 인공지능 축구 프로그램의 축구선수 객체 : 축구선수는 인공지능 프로그램에서 하나의 객체다 행동 : 공을 찬다, 패스한다 속성 : 이름, 포지션 2. class 객체의 설계도 함수명이 snake case(소문자 사용, 단어 사이에는 _로 연결), 객체명은 보통 camel case(각 단어 첫글자를 대문자)를 따른다 class라는 예약어를 사용 class (이름) (상속 객체): 속성 행동 부모 객체는 보통 상속 객체에 object(생략 가능함) 인스턴..

2022. 1. 26. 20:50

파이썬(python)의 generator란?

iterable object를 특수한 방식으로 사용하는 형태 주소값만 가지고 있다가 사용자가 사용할 때 값을 메모리에 반환 out [114]를 보면 0x84~에 iterator가 있다는 거임. 주소값만 가지고 있음 next를 이용해 사용자가 사용을 하면 다음 위치의 값을 메모리에 반환시킴 큰 데이터를 처리할때 메모리를 효율적으로 사용할 수 있음 그림1과 그림2를 보면 리스트가 메모리 528인데 generator는 메모리가 120으로 매우 작다 실제로 사용하고자 할 때 메모리에 값이 반환되어 보인다는 것이 for loop로 보인다 yield나 (), iter() 등으로 생성가능 위 그림은 ()를 사용해서 generator를 생성한 것