alt
Home
hungryjayy
Cancel

this vs self

this JS의 모든 함수는 기본적으로 실행될 때마다 함수 내부에 this 객체가 추가된다. 현재 컨텍스트를 참조 기본적으로 전역 객체 참조 객체의 메서드를 호출했을 때 - 호출 객체 참조 var myObject = { name: "foo", sayName: function() { ...

Kotlin 특징

함수형 프로그래밍(함수가 일급 객체로서의 의미를 가짐) : 함수를 side effect 없도록 선언하고 사용하는 선언형 프로그래밍. e.g ) forEach vs map : map이 함수형에 가깝다. forEach는 원 배열에 side effect가 발생할 가능성이 있지만, map의 경우 원래의 배열을 바꾸지 않고 새로운 배열을 만들어버린다. ...

Spring Reactive stream과 Webflux

Reactive programming : 기본적으로 Data == Stream, event 로 보는 관점, 비동기 데이터 스트림을 이용해 데이터를 전달하는 방식의 Programming Reactive Streams Backpressure방식의 stream으로 처리함으로써 비동기적인 수행을 가능하게 한다. Reactive Strea...

Coroutine

특징 Task 단위가 Object이다. (= 경량 thread이다.) 메모리 heap에 적재(multi thread의 경우 stack에 적재)하기 때문에 교체시 object만 교체하고, 그 object는 heap을 공유한다. 이러한 과정이 단일 Thread위에서 발생. 따라서, OS 레벨의 context switch 발생하지 않음 ...

모던 JavaScript 튜토리얼 - Promise 5 - MicroTask

Microtask Promise handler는 항상 비동기적으로 실행 let promise = Promise.resolve(); promise.then(() => alert("프라미스 성공!")); alert("코드 종료"); 이 코드에서 “코드 종료”가 먼저 출력. 그 이유는? 현재 코드에서 자유로운 상태(콜스...

모던 JavaScript 튜토리얼 - async / await

async async function f() { return 1; } function 앞에 async를 붙이면 해당 함수는 반환 값을 fulfilled 상태 Promise로 감싸 반환 await : async 함수 안에서만 동작. JS는 await 키워드를 만나면 Promise가 처리될 때까지 기다림. await...

모던 JavaScript 튜토리얼 - Promise 4 - 프라미스화

: 콜백만 지원해주는 API 등 콜백 함수를 프라미스를 반환하도록 프라미스로 감싸는 것 프라미스화(Promisify) 콜백을 그대로 써도 되지만, 기존 코드가 프라미스 기반으로 작성되어있으면 프라미스로 바꾸는 것이 일관성있고 좋을 것 같다. 특히, Async/await 패턴과 함께 사용하면 더 좋다. ...

모던 JavaScript 튜토리얼 - Promise 3 - Promise API

Promise.all Promise 배열을 받고, 모두 처리되면 각 Promise의 결과를 담은 배열이 Promise 로 반환 됨. Promise.all([ new Promise(resolve => setTimeout(() => resolve(1), 3000)), // 1 new Promise(resolve => ...

모던 JavaScript 튜토리얼 - Promise 2 - Error 처리

Promise error handling : Chaining에서 여러 then 중 Promise가 하나라도 거부된다면 .catch 트리거 따라서, 체이닝 되어있는 모든 then에서의 에러를 한 catch에서 처리 할 수 있다. 세부적인 에러 처리를 위해 각 task(then)마다 catch 하나씩 둘 수도 있다. ...

모던 JavaScript 튜토리얼 - Promise 1 - Promise 기초

: 처리 성공 여부에 따라 resolve or reject 호출 Basic Promise는 성공 또는 실패만 한다. 이 때 변경된 상태는 더이상 변하지 않는다. resolve(value): 일이 성공적으로 끝난 경우 value(하나 혹은 없음)와 함께 호출 reject(error): 에러 시 error(Error 객체 혹은 Error...