분류 전체보기

부스트캠프 6기 마지막 프로젝트가 종료되었다. 마지막 프로젝트는 6주간 진행했고 나는 4명의 팀원간 웹 프로젝트를 진행했다. (2021. 10. 25 ~ 2021. 12. 03) 우리 팀이 진행했던 프로젝트 주제는 벽전: salon des refuses 이다. 간단한 소개 아래와 같은 배경에 의해서 프로젝트 주제를 생각하게 되었다. 1. 예술계 대학생들은 자신들의 작품들을 대중들에게 소개하기 어렵다. 그리고 혹시나 판매까지 가능하다면 비싼 재료값들을 충당하며 꿈을 더 키우는데 도움을 받을 수 있다. 2. 코로나라는 시대에 사람들이 자연스레 집에 있는 시간이 많아지면서 집이라는 공간에 관심과 생각을 많이 하게 되었고 집을 꾸미는 것에 대한 수요도 늘고있다. 최근에는 위아트라는 회사도 길거리에서 자주 보았다..


참고한 포스트 https://leanylabs.com/blog/js-forEach-map-reduce-vs-for-for_of/ 결론적으로는 루프를 사용한 명령형 프로그래밍이 선언형 배열 방법을 사용하는 것보다 더 나은 성능을 가져온다는 것을 알게 되었습니다. 그러나 콜백 함수 호출은 무료가 아니며 큰 배열에 추가되며 단순한 합보다 더 복잡한 코드의 경우 계산 자체에 더 많은 시간이 걸리므로 상대적인 차이가 크지 않습니다. 명령형 프로그래밍 방식은 코드 수가 많아져 가독성이 떨어지고 복잡한 코드의 경우 큰 차이가 나지 않으므로 forEach, map, reduce도 적절히 잘 활용하자!



this란 javascript의 this는 다른언어와 조금 다르게 동작합니다. 일반적으로 this는 함수 내에서 함수 호출 맥락(context)를 의미합니다. 맥락이라는 것을 상황에 따라서 달라진다는 뜻으로 함수를 어떻게 호출하느냐에 따라서 this가 가리키는 대상이 달라지는 것을 의미합니다. 함수와 객체의 관계가 느슨한 자바스크립트에서 this는 이 둘을 연결시켜주는 연결점의 역할을 합니다. 브라우저 javacript 함수 내의 this 브라우저에서 javascript 파일에 바로 선언하고 사용하면 default 객체에 선언이 되고 default.func()식으로 불리게됩니다. 브라우저에서는 default객체가 window이며, node 환경에서는 global입니다. function func() { c..


구글 크롬의 병렬커넥트와 지속 커넥트 활용 구클 크롬으로 내가 만든 사이트를 분석하고 있었고 해당 부분을 보고 지난번에 공부했던 지속 커넥트와, 병렬 커넥트를 직접 눈으로 보아 정리를 해봅니다. 구글 개발자 도구 퍼포먼스 탭 아래 이미지를 보면 브라우저에서 html을 읽고 필요한 데이터를 요청하는데 최대 6개를 동시에 요청하는 것을 볼 수 있었습니다. 이를 통해 크롬 브라우저는 웹사이트의 리소스를 빠르게 가져오기 위한 방식인 병렬 커넥트를 활용했다는 것을 알 수 있었고 한 페이지당 기본 6개의 커넥션을 맺는다는 것을 알 수 있었습니다. 그리고 이어서 header.js는 어느 특정 리소스를 받자마자 바로 요청을 합니다. 이부분이 지속 커넥트를 활용한 데이터 요청이라고 생각했고 와이어샤크로 분석했습니다. 와..


내가 알고있는 아파치 카프카 아파치 카프카는 Pub/Sub 패턴을 이용한 메세지 큐로 알고있습니다. 제가 생각하는 카프카의 장점으로는 1. 여러 프로그램 간의 이벤트를 주고 받을 때 사용하고 직접 데이터를 주고받지 않고 카프카를 통해서 Json데이터 형식으로 데이터를 주고받기 용이하다. (MSA아키텍처에서 활용시 좋을 것 같다는 생각..?) 2. 카프카를 통하면 복잡한 데이터의 흐름을 단순화 할 수 있다. 3. 네트워크를 통한 Pub/Sub 패턴을 제공하기 때문에 서로 떨어진 환경에서도 이벤트를 주고받을 수 있다. 정도만 알고있습니다. 아파치 카프카 책을 통해 알아볼 것 제가 아파치 카프카 책을 통해서 알아볼 것들은 아래와 같습니다. 1. 아파치 카프카의 목적 - 왜 아파치 카프카가 나오게 되었는가? 2..

운이 좋게도 boostcamp 6기에 함께하게 되었습니다. 주변에서는 하나둘 취업하는데 저는 매번 탈락해서 마음이 뒤숭숭한 가운데 저를 돌아볼수있는 기회라고 생각했습니다. boostcamp 챌린지 기간동안에 한것들을 간단하게 소개해 드리면, 매일매일 그날의 과제가 나오고 하룻동안 과제를 해결하고 과제를 해결하는데 필요한 지식들을 스스로 공부하고 동료들과 학습한 내용을 쉐어하는 활동을 진행했습니다. 한달간 챌린지 동안 제가 느낀점은 이렇게 부족한 내가 기업에 갔더라면 정말 잘 할 수 있었을까? 하는 회의적인 생각이 주를 이뤘습니다. 그동안 공부해봐야지 하고만 생각하고 미뤄 놓았던 것들이 과제로 나와서 학습하게 된 것들도 많습니다. 한달이 짧다고 하면 짧고 길다고 하면 긴 시간인데 제는 제가 한달 전과 한달..

오늘 부스트 캠프 1일차를 진행했습니다. 저는 웹 풀스택 지원했습니다. 주언어 java가 아니라 javascript로 진행하다보니 익숙치 않아서 많은걸 찾아보고 새롭게 배우게 되네요. 오늘은 javascript array관련해서 많이 찾아봤습니다. includes, sort등을 찾아보았네요. 오늘 알게된 것은 includes의 구현이 while로 되어 있었고 O(n)의 시간복잡도를 갖는다는 것 sort는 브라우저 엔진에 따라 구현이 다르다는 것, Mozilla는 병합 정렬을 사용하지만 오늘날 Chrome의 v8 소스 코드에서는 더 작은 배열에 QuickSort 및 InsertionSort를 사용한다는 것 등을 알게 되었습니다.

부스트 캠프 6기 도전합니다.