Daniel: The Dev Story
Daniel: The Dev Story
    • 홈
  • 분류 전체보기
    • 프로젝트
    • BE
      • --------Java--------
      • Java
      • Basic
      • Spring
      • --------JS--------
      • JavaScript
      • TypeScript
      • NodeJS
      • Express
      • Basics
      • --------Common--------
      • Error
    • FE
      • React
    • DB
      • mySQL
    • Algorithm
      • Concept
      • BackJun
      • Data Structure
      • Sort
    • Git
    • Math
    • Book
    • Private
      • Database
      • Tip
  • 글쓰기
  • 관리자
  • myoskin

      [TypeScript] 타입스크립트로 sequelize를 활용하여 데이터베이스 연결

      준비사항: express, @types/express, mysql2, sequelize, sequelize-cli, dotenv 시작하기 sequelize init으로 config, migrations, models, seeders디렉토리를 생성한다. 이 디렉토리들을 src 디렉토리 안에 넣어도 괜찮고, 밖에 놔도 괜찮다. 자기 스타일대로 하면 된다. 나는 src 디렉토리 안으로 옮겼다. 각각 설정, 데이터베이스 관리, 모델, 초기 데이터이다. // 터미널 sequelize init 환경변수 설정 .env 파일을 만들어주고 환경변수를 설정해 준다.(환경변수를 모르면 나중에 따로 찾아보던가 하자) 환경변수는 key=value 형식으로 작성한다. 데이터베이스 연결에 필요한 username(DB usernam..

      BE/TypeScript 2023.06.15

      [OnlyForMe] TSConfig 셋업(프로젝트 구조 정리하기)

      보호되어 있는 글입니다.

      BE/TypeScript 2023.06.13

      [TypeScript] 다양한 Utility Type이해하기

      기본 지식: Index 목 차 Index Type이란? Mapped Type이란? Readonly Type Pick type Omit Type Index Type이란? type역시 객체 프로퍼티에 접근방법을 동일하게 사용 가능하다. 예) type gender = User['gender'] Mapped Type이란? Mapped Type의 기본 문법이다. 여기서 [P in keyof T] 는 객체 반복문인 for...in...문 이라고 생각하면 편하다. T로 들어오는 타입의 프로퍼티를 빙글빙글 돌며 P에 할당하고, T[P](Index Type)를 통해서 그 속성의 타입을 가져온다. type MappedType = { [P in keyof T]: T[P]; }; Mapped type의 예시는 다음과 같다. ..

      BE/TypeScript 2023.06.13

      [TypeScript] type과 interface 차이점과 사용 팁

      공통점과 차이점 먼저 다음과 같은 type과 interface가 있다고 가정하자. // type type UserType = { name: string; age: number }; // interface interface UserInterface { name: string; age: number; } 둘 다 자신을 따르는 객체와 클래스를 만들 수 있다. 예시는 다음과 같다.(객체) const user1: UserType = {name: "John", age: 25}; const user2: UserInterface = {name: "Jane", age: 30}; 확장성(Extendibility) interface는 다른 interface를 확장할 수 있다. type은 불가능하다. interface Use..

      BE/TypeScript 2023.06.13

      [OnlyForMe] 기본 TS 프로젝트 설정하는 방법

      보호되어 있는 글입니다.

      BE/TypeScript 2023.06.12

      [TypeScript] abstract(추상 클래스)에 대해 이해하기

      추상클래스: 자체적으로 인스턴스를 생성할 수 없는 클래스를 말한다. 추상클래스는 일반적으로 하나 이상의 추상 메소드(abstract method)를 포함하고, 이 메소드들은 선언만 있고 구현 내용은 없다. 추상클래스를 사용하는 이유는? 추상클래스를 사용하는 이유는 기본적인 구조나 기능을 정의하고, 그 것을 확장하는 자식 클래스들에 특정 메소드 구현을 강제하기 위함이다. 이렇게 함으로 자식 클래스들이 일관된 방식으로 동작하도록 보장할 수 있다. // 추상 클래스, Animal 클래스는 인스턴스를 생성할 수 없음 abstract class Animal { // abstract 사용으로 추상 메소드 추가함 abstract makeSound(): void; move(): void { console.log('Mo..

      BE/TypeScript 2023.06.11

      [TypeScript] 함수와 메소드에 type alias를 붙이는 방법

      type alias: 타입을 변수 처럼 미리 저장하고 사용하기 함수에 Type alias 사용하기 파라미터의 타입과, 리턴값의 타입을 지정 가능하다. ⚠️ 함수에 type alias를 적용시킬 때는 함수 표현식으로 함수를 작성해야 한다. // 함수의 type alias 지정 // a, b 파라미터는 number 타입이어야 한다. 리턴값도 number 타입이어야 한다. type AddFunction = (a: number, b: number) => number; let add: AddFunction = function(x, y) { return x + y; }; 메소드에 type alias 사용하기 객체에 type을 지정해주면 된다. 타입을 위에서 선언해도 되고, 아니면 객체 타입을 지정하는 곳에서 바로 ..

      BE/TypeScript 2023.06.06

      [TypeScript] Literal Type과 as const이해하기

      Literal Type: 특정 값 자체가 타입이 되는 것이다. 문자열 값 자체를 타입으로, 숫자 값 자체를 타입으로, true 혹은 false를 가진 불린 값 자체를 타입으로 가지게 할 수 있다. Union Type으로도 지정 가능 | UnionType이란? type Pet = "cat" | "dog"; // Literal Type으로 지정함 let myPet: Pet; myPet = "cat"; // OK myPet = "dog"; // OK myPet = "bird"; // 오류! "bird"는 Pet 타입에 없습니다. as const as const를 객체나 배열 뒤에 붙여주면 프로퍼티의 값이나 요소의 값을 변경할 수 없다. let obj = { name: "John", age: 30 } as co..

      BE/TypeScript 2023.06.05

      [TypeScript] 초기 설정 및 데이터 유형별 타입 지정 방법

      타입스크립트 설치 npm install -g typescript 컴파일 할 때 옵션 설정: tsconfig.json 파일에 다음과 같이 설정 사용할 자바스크립트 버전 설정 module은 파일간 내보내기/가져오기 기능 사용할 때 무슨 문법을 사용할지 정하는 것이다. commonJS: require 문법 es2015, esnex는 import 문법 { "compilerOptions": { "target": "ES6", "module": "commonJS" } } 자동 컴파일 기능: 터미널에 tsc -w 입력 ⚠️오류 발생시: 터미널 경로 확인 tsc -w 변수에 타입 지정가능 string 타입 이외의 타입이 입력될 시 오류 발생 입력 가능 타입 List :string :number :boolean :null..

      BE/TypeScript 2023.06.04

    1
    Daniel: The Dev Story

    찾기

    공지

    최근 글

    인기글

    최근 댓글

    캘린더

      5 / 2025
      일 월 화 수 목 금 토
      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

    글 보관함

    태그

      코딩타입스크립트자바Algorithmjava백준BOJMYSQL알고리즘git

    즐겨찾기

    방문자 수

    • Today
    • Yesterday
    • Total
    myoskin

    티스토리툴바