IT 공부/python

2020-10-11 Python 과 Ruby 객채의 모듈화

JONGI-N CHOI 2020. 10. 11. 13:31

Module

양이 많아진 객체를 서로 연관있는 객체들을 저장하기 위한 그릇

 

앞에서 Module은 연관있는 함수들만 담는 상자라고 했지만, 사실은 함수만 들어올 수도 있고 , 함수나 변수를 담고있는 객채가 들어올 수 도있다. 

 

 

Python 에서 Object가 담긴 Module 호출하기

 

<lib.py 파일>

class A:
    def a(self):
        return 'a'

우선 Object가 담겨있는 Module을 lib.py라는 파일로 하나 저장해 둔다. 

 

<1.py 파일>

import lib

obj = lib.A()
print(obj.a())

 python에서는 Module을 불러올 때 import를 사용한다.  

obj = lib.A()

lib라는 Module 안에 A라는 Class를 instance화 시켜서 obj라는 변수에 담은 것이다. 

.

print(obj.a())

obj라는 instance에 a라는 함수를 호출해서 print로 출력한 것이다. 

 

그러면 결과값은 "a"가 나오게 된다.

Ruby 에서 Object가 담긴 Module 호출하기

 

<lib.rb 파일>

module Lib
  class A
    def a()
      return 'a'
    end
  end
end

우선 Object가 담겨있는 Module을 lib.py라는 파일로 하나 저장해 둔다. 

 

<1.rb 파일>

require_relative 'lib'

obj = Lib::A.new()
p obj.a()

 ruby 에서는 Module을 불러올 때 require_relative(상대위치) 사용한다.  

 

obj = Lib::A.new()

lib라는 Module 안에 A라는 Class를 instance화 시켜서 obj라는 변수에 담은 것이다. 

 

p obj.a()

obj라는 instance에 a라는 함수를 호출해서 p로 출력한 것이다.