본문 바로가기

배움

우아한테크러닝 - 2020-09-10 (목) - 4차시

 

솔직히 이거 수업들을때 기분이 너무 안좋았다 ㅜ

이 수업을 듣는 날.

 

너무 내 코드 수준이 안좋다고 느꼈기 때문이다. 

당장의 코드가 밑바닥인데 이런 지적 유희가 다 뭐란 말인가?! 싶었는데.

어차피 퇴근 후 시간은 내맘대로니까

그냥 논다고 생각하고.

재미있는 유투브 동영상 본다구 생각하구

강의를 듣기로 했다.

 

작심N일이 이렇게 어렵다.

 

공식문서를 보라는게 결국 이 강의의 교훈이라고 생각

 

다른 개발자들이 사용하는 용어에 노출되는 것도 좋다.

 

------------------------------------------------------------------------------------------------------------

(듣는중)

 

arrow function은 this 가 렉시컬 스코프를 가지게 할수잇다? 

binding이 필요없다 (일반적으로는 실행컨텍스트)

 

함수형 컴포넌트도 상태를 가질 수 있게 하자 ~

그거에 맞춰 함수를 저장하는 저장소를 제공해주면 함수도 상태를 가질 수 있겠다.

-> 리액트 훅

 

ko.reactjs.org/docs/hooks-effect.html#tip-use-multiple-effects-to-separate-concerns

 

Using the Effect Hook – React

A JavaScript library for building user interfaces

ko.reactjs.org

훅은 뭐 그냥 리액트를 익혀야하는거니까.

 

 

React가 관리하는 key=value 구조의 저장소를 사용하는 방법을 hook으로 이야기 하는것 같습니다.


 

비즈니스와 관련된 코드는 다 가치가 있고

그다음이 기술적으로 가치 있는 코드

 



컴포넌트에 props로 넘기는 것도 결국 함수의 콜백으로 넘겨진다고 생각하면 되겠군여


 

 

RN이랑 일렉트론 ? 비슷하다 생각하믄 댐

node 위에서 

 

 

 

const x = () => 10;

const y = x() * 10;

 

// 이ㅓㄹㄴ게 지연 호출임.

// x는 x() 시에 값이 확정되쟈냐

// 레이즤~

// 지연 텤닠

 

프라미스와 지연이 비슷혀 

 

 

------------------------------------------------------------------------------------

 

제너레이터

 

funcion* make() {

  return 1;

}

const i = make();

 

console.log(i);

 

코루틴.

 

리턴을 여러번 하면 어떠까  

값을 여러번 생산해낸다. 제너레이터. 그래서 일케 작명한거아닐까.

yield 는 제너레이터 안의 return

 

next() 라는 도구를 줘서 실행할수있게함~

 

done 이라는걸 줘서 끝

 

developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Generator

 

Generator

Generator 객체는 generator function 으로부터 반환된 값이며 반복자와 반복자 프로토콜을 준수합니다.

developer.mozilla.org

인걸 알려주는겨 

다음에 실행할 코드강 잇는지 없는지.

 

무한 루뿌~

자바스크립트 엔진이 문법적으로 훅 같은걸 지원해주는거같은느ㅣ낌?~?~?~

 

return은 yield랑 달랑 ,, 

return은 뚝끊어버려

 

 

씨샾은 코루틴 씨게 쓴다~

 

 

 

 

제너레이터는 나랑 핑퐁칠 수 있다

안쪽의 상태가 기억을 한다.

 

 

함수 안쪽에서는 마치 순서대로 진행되는듯이.

콜백으로 쓰지 않고.

 

 

 

싸가 : 야 호출하고 응답하면 다시 나 불러줘

싸가 - 제너레이터 쓰는애.

 

 

둘다 거의 비슷한데 그럼 하나만잇음되지 멋하러 두개 다 잇노? 

async await는 프라미스만 

 

yield는 범위가 넓다. 비동기상황일때만 yield하는게 아님.

 

 

어떠케 비동기 코드를 동기처럼 깔끔하게 쓸수있는가 -> 고치기 쉬워져벌이고~

 

제너레이터는 객체를 이터레이터로 쓸수잇게..? / 비동기를 동기처럼 -> 이렇게 이해하믄 될까요

 

제너레이터는 iterable 한 객체 반환. 핑퐁이 가능한 이유

제너레이터의 메커니즘을 응용해서 비동기를 동기처럼 쓸 수 있다. 

 

 

 

단순한것은 쓰임이 복잡하고

복잡한 것은 쓰임은 단순하다. 일반적이지 않기 땜씨.

 

 

gist.github.com/ibare/c7020756170aa7ed3d1cc84f86972409

 

App.js

GitHub Gist: instantly share code, notes, and snippets.

gist.github.com

 

www.youtube.com/watch?v=09V_JAGTs2E&ab_channel=JSConf

 

제너레이터로 다마고치 만드느 ㄴ영상?!?!