본 내용은 내일배움캠프에서 활동한 내용을 기록한 글입니다.
자바스크립트 공부와 개인과제가 시작하는 주!!
총 5주차의 자바스크립트 강의를 시청
1주차는 자바스크립트의 기본 문법을 학습함
2주차는 ES6의 문법과 Map, Set 자료구조를 학습함
사실 1, 2주차는 내용이 어렵지 않아서 1.5배속으로 빠르게 수강
3주차는 데이터 타입과 실행 컨텍스트, this에 대해서 학습함
데이터 타입에서는 변수와 상수에 대해서 학습함
변수는 메모리 상에서 변수명과 데이터가 같은 곳에 저장될 줄 알았음
하지만 변수명과 데이터는 다른 메모리에 저장되어서 주소를 통해 연결함
또한 얕은 복사, 깊은 복사 등에 대해서 조금 더 알아보는 시간이 됨
실행 컨텍스트에서는 호이스팅이라는 가상 개념을 학습함
변수나 함수의 실행 과정을 이해하기 위한 개념이라고 함
하지만 실제로 큰 도움은 되지 않은 것 같음.... (어디에 사용하는 거지?)
남은 4주차와 5주차를 학습함
4주차에는 동기/비동기에 대해서 학습함
Promise는 콜백함수에서 발생하는 콜백지옥을 벗어나기 위한 방법
Promise는 비동기 실행을 동기적으로 처리하기 위한 방법
비동기 동작을 동기적으로 사용하는 이유는?
=> 순서를 보장할 수 없는 과정에서 순서를 보장받기 위해 사용
오늘부터는 알고리즘 특강와 코드카타를 시작함
알고지름 특강은 총 4일동안 진행됨
알고리즘 특강은 코딩테스트를 대비한 코드와 친해지는 과정이라고 함
처음에는 파이썬 vs 자바스크립트로 고민을 했음
사실 코딩테스트를 잘 보려면 파이썬이 맞긴 함
하지만 자바스크립에 대한 코딩 지식이 부족하기에 같이 병행하기로 함
그리고 개인과제를 시작함
개인과제는 이제까지 학습하 자바스크립트 문법을 이용해서 영화 검색 사이트를 제작하는 것
일단은 HTML과 CSS를 이용해서 사이트의 틀을 먼저 구성함
이후 TMDB의 API와 연결하는 작업까지 함
TMDB에서 코드를 제공하기 때문에 데이터를 가져오는 방법은 간단했음
오늘도 하루의 시작은 알고리즘 특강와 코드카타
오늘의 알고리즘 특강은 실제 간단한 알고리즘 문제를 기반으로 진행함
튜터님께서 자신만의 언어로 알고리즘을 해석하는 것이 중요하다고 말씀함
그렇기에 항상 메모장을 통해서 알고리즘을 분해해서 해석할 필요가 있다고 함
알고리즘 특강 이후 남은 시간에는 개인과제를 진행함
오늘은 검색창을 통해서 영화를 검색하는 기능을 사용함
사실 실제 데이터베이스면 데이터베이스에서 데이터를 검색하면 됨
하지만 TMDB는 자바스크립트로 요청한 페이지의 데이터만 넘겨주기에
페이지 단위로 검색이 되게끔 제작함
지금은 임의로 10페이지 데이터를 사용할 수 있게 함
오늘은 시간복잡도, 공간복잡도, 배열, 링크드리스트를 배움
다른 내용보다 링크드리스트 부분이 조금 헷갈렸음
사실 링크드리스트는 다른 언어에서 개념을 알았음
하지만 자바스크립트로 어떻게 작성해야 할지 막연했음
알고리즘 특강을 통해서 기본적인 구조를 파악하니 그래도 어떻게 코드를 작성해야할지 머릿속에서 그려졌음
개인과제가 어느정도 완성이 되었기에 조기제출함
이후에는 자바스크립트 문법중에서 이해가 되지 않았던 Promise에 대해서 추가적으로 공부함
일종의 콜백함수가 발전한 형태가 Promise라고 할 수 있음
콜백함수 => Promise => async/await
fetch === '시간이 걸리는 작업'이기 때문에 그것도 비슷한 동작을 위해서 setTimeout() 함수를 통해 시간을 지연하는 것임
아무래도 예제를 통해 코드 구조를 이해하는게 빠르기에 예제를 하나 만듦
예제를 만들어서 실행하면서 학습하니 많은 도움이 됨
그냥 순차적으로 실행 => 콜백함수만 사용해서 실행 => Promise를 사용해서 실행 과 같은 순서로 코드를 바꾸면서 실행함
다음주에는 마지막 알고리즘 특강을 진행함
이후에는 매일 아침 9시부터 1시간동안 각자 코드카타하는 시간을 가질 예정
그리고 튜터님께서 금요일에 피드백해주신 내용이 있기에 그걸 기반으로 코드를 수정할 예정
또 다시 팀프로젝트가 진행되는 주...!!!
아직 회의를 한번도 진행한 적이 없기에 걱정은 되지만 최대한 의견을 모아서 화이팅!!
이번 주는 개인과제가 있었지만 생각보다 수월한 한 주가 되었음
다른 언어들도 마찬가지만 자바스크립트도 공부할 게 끝도 없는 것 같음
기본 문법, 자주 사용되는 메서드, 클래스, Promise 등등 너무 많았음
그렇기에 이해가 잘 되지 않는 부분은 다른 강의나 블로그를 통해서 더욱 깊게 공부할 필요를 느낌
이후에도 자바스크립트에 대한 공부는 계속 블로그로 남기면 좋을 것 같음
TIL 작성에 오늘 알게 된 자바스크립트 문법을 남겨보자!!