C#/C#기초
9.일반화 프로그래밍
공부를하자
2023. 5. 21. 00:56
1.일반화 프로그래밍
1)정의 : 데이터 형식 일반화를 이용하는 프로그래밍 패러다임
한가지 코드를 다양한 데이터 형식에 활용하는것.
*일반화(Generalization) :
특수한 개념으로부터 공통된 개념을 찾아 묶는 것
2)일반화 메소드(Generic Method)
-데이터 형식을 일반화한 메서드
-메서드 이름 뒤 형식 매개변수를 입력하여 작성
-형식 매개변수 사이 <>사이에 일반화 데이터 형식을 입력
-컴파일 단계에서 형식매개변수는 실제형식으로 치환된다.


3)일반화 클래스(Genenric Class)
-데이터 형식을 일반화한 클래스
-클래스 뒤에 형식매개변수를 입력하여 작성


4)형식 매개변수 제약하기
-형식 매개변수가 특정조건을 갖추도록 강제하는 것
-where 키워드를 사용하여 구현



5)일반화 컬렉션(Genenric Collection)
-컬렉션(ArrayList,Queue,Stack,Hashtable)은 object 형식기반(모든 데이터형식의 기반)
-컬렉션의 요소에 접근할 때마다 발생하는 박싱/언박싱은 성능을 저하시킨다.
-일반화 컬렉션은 형식매개변수를 이용하여 버그와 성능저하를 줄임(컴파일 단계에서 특정형식으로 치환)
-List<>,Queue<T>,Stack<T>,Dictionary<TKey,TValue>대표적으로 있다