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

      [Algorithm] 다이나믹 프로그래밍(DP) 개념 및 적용

      목 차 개요 DP를 사용하는 이유 DP 적용하기 DP 체감하기 개요 Dynamic Programmin(DP) 또는 동적 프로그래밍이라고도 하는데, DP는 복잡한 문제를 간단한 여러개의 문제로 나눠서 푸는 방식이다. DP는 작은 문제가 반복하여 발생하고 이에 대한 해답을 저장해두고 재사용 하는 특징이 있다. 이렇게 함으로써 계산 속도를 크게 향상시킬 수 있다. DP를 사용하는 이유 DP는 주로 다음 두 가지 속성을 가진 문제에 적용된다. 1. 중복되는 문제 해결: 대표적으로 피보나치 수열의 예시가 있는데, 이 피보나치 수열을 재귀함수로 풀어본다면 코드는 아래 코드와 비슷할 것이다. Fn 을 계산하기 위해서 F(n-1) 과 F(n-2)을 계산해야 하지만, 이들 역시 F(n-3)과 F(n-4)를 필요로 한다...

      Algorithm/Concept 2023.07.29

      [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

      [Sequelize-Error] Dialect needs to be explicitly supplied 해결방법

      에러내용: ERROR: Dialect needs to be explicitly supplied as of v4.0.0 문제 발생 과정 사건의 발달은 처음이지만 migrate를 해서 데이터베이스 관리를 해보고 싶은 마음에서 시작되었다. 그리고 이 에러는 migrate를 해서 table을 만드는 과정에서 생긴 에러이다. 문제 발생 전 Typescript로 ~/config/config.ts 파일에 작성하고 컴파일링을 시도했다. 근데 Error 메세지로 '너 경로에 파일 없는데? sequelize init은 했니?' 라고 한다. (아래 사진 참고) 구성 파일에서 입력을 찾을 수 없습니다: 에러메세지 확인 일단 이 문제는 최종적으로 컴파일링의 문제였고, VSCODE를 껐다 키니까 해결되었다. 문제 발생 위에 하나..

      BE/Error 2023.06.15

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

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

      BE/TypeScript 2023.06.11

      [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

    글 보관함

    태그

      MYSQLBOJjava백준타입스크립트코딩자바Algorithmgit알고리즘

    즐겨찾기

    방문자 수

    • Today
    • Yesterday
    • Total
    myoskin

    티스토리툴바