Giter Club home page Giter Club logo

study-ts-deepdive's Introduction

Typing SVGvisited

study-ts-deepdive's People

Contributors

functionbee avatar

Watchers

 avatar

study-ts-deepdive's Issues

Week2 : 3장 타입 추론(Type Inference)

3장 타입 추론(Type Inference)

  • 📝 Item 19: 추론 가능한 타입을 사용해 장황한 코드 방지하기(Avoid Cluttering Your Code with Inferable Types)
  • 📝 Item 20: 다른 타입에는 다른 변수 사용하기(Use Different Variables for Different Types)
  • 📝 Item 21: 타입 넓히기(Understand Type Widening)
  • 📝 Item 22: 타입 좁히기(Understand Type Narrowing)
  • 📝 Item 23: 한꺼번에 객체 생성하기(Create Objects All at Once)
  • 📝 Item 24: 일관성 있는 별칭 사용하기(Be Consistent in Your Use of Aliases)
  • 📝 Item 25: 비동기 코드에는 콜백 대신 async 함수 사용하기(Use async Functions Instead of Callbacks for Asynchronous Code)
  • 📝 Item 26: 타입 추론에 문맥이 어떻게 사용되는지 이해하기(Understand How Context Is Used in Type Inference)
  • 📝 Item 27: 함수형 기법과 라이브러리로 타입 흐름 유지하기(Use Functional Constructs and Libraries to Help Types Flow)

'any' 타입

문제:

주어진 배열에 있는 모든 요소를 더하는 함수를 작성해 보세요. 함수는 어떤 유형의 숫자든지 받아들일 수 있어야 합니다.

예를 들어, 다음과 같은 배열이 주어졌을 때:

let numbers: any[] = [1, 2, 3, 4, 5];

위 배열의 모든 요소를 더하는 함수를 작성해 보세요.
함수는 'any' 타입을 사용하여 어떤 유형의 숫자든지 받아들일 수 있어야 합니다.

✔️ 우아한 타입스크립트 with 리액트 : 배달의민족 개발 사례로 살펴보는 우아한형제들의 타입스크립트와 리액트 활용법

[목차]


1장 들어가며

  • 1.1 웹 개발의 역사
  • 1.2 웹자바스크립트의 한계

2장 타입

  • 2.1 타입이란
  • 2.2 타입스크립트의 타입 시스템
  • 2.3 원시 타입
  • 2.4 객체 타입

3장 고급 타입

  • 3.1 타입스크립트만의 독자적 타입 시스템
  • 3.2 타입 조합
  • 3.3 제네릭 사용법

4장 타입 확장하기·좁히기

  • 4.1 타입 확장하기
  • 4.2 타입 좁히기 - 타입 가드
  • 4.3 타입 좁히기 - 식별할 수 있는 유니온
  • 4.4 Exhaustiveness Checking으로 정확한 타입 분기 유지하기

5장 타입 활용하기

  • 5.1 조건부 타입
  • 5.2 템플릿 리터럴 타입 활용하기
  • 5.3 커스텀 유틸리티 타입 활용하기
  • 5.4 불변 객체 타입으로 활용하기
  • 5.5 Record 원시 타입 키 개선하기

6장 타입스크립트 컴파일

  • 6.1 자바스크립트의 런타임과 타입스크립트의 컴파일
  • 6.2 타입스크립트 컴파일러의 동작
  • 6.3 타입스크립트 컴파일러의 구조

7장 비동기 호출

  • 7.1 API 요청
  • 7.2 API 상태 관리하기
  • 7.3 API 에러 핸들링
  • 7.4 API 모킹

8장 JSX에서 TSX로

  • 8.1 리액트 컴포넌트의 타입
  • 8.2 타입스크립트로 리액트 컴포넌트 만들기
  • 8.3 정리

9장 훅

  • 9.1 리액트 훅
  • 9.2 커스텀 훅

10장 상태 관리

  • 10.1 상태 관리
  • 10.2 상태 관리 라이브러리

11장 CSS-in-JS

  • 11.1 CSS-in-JS란
  • 11.2 유틸리티 함수를 활용하여 styled-components의 중복 타입 선언 피하기

12장 타입스크립트 프로젝트 관리

  • 12.1 앰비언트 타입 활용하기
  • 12.2 스크립트와 설정 파일 활용하기
  • 12.3 타입스크립트 마이그레이션
  • 12.4 모노레포

13장 타입스크립트와 객체 지향

  • 13.1 타입스크립트의 객체 지향
  • 13.2 우아한형제들의 활용 방식
  • 13.3 캡슐화와 추상화
  • 13.4 정리

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.