분류 전체보기(472)
-
5. typescript - interfaces
타입 스크립트 중 가장 중요한 원리 중 하나는 값의 모형에 맞추어 집중하여 타입을 체크하는 것입니다. 이것은 duck typing(덕 타이핑) 또는 구조적 서브타이핑(structural subtyping)입니다. function printLabel(labelObj: { label: string }) { console.log(labelObj.label); } let myObj = { size: 10, label: "size 10 Obj" }; printLabel(myObj); 위 코드를 보면 labelObj를 받아서 비구조화 할당으로 label의 타입을 체크하고 있습니다. label이 string이라면 출력해주고 있습니다. 그러나 우리가 사용한 객체는 size라는 property를 갖고있는데도 타입 체크를..
2020.03.03 -
4. typescript - 변수 선언
변수 선언 let과 const는 js에서 상대적으로 새로나온 변수 선언 방법입니다. let은 var과 비슷하지만 재선언 등을 사용하지 못합니다. 그리고 const는 한번 적용한 값을 변환시킬 수 없는 변순 선언 법입니다. typescript는 js를 포함하고 있기 때문에 당연하게 let, const를 사용할 수 있습니다. 그래서 과거의 var를 사용하는 것 보단 let과 const를 사용하는 것이 더 바람직합니다. let var의 몇가지 문제 점들을 해결한 변수선언 방법이다. let은 var와 같은 방법으로 선언하여 사용할 수 있다. let hello = "Hello!"; block scope var는 function scope라서 함수를 기준으로 변수를 찾아와 사용하지만 let은 block scope ..
2020.02.29 -
3. typescript - 타입
js와는 다르게 typescript에는 각 변수 및 파라미터, 함수에 타입이 활용된다. 그럼 이번 포스터를 통해 타입을 간단하게 정리해보겠습니다. Boolean let isDone: boolean = false; isDone = true; Number number타입은 소수든 정수든 상관없이 사용할 수 있습니다. 그리고 10진수 뿐만아니라 2진수, 8진수, 16진수 등을 사용할 수 있습니다. let decimal: number = 10; let hex: number = 0xf00d; let binary: number = 0b1010; let octal: number = 0o744; String string은 기존의 웹사이트를 개발할 때 필수적으로 필요합니다. js와 같이 ", '을 사용할 수 있으며 `도..
2020.02.27 -
2. typescript - 개발환경 설정
online 상황에서 사용하기 typescript에서 자체적으로 playground를 지정하고 있다. https://www.typescriptlang.org/play/ TypeScript Playground www.typescriptlang.org 개인 로컬환경에서 사용하기 우선 텍스트에디터 vscode, notepad, vim, 등등 모든 것을 사용해도 됩니다. 타입스크립트 컴파일러 타입스크립트 컴파일러는 ts파일을 js파일로 변화시킵니다. tsc를 동등한 기능을 하는 js코드로 변환시킵니다. 이런 것을 transpliation(트랜스파일)을 해줍니다. 이전까지 컴파일이라는 용어를 사용했지만 transpliation: 한어로 작성된 소스 코드를 비슷한 수준의 추상화를 가진 다른 언어로 변환합니다. 설치..
2020.02.27 -
1. typescript - 특장점
뭔가 새로운 것을 공부할걸 찾아보다가 typescript가 눈에 들어왔다. 평소 react와 node를 사용해 프로젝트를 실행했었는데 사실 이때까지는 typescript라는 존재를 알고 있었지만 js가 있는데 왜? 써야할까라는 생각을 한적 있었다. 아마 이 글을 읽고 있는 필자들도 그럴 것이다. 그래서 이번 글에서는 간단하게 특장점을 정리할 것이다. https://www.typescriptlang.org/index.html TypeScript - JavaScript that scales. State of the art JavaScript TypeScript offers support for the latest and evolving JavaScript features, including those fro..
2020.02.26 -
1629번 곱셈
https://www.acmicpc.net/problem/1629 1629번: 곱셈 첫째 줄에 A, B, C가 빈 칸을 사이에 두고 순서대로 주어진다. A, B, C는 모두 2,147,483,647 이하의 자연수이다. www.acmicpc.net 1629번 곱셈 문제만 보면 정말 단순해 보인다. 그냥 B번만큼 곱한 후 C로 나눠주면 된다. 여기서 생각해볼 점은 A^B = A^(B/2) * A^(B/2)이라는 것이다. 홀수면 A^(B/2) * A^(B/2) * A이다. 그래서 재귀로 해결해도 된다. 또 다른 방법은 B를 2로 나누어 주면서 나머지가 홀수 일때만 결과값에 곱해주고 나머지는 계속 A값을 곱해가면 된다. 그리고 여기서 C로 나누어주어야하는데 마지막 결과값에 나누어주면 long long 형도 버틸..
2020.02.20