728x90
15주차
바쁜 한주였고... 공부한걸 생각나는대로 정리해보면,
- (데이터 타입) 우선 변수가 메모리에 어떤식으로 저장되는지 특히 일반 원시형 데이터와 객체형 자료가 어떻게 다르게 저장되는지에 대해서 배웠는데, 원시형 데이터는 식별자와 데이터를 저장하지만, 객체형은 식별자와 데이터 주소와 데이터 주소에 저장된 데이터로, 예전에 배운 C 프로그래밍의 포인터와 유사한 점을 배웠다. 그래서 객체를 단순히 복사할 경우 서로 데이터를 저장하고 있는 주소가 공유되기 때문에, 복사한 객체를 수정하게 되면 같은 주소를 참조하는 두 객체가 다 바뀌는 상황이 된다는 것.
- (실행 컨텍스트) 코드를 작성하면 실제로 어떤 식으로 인터프리터가 이해해서, 실행하는 순서가 어떻게 되는지에 대해서 공부한 것. 실행 컨텍스트는 실행할 코드에 대한 환경 정보를 모아놓은 객체를 의미하는데, 컨텍스트를 구성하고 콜스택에 쌓아올려 Last in, First out으로 실행하는 것. 그 안에서 식별자에 대한 유효범위를 scope라고 하고, scope chaining을 통해 식별자를 찾아나간다. 실행 컨텍스트가 생성될 때 객체를 지칭하는 this가 쓰이는데, this가 어떤식으로 썼는지와 호출되는지에 따라 다르게 binding되므로 잘 사용해야 한다. 전역공간에서나 메서드로 호출할 때, 함수로 호출될 때 내부의 this, 콜백함수로 호출할 때의 this 등 다양한 변화가 있고, 이를 명시적 this binding을 위한 call, apply, bind 메서드를 통해 고정시킬 수 있다.
- (콜백함수) 콜백함수는 다른 코드의 인자로 넘겨주는 함수를 의미한다. 즉, 한 함수를 다른 함수의 인자로 전달하고 나중에 실행되도록 하는 함수로 이러한 방식은 주로 비동기 작업을 처리할 때 사용되며, 이벤트 리스너, 타이머 등과 같은 상황에서 유용하다. 콜백함수를 사용하면 코드가 더 모듈화되고 가독성이 향상되며(근데 콜백 지옥에 빠지기도?), 작업이 완료된 후에만 실행되는 후속작업을 지정할 수 있는 등의 장점이 있다.
- (HTTP) 웹에서 정보를 교환하는 데 사용되는 프로토콜으로, 클라이언트와 서버간의 문서, 이미지, 동영상 등의 리소스를 전송하는 데 사용되며, 주로 웹 브라우저와 웹 서버 사이에서 작동한다. HTTP는 요청과 응답 프로토콜로 구성되어 있으며, 클라이언트가 서버에 요청을 보내면 서버가 적절한 응답을 반환한다. GET, POST, PUT, DELETE 등의 주요한 method가 있고, 응답 코드에는 그 유명한 404를 비롯, 요청의 성공적 처리를 의미하는 200번대 등이 있다. stateless한 프로토콜이므로 정보 저장이 없어 쿠키, 세션 등의 기술로 사용자 인증 및 상태 정보를 유지하는 방법이 쓰인다.
'daily' 카테고리의 다른 글
| 23.04.15. programmers 코딩테스트 문제 풀기[1] (1) | 2023.04.15 |
|---|---|
| 23.04.14. programmers 코딩테스트 문제 풀기[0] (0) | 2023.04.15 |
| 23.04.10. 실행 컨텍스트 더 알아보기 문제 (0) | 2023.04.12 |
| 23.04.12. 혼자 공부하는 자바스크립트 확인문제 풀이 기록[1] (0) | 2023.04.12 |
| 23, 13~14주차 (0) | 2023.04.09 |