ProgrammingLang 119

[typescript] 10. class 접근 제한자, super VS this, setter/ getter

[typescript] 10. class 접근 제한자 1. typescript에서 사용 가능한 접근 제한자 1) 개념 접근 제한자는 속성 또는 method를 사용하기 위한 접근을 제한하겠다는 의미입니다. 2) 사용 이유? 사용하는 이유는 프로그램의 버그를 줄이고자 사용한다고 볼 수 있습니다. 왜냐하면 개발자들이 다른 사람이 만든 class의 모든 것을 제어할 수 있으면 의도치 않게 버그가 발생할 수 있습니다. 그래서 접근 제한자를 사용하여 내가 만들 class를 다른 사람이 함부로 중요한 값을 수정하지 못하게 막는 것입니다. 3) 접근 제한자의 종류는 다음과 같습니다. - 기본 접근 제한자는 public입니다. 접근 제한자 특징 상속 여부 instance를 통한 접근 public public으로 설정된 ..

[typescript] 9. class 상속과 포함 관계

[typescript] 9. class 상속과 포함 관계 1. 상속(IS-A) 1) 개념 상속은 class간의 계층을 만들어서 코드 중복을 줄이는 객체지향 프로그래밍 방법 입니다. 상속관계에는 부모 class 와 자식 class라는 개념이 존재하며, class를 상속을 받는 다는 것은 자식 class가 부모 class의 공개된 속성과 method를 사용 할 수 있다는 것을 의미 합니다. typescript에서 자식 class는 1개의 부모 class만 상속 받을 수 있습니다. 2) 상속 관려 용어 동의어 정리 * 부모 class = base class = super class * 자식 class = derived classs = sub class 3) 상속(IS-A) 관계를 만드는 방법 상속(IS-A) ..

[typescript] 8. class 와 instance

[typescript] 8. class 와 instance 1. Class 개념 Class는 자동차 부품 설계도로 비유할 수 있습니다. 차동차 부품 설계도에는 부품의 재료, 부품의 기능 정의되어 있습니다. 이를 Class에 비유하면 재료는 속성, 기능은 method가 됩니다. 또한 부품의 기능이 여러 개 있듯이 Class도 여러 개의 method를 가질 수 있습니다. - 부품 설계도를 Class와 비교 부품 설계도 Class 재료 속성 기능 method * 속성 동의어 = 멤버 변수 * method 동의어 = 멤버 함수 2. Class 설계의 핵심 1) Class 설계시 속성과 연과 된 method만을 정의해야 합니다. (가장 중요) 2) Class는 다른 Class와 결합도가 적어야 합니다. - 결합도..

[webpack] 에러 발 생시 해결 방법

1. 상황 1 1) npm install -g webpack 을 설치 했다. 2) webpack을 하는데 안된다. 아래와 같은 에러 발생시 PS C:\web-project\book-mark> webpack internal/modules/cjs/loader.js:583 throw err; ^ Error: Cannot find module 'webpack' at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15) at Function.Module._load (internal/modules/cjs/loader.js:507:25) at Module.require (internal/modules/cjs/loader.js:637:17) ..

[typescript] 7. 함수 (선언적 함수, 익명 함수, 콜백 함수)

[typescript] 7. 함수 (선언적 함수, 익명 함수, 콜백 함수) 1. 함수란? - 함수는 애플리케이션 코드를 구성하는 기본 요소입니다. - 자주 사용되는 코드를 묶어놓은 코드 덩어리 입니다. - typescript에서 함수는 클래스나 네임스페이스 내에 선언 할 수 있습니다. - 함수는 모듈로 서도 사용됩니다. 2. 자바스스크립트 함수의 종류 참조 : [javascript] 2.자바스크립트 함수란? 1) javascript 함수 (1) 선언적 함수 - 호이스팅이 발생 합니다. *호이스팅 이란? 코드를 실행 하게 되면 호이스팅이되는 코드를 맨위로 올리는 것을 말합니다. 따라서 함수를 사용후에 나중에 정의해도 됩니다. (2) 익명 함수 - 호이스팅 이 발생하지 않습니다. - 함수를 선언이 후에만 사..

[typescript] 6. 연산자 와 디스트럭쳐링(destructuring)

