본문 바로가기

code-states

[code-states][we-win] 25일차 - underbar (2일차)

아직도 남았다는 게 함정

 

오늘은 어제 했던 것처럼 underbar 과제를 마저 열심히 했다

advenced 바로 전까지만 풀었는데, advenced 는 아무래도 주말을 활용해 풀어야 할 듯 하다

안 풀었다기보다는 막히고 삽질하느라 시간이 없었다


[ 오늘 underbar 에 마저 도전하면서 배운 건... ]

- 함수의 arguments 객체 : 함수에 전달되는 parameter 값을 담은 '배열 형태' 의 객체(?)

- spread operator : 배열, 문자열 등의 iterable 을 분해해서 각각의 개별 요소로 만드는 것

* spread operator 과 관련해서 잘 설명해 준 글을 찾아서 링크도 걸어보려고 한다 (링크, 클릭 시 이동)

이 두 개였다

안다고는 말을 하지 못 하겠어서, 배웠다라는 표현을 썼다

오늘은 정말 말 그대로 개념만 알고, 간단하게 사용만 해 봤지

어떤 개념인지에 대해서 조금 더 잘 알고 적절하게 쓸 수 있어야만 '알겠다' 라고 할 수 있는 상황이라

그렇게 썼다

주말에 시간 내서 공부해야 할 것이 추가되었다

 

 


 

[ 오늘 lesson 시간에 들은 건... ]

- 비동기 호출

- timer API

여태껏 내가 짜 왔던 코드는 대부분 동기 호출이었고

실무에서는 비동기를 대부분 사용한다고 한다, 특히 서버로 자원을 요청할 때 많이 사용한다고 한다

동기와 비동기에 관해선, 사람이 많이 몰리는 커피숍의 비유가 가장 기억에 남는다

동기호출 : 사람이 오면 주문을 받고, 주문을 처리한 '다음에야' 다음 사람의 주문을 받음

비동기호출 : 여러 사람들의 주문을 쭉 받고(주문은 바로 받는다), 조금 시간을 두었다가 완성이 되면 '손님에게 알린 후 제공한다'

엄밀한 정의는 아니지만, 이를 통해서 감을 잡았고

엄밀히 다시 정의하자면 다음과 같다

sync and async

 

좌측이 동기호출이다, #1 request 를 받고, 해당 request 에 응답을 하고 나서야 #2 request 를 받는다

우측은 비동기호출이다, #1 request 도, #2 request 도 받아버린다,

그리고 준비가 될 때 해당 requests 들에 대한 responses 들을 한번에 return 한다

timer API 는 쉽게 말하자면 '시간차 공격' 이다

대표적으로 setTimeout 함수가 있는데, 이 함수는 parameter 로 callback function 과 millisecond 를 받는다

callback function 을 setTimeout 의 parameter 안에서 표현식으로 바로 선언해버려도 무방하다

setTimeout(function() { console.log('1초 후 실행'); }, 1000); // 2 (임의의 timer ID) // '1초 후 실행'

이런 식으로

그것 말고도 일정 간격을 두고 반복하는 함수인 setInterval 이 있다 정도... 를 알았다

그 외의 office hour 에서는...

office hour 의 내용들

 

이런 내용을 배웠다

그렇게... 오늘의 하루도 지나갔다...

 

 

 


 

 

 

뒤에 더 남은 강의들

사실 오늘 뒤의 강의를 더 들어야 하지만 듣지 않다

underbar 과제를 욕심 내서 풀다가 지쳐서 그만

underbar 가 끝나고 강의를 들어야 하는 구간에서 쓰러져 누워있다가

underbar office hour 에 참석하였다

그래도 다행인 건, 이번 주말 정말 쉬지 않을 이유가 생겼다는 점

능동적으로, 적극적으로 공부하는 사람이 되자

 

가야 할 길이 멀다 

25일차, 오늘의 개발일지 끝