일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- dotenv
- Clone
- Python
- git
- generic
- 앙상블
- nginx
- type
- JavaScript
- security
- BOJ
- C++
- scss
- vuetify
- TypeScript
- npm
- VUE
- AI
- machine learning
- webpack
- var
- loop
- condition
- property
- docker
- vue.js
- bash
- leetcode
- C#
- 보안
- Today
- Total
목록generic (2)
ice rabbit programming
이번 글에서는 OOP에서 함수(메소드)와 클래스를 General하게 사용할 수 있는 Generic을 다룰 것이다. C#이나 자바의 Generic, C++의 Template 개념과 완전히 동일하다. 때문에 간단하게만 살펴보자. 타 언어에서 다루어보았다면 어렵지 않게 이해할 수 있을 것이다. 아래 함수 Generic의 예시를 보자. function hello(msg: T): T { return msg } hello('hi') // str hello(35) // number 타 언어와 동일함을 볼 수 있다. T에 들어가는 type이 모든 T에 적용된다. Union Type을 이용하여 제약을 줄 수도 있다. C#에서 generic - where 구문과 같다. function hello(msg: T) : T { ..
이번 글에서는 아주 중요하고 또 자주 쓰이는 개념인 Generic에 대해서 다루어보려고 한다. C++의 Template, Java의 Generic과 같은 개념으로 메소드나 클래스를 여러 타입에 대해서 똑같이 쓸 수 있는 것이다. 다음 예시로 필요성을 한 번 보자. public double SumDouble(double d1, double d2) { return d1+d2; } public int SumInt(int i1, int i2) { return i1+i2; } 만약 Generic을 사용하지 않고 double의 합과 int의 합을 구하고 싶다면 메소드 오버로딩을 통해서 구현했을 것이다. 틀린 구현은 아니지만 작성하기 번거로우며, 같은 동작을 하는 메소드가 두 개 존재하여 가독성을 해치고 혼란을 줄 ..