[typescript] 6. 연산자 1. 기본 연산자 1) 산술 연산자 산술 연산자 의미 + 덧셈 - 뺄샘 * 곱셈 / 나눗셈 % 나머지 2) 비교 연산자 비교 연산자 예 의미 == a == b a 와 b의 값이 같은지 비교 === a === b a 와 b의 값과 타입이 같은지 비교 != a != b a 와 b의 값이 다른지 비교 !== a !== b a 와 b의 값과 타입이 다른지 비교 > a > b a 가 b 보다 큰지 비교 = a >= b a 가 b 보다 크거나 같은지 비교 판변 조건이 false 이면 표현식 2이 반환1 > 2 ? console.log("aa") : console.log("bb")// 출력 결과 bb 2. 디스트럭처링(destructuring) - typescript는 ES6의 디..

[typescript] 5. 제어문

[typescript] 5. 제어문 1. 제어문 이란? - 코드의 흐름을 제어 합니다. - 조건 문과 반복 문이 존재 합니다. 2. 조건 문 - 조건에 맞을때 해당 코드를 수 행 합니다. 1) if 문 - 구문 if () { 실행 할 코드}let able:boolean = true; if (able) { console.log("test");} 2) switch 문 (1) 구문 switch(표현식) { case 값: ... 수행 할 코드break; default: ... 조건에 맞는 것이 없을 시 수행 할 코드break;} (2) 특이 사항 - fall-through 기능 제어 > 간혹의 경우 여러개의 case문의 결과를 동일 하게 처리 하기 위해서 case문을 탗출하는 break 문을 생략 하여 쓰는 경..

[typescript] 4. typescript 기본 타입과 변수 선언

[typescript] 4. typescript 변수 1. 선언자 - 변수 앞에 위치하는 키워드 - 선언자에 따라서 변수의 scope가 달라진다. 1) scope level - 함수 level : 선언자가 함수 level일 경우 해당 변수는 함수 안에 개별 선언으로 인식 된다. - 블록 level : 선언자가 블록 level일 경우 해당 변수는 블록 안에 개별 선언으로 인식 된다. - 전역 level : 선언자가 전역 level일 경우 해당 변수는 프로그램 모든 범위에서 개별 선언으로 인식 된다. 2) scope의 운선 순위 - 블록 level > 함수 level > 전역 level 항목 scope (영향 범위) 특징 함수 level 블록 level 전역 level var O X O 호이스팅 이된다. (..

[typescript] 3. 개발 환경 구축 및 테스트 프로젝트

[typescript] 3. 개발 환경 구축 및 테스트 프로젝트 1. 필요 준비물 - node.js - npm - typescript 2. node.js 설치 - https://nodejs.org/ko/download/ 에서 다운 받아서 설치 3. npm 설치 - node.js 설치시 기본 적으로 설치가 됩니다. - 최신으로 업데이트만 해주시면 됩니다. > node install -g npm@lastest 4. npm을 이용한 모듈 관리 방법 - npm은 node.js 에서 필요한 third party 모듈을 관리해 주는 매니저 입니다. - npm은 package.josn를 통해어 모듈을 관리합니다. 1) package.json만들기 >npm init [-y 옵션시 기본 값으로 생성 된다] 항목 설명 p..

[typescript] 2. 개요

[Typescript] 2. 개요 1. Typescript 란? - 마이크로소프에서 개발하고 관리하는 오픈소스 프로그래밍 언어이다. - 어떤 브라우저나, 호스트, 운영체제에서도 동작합니다. - 자바스크립트의 상위 집합으로써 ECMA스크립트의 최신 표준을 충분히 지원합니다. - 자바스크립트의 문법을 사용 할 수 있습니다. - ECMA표준에 대한 컴파일도 지원합니다. - 변수나 함수등에 명시적으로 타입을 추가할 수 있게 해 타입 안전성을 높였습니다. 이것 때문 typescript라고 불리웁니다. 2. Typescript VS JavaScript 항목 typescript javascript(ES6) 언어 타입 정적언어 동적 언어 컴파일 여부 필요 불 필요 타입 존재 존재 미 존재 class 지원 (키워드 : ..