Development110 [Design Pattern] Singleton Pattern 싱글턴 패턴은 특정 클래스에 객체 인스턴스가 하나만 만들어지도록 해주는 패턴. 클래스 인스턴스를 하나만 만들고, 그 인스턴스로의 전역 접근을 제공한다. "스스로에게 어떻게 하면 한 클래스의 인스턴스를 두 개 이상 만들지 않게 하지?" 라는 질문을 던져보기. 고전적인 싱글턴 패턴 구현법 export class Singleton { // 하나뿐인 인스턴스를 저장할 변수 private static uniqueInstance: Singleton; // 생성자를 private으로 선언하여 외부에서 생성할 수 없도록 한다. private Singleton() { } public static getInstance(): Singleton { if (!Singleton.uniqueInstance) { Singleton... 2023. 3. 13. [TypeScript] 이펙티브 타입스크립트- 6장 타입 선언과 @types https://velog.io/@fullth/%EC%9D%B4%ED%8E%99%ED%8B%B0%EB%B8%8C-%ED%83%80%EC%9E%85%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-6%EC%9E%A5-%ED%83%80%EC%9E%85-%EC%84%A0%EC%96%B8%EA%B3%BC-types 아이템 45 devDependencies에 typescript와 @types 추가하기 npm에선 package.json을 통해 라이브러리들의 버전을 지정한다. npm은 세 가지 종류의 의존성을 구분해서 관리한다. dependencies 현재 프로젝트를 실행하는데 필수적인 라이브러리들이 포함됨. 런타임에 어떤 라이브러리가 사용된다면 해당 항목에 포함되어야 함. 해당 프로젝트를 npm에 공.. 2023. 3. 13. [TypeScript] 이펙티브 타입스크립트- 5장 any 다루기 any는 프로젝트에 존재하지 않아야 하고 무조건적으로 배척해야 한다고 생각했지만, 챕터에 any다루기가 있는 것으로 보아 피할 수 없는 경우가 반드시 존재하거나, 옳은 방향으로 사용한다면 많은 이점을 가져다 준다거나 등의 이유가 있을 것으로 보임. 어느 방향인지 알아보는 것을 목표로 스터디. 아이템 38 any 타입은 가능한 한 좁은 범위에서만 사용하기 어떤 변수가 A 타입과 동시에 B 타입에 할당 가능하다면, 오류를 제거하는 방법은 두 가지. 변수를 any타입으로 선언 / 함수안의 매개변수를 아이템 39 any를 구체적으로 변형해서 사용하기 아이템 40 함수 안으로 타입 단언문 감추기 아이템 41 any의 진화를 이해하기 아이템 42 모르는 타입의 값에는 any 대신 unknown을 사용하기 아이템 4.. 2022. 6. 13. [Algorithm] 유형 목록 [분할정복 알고리즘] - 이진 탐색 - 합병 정렬 - 퀵 정렬 - 선택 정렬 [동적 프로그래밍 알고리즘] - 피보나치 수열 문제 - 연쇄 행렬 곱셈 문제 - 스트링 편집 거리 문제 - 모든 정점 간의 최단 경로 - 저울 문제 [탐욕법(욕심쟁이 알고리즘)] - 동전 거스름돈 문제 - 배낭문제 - 최소 신장 트리 - 최단 경로 - 작업 스케줄링 문제 - 작업 선택 문제 - 허프만 코딩 * 탐욕법을 적용해 최소 신장 트리를 구하는 알고리즘 - 프림 알고리즘 - 크루스칼 알고리즘 [정렬 알고리즘] - 버블, 선택, 삽입, 셸, 합병, 퀵, 힙 - 비교 기반 정렬의 하한 - 계수 정렬 - 기수 정렬 [탐색 알고리즘] - 순차, 이진 - 탐색 트리 - 해싱 [근사 알고리즘] - 클래스 P와 클래스 NP - NP-완.. 2022. 6. 11. [TypeScript] 이펙티브 타입스크립트- 4장 타입설계 GitHub - fullth/effective-typescript: Effective TypeScript: 62 Specific Ways to Improve Your TypeScript Effective TypeScript: 62 Specific Ways to Improve Your TypeScript - GitHub - fullth/effective-typescript: Effective TypeScript: 62 Specific Ways to Improve Your TypeScript github.com 아이템 28 유효한 상태만 표현하는 타입을 지향하기(valid-states) 타입을 잘 설계 -> 직관적인 코드를 작성할 수 있음. 효과적인 타입설계 -> 유효한 상태만 표현할 수 있는 타입을 만들어.. 2022. 6. 2. [TypeScript] 이펙티브 타입스크립트- 3장 타입 추론 타입스크립트는 타입 추론을 적극적으로 수행한다. 타입 추론은 수동으로 명시해야 하는 타입 구문의 수를 엄청나게 줄여준다. -> 코드의 전체적인 안정성 향상. 타입스크립트 초보자 vs 숙련자 -> 타입 구문의 수에서 차이 보임. 전부 다 타입을 도배할 필요가 없다는 것을 알 수 있음. 불필요한 타입 구문은 필요없음. 타입 추론에서 발생할 수 있는 문제와 그 해법이 3장의 내용. 목표: 타입 추론이 가능한 경우라도 타입 선언을 작성해야 하는 것이 필요한 상황은 언제인지 이해하기. 아이템 19 추론 가능한 타입을 사용해 장황한 코드 방지하기 결국 타입을 위한 언어 -> 변수를 선언할 때마다 타입을 명시해야 한다고 생각 -> 정곡 let x: number = 12; (x) -> let x = 12; 로 충분. .. 2022. 5. 18. [JavaScript] CallBack Function (코어 자바스크립트(정재남 저- 위키북스)를 참조하여 작성.) 코어 자바스크립트 - YES24 자바스크립트의 근간을 이루는 핵심 이론들을 정확하게 이해하는 것을 목표로 합니다최근 웹 개발 진영은 빠르게 발전하고 있으며, 그 중심에는 자바스크립트가 있다고 해도 결코 과언이 아니 www.yes24.com 콜백함수란? 다른 코드의 인수로서 넘겨주는 실행 가능한 코드를 말한다. 콜백을 넘겨받는 코드는 이 콜백을 필요에 따라 즉시 실행할 수도 있고, 아니면 나중에 실행할 수도 있다. -위키백과- 콜백함수에 대해 일상생활의 알람시계에 비유. 약속시간에 늦지 않기 위해 중간중간 잠에서 깨어 핸드폰을 확인하는 것과(수시로 구하는 함수를 직접 호출), 알람시계의 알람을 맞춰놓는 것. (알람설정 함수를 호출 -> 호출 당.. 2022. 5. 11. [TypeScript] 이펙티브 타입스크립트-(Part.2) 2장 타입스크립트의 타입 시스템 이펙티브 타입스크립트 - YES24 타입스크립트는 타입 정보를 지닌 자바스크립트의 상위 집합으로, 자바스크립트의 골치 아픈 문제점들을 해결해 준다. 이 책은 《이펙티브 C++》와 《이펙티브 자바》의 형식을 차용해 타입스 www.yes24.com GitHub - fullth/effective-typescript: Effective TypeScript: 62 Specific Ways to Improve Your TypeScript Effective TypeScript: 62 Specific Ways to Improve Your TypeScript - GitHub - fullth/effective-typescript: Effective TypeScript: 62 Specific Ways to Improve Y.. 2022. 5. 3. [JavaScript] this (코어 자바스크립트(정재남 저- 위키북스)를 참조하여 작성했습니다.) 코어 자바스크립트 - YES24 자바스크립트의 근간을 이루는 핵심 이론들을 정확하게 이해하는 것을 목표로 합니다최근 웹 개발 진영은 빠르게 발전하고 있으며, 그 중심에는 자바스크립트가 있다고 해도 결코 과언이 아니 www.yes24.com 자바스크립트에서는 실행 컨텍스트가 활성화 될 때(생성될 때), this의 정보가 결정됩니다. (실행 컨텍스트에 대한 설명은 아래 포스팅을 참고하시면 됩니다.) [JavaScript] 실행 컨텍스트 (코어 자바스크립트(정재남 저- 위키북스)를 참조하여 작성했습니다.) (ECMAScript Spec 9.4에 해당 내용이 명세되어 있습니다.) 코어 자바스크립트 - YES24 자바스크립트의 근간을 이루는 핵.. 2022. 5. 3. 이전 1 ··· 3 4 5 6 7 8 9 ··· 13 다음