11월부터는 매주 토요일 사용 가능 예정 아침 9시부터 저녁 5시까지, 11월이 핵심!
11월부터 본격적으로 들어갈 예정
11월 되면 개발할때 필요한 것들을 하나씩 배울예정
11월 , 12월에는 토요일에 최대한 해주실 예정
종강에 너무 의미를 두지 말고 그냥 하면 된다.
종강은 우리가 취업이 됐을 때 종강이다.
취업되더라도 토요일에 나와서 팀프로젝트 하던거 하는게 좋다.
취업준비는 11월 중순부터는 지원서를 쓰기 시작해야한다.
11월중순쯤부터는 좋은회사 나쁜회사 구별하는법등등도 천천히 알려주실 예정
딥다이브 끝나면 러닝 리액트를 먼저 하고 노드를 들어간다음 타입스크립트를 배우게된다.
거의 노드랑 러닝리액트랑 같이 이루어질 예정
시간이 되면 우리만의 npm도 한번 만들어 볼 예정
자기만의 api를 만들어서 다음프로젝트에도 쓰고싶으면 npm에 오픈소스로 올려서 쓰면 좋다
자기소개서에 npm모듈등에 대해 설명하고 하면 의미가 있는것이다.
서로서로 pull request도 해본다.
그렇게해서 내 포트폴리오를 만들어간다
내가 만든 프로젝트는 내 포트폴리오라고 할수없다.
개발자의 포트폴리오는 자신의 실력이기때문에..
공부하다가 컨디션 조절을 어떻게하면 좋을까에 대해서도 고민을 좀 해보는게 좋을듯.
오늘 해야할 일중 1번일을 해결해야 뒤가 잘 넘어가기 때문에 todoList를 매일 잡아서(범위를 작게) 해결해가도록 하자.
첫번쨰과제는 시간이 넘어가더라도 꼭 완료하고 넘어가자!(성취감이 필요하기 떄문에)
계획을 시간으로 잡지말고 투두리스트로 가자!
---------------------------------------------------------------------------
오늘 딥다이브 실행컨텍스트까지 하면 뒤에는 별거없다.
기본적인 빌트인함수들은 쓰다보면 익숙해진다.
중요한건 arr를 조작하지 않고 순수함수를 쓰는것이다.
22장 this
this의 가장 대표적인 기능은 자기자신, my instance를 지시하는것이다.
프로그래밍 언어에는 컴파일러가 있고 인터프리터가 있다(러프하게 보았을때). 인터프리터는 컴파일과정이 없다.
대신 평가과정이 있다 (평가과정이 컴파일이라 봐도 된다)
자바스크립트는 인터프리터 언어이다.
자바스크립트는 실행컨텍스트를 가지고있다.
domain은 좀 넓은 개념이다 : 컴퓨터 사이언스... 이런 산업 등등
context : 공부라는 컨텍스트에 있다
scope : 양등포라는 범위
이 셋은 어느정도의 영역을 지칭한다.
인스턴스는 자바스크립트 엔진이 평가할때 생성된다.(전역일경우)
컴파일언어가 타입이 있을수밖에 없는 이유는 컴파일할떄 메모리의 사이즈를 미리 잡아둬야 하기 떄문이다.
코드는 실행할때 가장 부담되는것이 메모리를 확보할때다. 메모리를 추가적으로 확보하지 않기위해서 컴파일을 하는것 (그래서 컴파일후에는 빠르다)
함수형언어가 예전보다 요즘에 많이쓰이게된 이유는 하드웨어의 성능떄문이다 (메모리부분에서 손해보는걸 감수할 수 있기 떄문)
함수형 언어는 평가단계에서 메모리의 위치를(사이즈는 실행단계에서 알 수 있기 떄문) 잡는다.
평가단계에서 context를 생성하고(메모리에 위치를 잡고) 자신의 상위 스코프에 대한(context에 대한) 참조를 자신의 메모리에 저장한다.
화살표함수의 this는 바로 상위를 가리킨다.
일반함수의 this는 window를 가리킨다.
eventListner는 평가와 실행단계에서 실행되지 않는다. 클릭이라는 이벤트가 발생할때 실행이 되는것이다.
click이라는 이벤트는 document라는 아이가 가지고 있다.
evenetListener의 익명함수 this객체는 이벤트가 일어난 객체이다.
일반함수, 화살표함수, 생성자함수, 이벤트리스너로 불릴때의 tihs가 참조하는것이 다르다.
객체.bind(인자)를 쓰면 객체의 this를 인자로 바꿀수있다.
f.apply(this로넣을애, [arguments]);
f.call(this로 넣은애,argument,argument);
두개는 같은 역할을 한다.
var g1 = 1;
const c1 = 2;
function gFn(x){
var v1 = 3;
const c2 = 4;
g1 = 11;
function fn(g){
const c2 = 5;
console.log(x+1,
}
fn(b);
}
gFn(100);
if(g1>10){
let g1 = 1000;
}
console.log(g1);
//실행 가능한 코드라는것은
//전역, 함수, eval, module 이 있다. <<-- 이 4가지는 각각의 스코프를 가지고있다.
// 모듈이라는것들은 모듈 스코프를 가지고 있다.
사람이 이해하는대로 코드를 이해하는것을 laxical이라고 한다.
call stack은 메모리에 생긴다 (cpu에 생기는것이 아님)
'SeSac (2021-08 ~ 2021-12) > JS' 카테고리의 다른 글
deep dive Array (0) | 2021.10.21 |
---|---|
deep dive closure / class (0) | 2021.10.19 |
10/7 deep dive (0) | 2021.10.07 |
Observer Pattern (0) | 2021.09.07 |
숫자야구 리뷰 (0) | 2021.09.02 |