## 이력서, 포폴 첨삭 등 강의 외 문의사항이 있으시면 이곳으로 문의 주세요
강사 깃헙: https://github.com/morishjs
지식저장소: https://wiki.after-camp.com/Home
🎨 포트폴리오: https://morish.dev
📜 이력: https://shorturl.at/gKU68
부트캠프 수료했는데 앞으로 뭘 공부해야 할지 막막하시죠?
👊 부트캠프에서는 취업률 90%라고 하는데... 전 취업이 잘 안돼요! 😢
👊 취업은 했는데 사수가 없어서 너무 불안해요! 🤑
👊 작성한 코드가 동작은 하는데 이렇게 작성하는지 모르겠어요! 🤯
애프터캠프에서는 다음이 가능합니다!
👌 CTO 2번 경험, 다수의 프로젝트를 경험한 풀스택 개발자가 직접 코칭합니다.
👌 코드 리뷰, 커리어 방향성 고민을 같이 해드립니다.
👌 애프터캠프에는 한국, 미국 실리콘밸리 예비 개발자, 현직자가 모인 곳입니다.
강의
수강평
- 부트캠프에서 알려주지 않는 것들 (리액트 렌더링 최적화 편) 2편
- 클론코딩에서 알려주지 않는 것들 (보안, DDD, 마이크로서비스) 2편
- 클론코딩에서 알려주지 않는 것들 (시스템 이론과 DB) 1편
게시글
질문&답변
블로그 링크 문제
복구했습니다!
- 1
- 1
- 26
질문&답변
제네릭과 사용자 정의 타입 가드에 관한 질문
안녕하세요.우선 제가 생각한 답안을 보여드리면type SingleValue = Date | null type RangeValue = [SingleValue, SingleValue] type DatePicker = | { type: 'single'; value: SingleValue } | { type: 'range'; value: RangeValue }; class DatePickerKlass { picker: DatePicker; constructor(picker: DatePicker) { this.picker = picker; } updateValue(date: Date) { if (this.picker.type === 'single') { this.picker.value = date; } else if (this.picker.type === 'range') { this.picker.value = [date, null]; } } }작성해주신 답안 보다 좀 더 간단하게 만들 수 있지 않을까 해서 저 같은 경우엔 discriminated union 으로 문제 풀어봤습니다. updateValue(date:Date) { const isSingle = ():this is DatePicker => this.type === 'single' if(isSingle()) { this.value = date return; } }여기서 타입이 좁혀지지 않는 이유는 타입스크립트의 특성인데요. T에 타입을 제한해도 결국 T는 'placeholder'이기 때문에 특정 타입으로 좁혀지지 않습니다. 저도 실무에서 사용하다보면, 생각대로 안되는 게 참 많은데 이럴 땐 "아! 이건 아직 타입스크립트 개발하시는 분이 구현을 안해놨구나..." 라고 생각합니다. 버전이 높아지면 이런 문제도 해결되는 경우가 있거든요.타입스크립트가 다른 statically-typed 언어에 비해 굉장히 자유도가 높은데, 그만큼 아직 구현이 안된 것이 종종 있습니다.
- 1
- 1
- 53
질문&답변
제네릭 타입 제한을 하는것이 어떤 장점이 있을까요 ?
안녕하세요 시원님 😃 올려주신 예시에선 사실 제한하는 이유를 찾기란 쉽지 않습니다. 아래의 예제를 보시면 조금 사용하는 이유를 찾을 수 있지 않을까 생각하는데, obj에서 object의 key들만 접근하고 싶을 때 아래와 같이 코드를 작성할 수 있습니다. function getValue(key: T, obj: Record) { return obj[key]; } const obj = { key1: 1, key2: 2 }; getValue('key1', obj); // 'key1' 타입으로 안전하게 호출 가능 getValue('key3', obj); // 컴파일 에러 (key3는 obj의 키가 아님)Record의 타입 첫번째 인자는 항상 string | symbol | number 가 와야 하는데요. 이 경우에는 string으로 강제하기 위해 T extends string string 타입으로 제한했습니다. 강의를 조금만 더 들어보시면 제네릭 타입 제한하는 문제들이 있으니 한번 풀어보시면 어느 상황에서 사용할 수 있으신지 깨닫게 되실거에요.그래도 만약 이해가 되지 않으신다면 질문 남겨주세요!
- 1
- 1
- 45
질문&답변
행운문제 닉네임 등록 신청합니다!
등록해드렸습니다 :)
- 0
- 2
- 40
질문&답변
행운문제 테스트 유저 이름 입력 요청
등록했습니다!
- 0
- 2
- 40
질문&답변
행운문제 닉네임 입력 요청
추가해드렸습니다 :)
- 1
- 2
- 49
질문&답변
행운문제 테스트 유저 이름 입력 요청
추가했습니다!
- 1
- 2
- 50
질문&답변
설명 블로그에 대한 질문
복구했습니다. 다시 한번 불편을 드려서 죄송합니다
- 2
- 3
- 44
질문&답변
설명 블로그에 대한 질문
안녕하세요 병호님 설명 블로그가 기술적인 문제로 닫혔습니다 😅불편을 드려서 죄송합니다. 주말 중에 고쳐서 다시 오픈하도록 하겠습니다.
- 2
- 3
- 44
질문&답변
행운동전!
아마 이미 뽑으셔서 저렇게 나온 것 같습니다.
- 0
- 2
- 62