C#/C#기초

15.dynamic형식

공부를하자 2023. 6. 3. 15:24

1.dynamic 형식

 1)정의

   -런타임에서 형식검사가 이루어지는 형식

   -dynamic 제외한 모든 데이터형식은 컴파일 단계에서 형식검사를 수행

   *일반형식

   *dynamic 형식

*오리 타이핑

  -기존의 OOP(객체지향)에서는 상속을 받은 객체는 부모의 메서드를 구현하지 않아도 사용할 있다.

 

   -객체를 상속의 관계가 아닌 행동의 관점으로 본다. 오리가 오리이기 위해 걷고,수영하고, 거리면 오리다.

   -로봇이라는 객체도 걷고 수영하고 거리면 오리를 상속받지 않아도 오리로 취급한다.

    -dynamic 형식은 런타임에 형식추론을 하기 떄문에 메소드들은 오류가 발생하지 않는다.

 

 2)dynamic형식과 동적언어 상호운영

  -DLR CLR 위에 동작하여 동적언어를 실행한다.

  -C# 동적언어코드와의 상호동작을 지원하고 그것을 dynamic형식을 사용한다.

  *CLR(Common LangugaeRuntime) :

     마이크로소프트 닷넷의 가상 머신 구성 요소이다. 프로그램 코드를 위한 실행 환경을 정의하는

      마이크로소프트의 공통 언어 기반 기능이다.

  *DLR(Dynamic Langugae Runtime) :

   동적 언어에 대한 서비스 집합을 CLR(공용 언어 런타임)에 추가하는 런타임 환경

  *동적언어 : 형식추론을 런타임에 결정 (Python,Ruby,JavaScipt)

  *정적언어 : 형식결정을 컴파일단계에서 결정(C,C++,C#,Java)

 

 

*DLR 제공하는 클래스

   3)파이썬 코드 사용하기

 

 

 

'C# > C#기초' 카테고리의 다른 글

17.스레드와 테스크  (2) 2023.06.10
16.파일 다루기  (0) 2023.06.08
14.리플렉션과 애트리뷰트  (0) 2023.05.31
13.Linq  (0) 2023.05.24
12.람다식  (0) 2023.05.23