IT 공부/python

·IT 공부/python
상속 (Inheritance) 기존에 있었던 객체의 기능을 그대로 상속하면서 새로운 기능을 추가하는 행위 코드의 재활용성을 늘려주고, 중복을 제거할 수 있게 도와준다. 자전거를 하나의 객체라고했을 때 부품하나하나는 함수라고 생각을한다. 이 함수들을 모아서 자전거라는 객체를 만든다. 기본적인 자전거의 기능을 유지한체 새로운 기능을 추가해서 새로운 객체(분위기 있는 자전거)를 만든다. 분위기 있는 자전거 객체를 상속해서 새로운 객체( 강력 브레이크 자전거 객체)를 만들고 강력 브레이크 자전거 객체를 상속해서 새로운 객체 (기차 자전거 객체)를 만든다. 이렇듯 , 이미 만들어져있는 객체에 새로운 기능을 추가해서 새로운 객체를 만드는 행위가 상속이다. 상속은 기능을 상속하는 것이다. 기능을 상속해서 새로운 객체..
·IT 공부/python
set / get method instance 변수의 값을 불러오거나 변경하기 위한 method p c1.value c1.value = 20 ruby에서는 instance(c1)에 직접 접근해서 value 값을 불러오거나 변경하는 것이 불가능 하다. def show() p @value end c1.show() 그래서 instance 변수에 접근하기 위해서는 method를 만들어서 instance 변수에 접근해야한다. 다만, 이것을 편리하게 해주는 명령어가 있다. 속성 (attribute) 내부에서 접근하는 것이아니라 외부에서 접근하도록 도와주는 instance변수를 속성이라고 한다. attr_reader :value attr_writer :value attr_accessor :value attr_read..
·IT 공부/python
그러면 왜 객체 지향 프로그래밍을 할까??? class Cal #생성자, constructor def initialize(v1, v2) @v1 = v1 # @변수 => 인스턴스 변수 -> instance가 속해있는 모든 method에서 사용가능 @v2 = v2 end def add() return @v1+@v2 end def subtract() return @v1-@v2 end end c1 = Cal.new(10,10) p c1.add() # = p(c1.add()) p c1.subtract() c2 = Cal.new(30,20) p c2.add() p c2.subtract() # 동일한 행위를 하더라도 각 인스탄스가 가지고있는 변수는 다르기 때문에 # 결과는 다르다 . def add(v1, v2) re..
·IT 공부/python
Instance를 보통 객체라고 한다. 객체 지향 프로그래밍에서는 함수대신 method(행위)라는 말을 사용 변수 -> 속성, 상태 라고도 말한다. 객체사용 계산기(calculate)의 기능을하는 Cal이라는 이름의 class를 만들고자 한다. c1 = Cal.new(10,10) Cal이라는 class를 복제한 instance를 생성함 그 값을 c1라는 변수에 담아둔다. 연산을 할 대상을 괄호 안에 넣는다. p c1.add() # = p(c1.add()) p c1.subtract() instance에 저장되어있는 (10,10)의 값을 더하거나 뺀 결과물을 얻기 위해서 instance 안에있는 method를 실행시킨다 -> c1.add() , c2.subtract() 여기서 puts()이 아닌 p()를 사..
·IT 공부/python
객체 지향 프로그래밍(Object oriented programming) object는 class 와 instance로 구성되어있다. class 는 그룹 instance는 구성요소라고 생각하면 된다. 포유류는 class에 해당하고 , 인간 , 강아지, 고양이 등은 instance에 해당한다. module과 비슷한 역할이 class다 일종의 수납공간 그룹핑 하지만 module과는 다르게 함수뿐만아니라 연관되어있는 변수를 담는 그릇이다. 연관되어있는 함수와 변수를 그룹핑한 것이 class다 class를 복제해서 instance를 만든다. 하나의 class를 만들면 그 것을 복제한 여러개의 instance를 만들 수 있다. 각각의 instance들은 class 와 똑같은 함수와 변수를 가지고 있다. insta..
·IT 공부/python
function def a3() puts('aaa') end a3() def a3(): print('aaa') a3() function 에서 두 언어의 차이점은 ruby는 함수 마지막에 end로 끝나야 한다는 점 python은 함수이름 뒤에 : 클론을 붙힌다. def f4(a1) return a1 end puts(f4('f4')) def f5 a1 return a1 end puts(f5 'f5') def f6 a = 1 b = 2 a + b #return을 생략해도 맨 마지막 값이 자동으로 return end puts f6 ruby에서는 문법적으로 생략하는 경우가 있다. 함수에서 () 를 생략가능하다. 또한, return도 생략가능 함수 끝에 나오는 값을 자동으로 return block 5.times()..
JONGI-N CHOI
'IT 공부/python' 카테고리의 글 목록 (6 Page)