본문 바로가기

Programming/C#

C# Generic

Generics

정의

  • 제네릭이 라는 것은 자료형에 일반화된 프로그래밍 기법을 의미한다.
  • 어떠한 자료형도 받아서 처리할 수 잇는 클래스나 메소드를 생성하는 기법
  • 여러 데이터셋을 한번에 묶어서 넣는 List 같은 Collection에도 사용된다.

장점 

  • 타입에 구애 받지 않고 사용할 수 있어서 코드 수를 줄일 수 있다.

단점 

  • 제네릭을 사용함으로 기존과 다른 패턴이 됨으로 가독성이 떨어질 수 있다.

 

namespace OjtTest
{
     class Generic
     {
        public T Data  { get; set;} // 제네릭을 사용한 클래스
     }
 
     class NonGeneric   //제네릭 안사용한 클래스
     {
         public int IData { get; set; }  
         public String SData { get; set; }
         public Double DData { get; set; }
     }
    class Program
    {
        static void Main(string[] args)
        {
           //제네릭을 사용한 클래스객체를 생성하여 사용하는 부분
            Generic generic = new Generic();
            Console.WriteLine(generic.data = 123);
 
            generic generic = new generic();
            Console.WriteLine(generic.data = "xl게임즈");
      
            //제네릭 사용하지 않은 클래스 객체를 생성하여 사용하는 부분
            NonGeneric nongeneric = new NonGeneric();
 
            Console.WriteLine(nongeneric.iData = 123);
            Console.WriteLine(nongeneric.sData = "xl게임즈");
                         Console.WriteLine(nongeneric.dData = 12.3);
                    }
    }
}

 

  • 클래스의 코드 수는 제네릭을 사용했을 때와 안 사용 했을 때 차이가 크다.

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

C# Yield  (0) 2016.02.25
C# Partial Type  (0) 2016.02.18
C# NullType  (0) 2016.02.18
C# Anonymous Method  (0) 2016.02.18
C# -기초-  (0) 2016.02.09