본문 바로가기

분류 전체보기40

클로저 - 2 클로저 응용의 예 이전에 했던 예를 활용해서 응용 개발하기 function outer() { var count = 0; return { increase: function() { return ++count; }, derease: function() { return --count; } }; } var counter = outer(); console.log(counter.increase()); // === 1 console.log(counter.increase()); // === 2 console.log(counter.decrease()); // === 1 var counter2 = outer(); console.log(counter2.increase()); // === ? 이번에는 함수를 바로 반환하지 않고.. 2020. 2. 14.
TypeScript - 1 TypeScript 개발환경 구축 TypeScrpit 파일(.ts)은 브라우저에서 동작하지 않으므로 TypeScript 컴파일러를 이용해 자바스크립트 파일로 변환해야 한다. 이를 컴파일이라한다. TypeScript 설치 $ npm install -g typescript // 전역설치 $ tsc -v // 설치 확인 TypeScript 컴파일러 TypeScript 컴파일러(tsc)는 TypeScript 파일(.ts)을 자바스크립트 파일로 트랜스파일링한다. // person.ts class Person { private name: string; constructor( name: string ){ this.name = name; } sayHello() { return "Hello, " + this.name; .. 2020. 2. 13.
태스크 관리 - 1 우선순위 결정 기본원칙 : 기본 기능을 먼저 개발하되, 개발 난이도가 높은 것을 우선으로 한다. :: ) 기본 기능은 대부분 전체적인 구조의 뼈대가 되는 아키텍처와 연관되어 있는 경우가 많고 난이도가 높은 부분의 경우, 구현의 실패 가능성이 많기 때문에 이런 부분을 먼저 개발해서 시행착오를 초기에 겪고 나중에 문제를 해결할 시간을 벌기 위함이다. 기본적인 아키텍처의 경우 제품이 개발이 중반 이상 들어간 경우 변경하기가 어렵다. 전체적인 구조를 뜯어고친다는 것은 상당 부분의 재코딩을 의미하기 때문이다. 우선순위를 정하는 두 가지 요소 '긴급도' '우선순위 or 난이도' 긴급도는 우선하여 구현해야 하는 기능이다. 난이도가 높지 않더라도 필수적으로 필요한 기능들이 여기에 들어간다. 우선순위 또는 난이도는 항목.. 2020. 2. 12.
NodeJS 서버 만들기 nodejs 설치 node 명령어 $ node 위와같이 터미널에 입력해주면 node코드를 입력할 수 있는 화면이 나온다. (REPL : Read Eval Print Loop) > console.log("Hello World"); 결과 : Hello World 서버 만들기 node.server.js 파일 // 모듈 추출 var http = require('http'); // 웹 서버 만들고 실행하기 http.createServer(function (request, response) { response.writeHead(200, { 'Content-Type': 'text/html' }); response.end('Hello World'); }).listen(52273, function() { console... 2020. 2. 11.