🔥 소개

172자
3분

프로그래밍을 하다 보면 여러 타입에 대해 동작하는 코드를 작성해야 할 때가 있습니다. 예를 들어, 정수 배열, 문자열 배열, 사용자 정의 타입의 배열 등을 다루는 경우가 그렇죠. 이런 상황에서 매번 비슷한 코드를 반복해서 작성한다면 코드의 중복이 발생하고 가독성과 유지보수성이 떨어질 것입니다.

이럴 때 우리는 제네릭(Generics) 을 사용할 수 있습니다. 제네릭은 Swift의 가장 강력한 기능 중 하나로, 타입에 구애받지 않고 유연하고 재사용 가능한 함수와 타입을 작성할 수 있게 해줍니다. 제네릭을 이용하면 코드의 중복을 피하고, 추상화된 방식으로 코드의 의도를 명확히 표현할 수 있게 됩니다.

사실 여러분은 이미 제네릭을 사용하고 있었을지도 모릅니다. Swift 표준 라이브러리의 상당 부분이 제네릭으로 구성되어 있기 때문이죠. 예를 들어, ArrayDictionary는 모두 제네릭 컬렉션입니다. Int 값을 저장하는 배열, String 값을 저장하는 배열 등 어떤 타입의 값이라도 배열에 담을 수 있습니다. 마찬가지로 딕셔너리도 지정된 어떤 타입이든 값으로 저장할 수 있죠.

이번 장에서는 이러한 제네릭의 개념과 사용 방법에 대해 자세히 알아보도록 하겠습니다. 제네릭 함수와 제네릭 타입을 정의하는 방법, 제네릭에 제약 조건을 추가하는 법 등을 차근차근 살펴볼 것입니다. 제네릭을 잘 활용한다면 더욱 유연하고 표현력 있는 코드를 작성할 수 있을 것입니다. 그럼 시작해 볼까요?

YouTube 영상

채널 보기
미들웨어 vs 가드, 왜 NestJS에서는 가드가 더 똑똑할까? | NestJS 가이드
존 매카시가 들려주는 인공지능의 탄생 이야기
Const 펑터 - 아무것도 안 하는 펑터가 필요한 이유 | 프로그래머를 위한 카테고리 이론
Zod로 스키마 유효성 검사 구현하기 | NestJS 가이드
NestJS 필터 바인딩 - Method, Controller, Global Scope 비교 | NestJS 가이드
바이펑터란? | 프로그래머를 위한 카테고리 이론
C++ 속의 펑터 | 프로그래머를 위한 카테고리 이론
매번 ValidationPipe 복붙하세요? NestJS 전역 파이프로 한 번에 해결하기 | NestJS 가이드