일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- DFS
- 다이나믹 프로그래밍
- 동적 계획법
- git
- react
- db
- Data Structure
- 리트코드
- VIM
- java
- Redux
- 안드로이드
- DP
- Graph
- 프로그래머스
- TypeScript
- network
- vscode
- 그레이들
- 백준
- Javascript
- frontend
- Algorithm
- BFS
- 알고리즘
- Database
- CS
- Python
- LeetCode
- 자바
- Today
- Total
목록분류 전체보기 (390)
늘 겸손하게
목차 디자인 패턴 싱글톤 패턴 옵저버 패턴 팩토리 패턴 디자인 패턴 디자인 패턴은 프로그램을 설계할 때 발생했던 문제점을 효율적으로 해결 할 수 있는 코딩 아이디어, 방법론을 말합니다. 대표적인 디자인 패턴으로는 '싱글톤 패턴', '옵저버 패턴', '팩토리 패턴' 등이 있습니다. 싱글톤 패턴 하나의 클래스가 하나의 인스턴스만을 가지고 계속 재활용해 메모리를 아끼고, 데이터 공유를 수월하게 하는 디자인 패턴. 보통 데이터베이스 연결 모듈에 많이 사용합니다. 메모리 사용량을 줄일 수 있는 장점이 존재하나 모듈간의 결합이 강해져 유지보수성이 떨어지고, TDD를 어렵게 하는 단점이 존재합니다. Java class Singleton { private static class singleInstanceHolder {..
목차 단언의 문제점 타입 가드 단언의 문제점 단언으로 모든 오류를 해결할 순 없다. function printText(el: Element) { console.log(el.textContent) } const h1 = document.querySelector('h1') printText(h1); 타입스크립트는 마지막 줄에서 오류를 출력한다. 여기서 단언을 통해 타입스크립트 에러 출력은 막을 수 있지만 실제 코드를 실행해보면 오류가 발생합니다. function printText(el: Element) { console.log(el.textContent) } const h1 = document.querySelector('h1') as HTMLHeadingElement printText(h1); 위와 같은 문..
목차 문제명 문제풀이 코드 단언? 단언은 '주저하지 않고 딱 잘라 말한다'는 의미이다. 데이터 타입을 개발자가 딱 잘라서 정하는 것을 '단언'이라 한다. 변수에 할당 가능한 데이터 타입이 여러가지일 경우 타입스크립트는 어떤 타입의 데이터가 할당될지 알 수 없는 경우가 있다. 이때 개발자는 단언을 통해 할당되는 데이터 타입을 결정한다. const el = document.querySelector('body') el.textContent = 'Hello world?!' 식별자 el에는 HTMLBodyElement 혹은 null 타입의 데이터가 할당될 수 있다. ('body' 요소가 없을 수 있으니) 타입스크립트는 el에 할당될 데이터 타입이 어떤 타입인지 알 길이 없다. 이러한 경우 개발자가 el 에 할당될..
목차 타입추론 판단근거 1 - 초기화 된 변수 판단근거 2 - 기본값이 설정된 매개변수 판단근거 3 - 반환 값이 있는 함수 타입 추론 타입 추론은 말 그대로 변수의 데이터 타입을 추측하는 것을 말한다. 데이터 타입의 추측 근거는 아래와 같습니다. 1. 초기화된 변수 2. 기본값이 설정된 매개변수 3. 함수의 반환값 판단 근거 1 - 초기화된 변수 let num = 12 let country = 'Korea' let isTrue = true 판단 근거 2 - 기본값이 설정된 매개변수 매개변수에 기본값이 정해져 있다면 기본값의 데이터 타입으로 식별자 데이터 타입 추론 function multi2(a = 2) { return a * a; } // 이렇게 쓰지 않아도 됨 function multi2(a: nu..