내일배움캠프 34

[Node.js] 개인 프로젝트: 장터 백엔드 서버 만들기

이번 프로젝트는 api 구현과 aws 배포가 주된 과제였다. https://github.com/julie-kim-dev/nodejs-market-project GitHub - julie-kim-dev/nodejs-market-project Contribute to julie-kim-dev/nodejs-market-project development by creating an account on GitHub. github.com 필수요구사항: 프로젝트 관리 대여한 MongoDB의 정보를 .env 파일에 변수로 저장하여 사용 .gitignore 파일을 사용하여 .env 파일, node_modules 폴더가 깃허브에 올라가지 않게 숨김 .prettierrc 파일로 코드 포맷팅 유지 필수요구사항: API 구현 ..

💻/프로젝트 2024.01.24

[Node.js] The 'uri' parameter to 'openUri() must be a string··· 에러

내일배움캠프: Node.js_4기 22일차 TIL ~오늘의 수강 과목~ 1. Node.js 입문 2주차 (이용우 튜터님) 2. Node.js 입문 개인과제 리뷰, 해설 1. 어떤 문제가 있었는지 프로젝트를 진행하며 토큰을 보호하기 위해 .env, .gitignore 파일을 사용 vscode 내 터미널에서 MongoDB 연결 성공한 것 확인 완료 깃허브에 숨긴 파일 제외하고 제대로 올라간 것 확인 완료 그런데🥹!!! aws ec2 터미널을 통해 git clone 후 서버 연결을 시도하니 MongoDB 연 결 에 실패하였습니다. MongooseError: The 'uri' parameter to 'openUri() must be a string, got "undefined". Make sure the f..

⌨️/Node.js 2024.01.24

[Node.js] 기본적인 백엔드 개발 환경 셋팅 (yarn, express 설치)

내일배움캠프: Node.js_4기 21일차 TIL ~오늘의 수강 과목~ 1. Node.js 입문 2주차 (이용우 튜터님) Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 먼저 Node.js와 npm 혹은 yarn 설치가 필요하다. npm은 Node.js를 설치하면 자동으로 따라오고, yarn은 터미널에 npm install -g yarn 을 입력하면 된다. (-g는 글로벌이라는 뜻으로 전역설치되어 시스템 전체에서 쓸 수 있게 해준다) 1. 프로젝트를 진행할 폴더를 열고 app.js 파일을 생성 후(굳이 app.js 아니어도 상관없음) 2. 터미널에 yarn init -y 입력 (-y는 기..

⌨️/Node.js 2024.01.23

동기(Sync), 비동기(Async)

내일배움캠프: Node.js_4기 20일차 TIL 프로젝트를 진행하다보니 동기와 비동기에 대해 다시한번 기억하고 넘어가야 할것같아서 내 언어로 정리해보기로 했다. 다음 TIL은 Promise 와 async, await 까지 정리해보고 싶다. 동기 sync 답변(=결과)을 기다리는 것 답변이 올때까지 다음 일은 하지 않음 답변을 기다렸다가 일을 수행 (답변이 올때까지 기다리는 상태 = blocking) 내가 떠올린 예시는 배달앱의 대면 배달 서비스였다. [직접 받을게요] 옵션을 선택하면 내가 문 밖으로 나갈 때까지 배달 기사는 다음 배달을 갈 수 없다. 결과를 기다려야만 다음 단계로 갈 수 있기 때문에 자원을 비효율적으로 사용하는 대신 과정이 단순함 프로그래밍에서는 보통 어떤 일을 수행한 결과를 이용해서..

🪩/기타 2024.01.23

[JavaScript]

내일배움캠프: Node.js_4기 19일차 TIL ~오늘의 수강 과목~ 1. JavaScript 문법 종합반 3주차 (최원장 튜터님) _ 참조형 데이터 타입, 메모리 _ 데이터 할당, 불변 객체 _ 실행 컨텍스트, record, 호이스팅 2. JavaScript 코드 읽기 (이재상 튜터님) _ 코드 읽는 방법 오늘의 메모 오늘 공부가 정말 역대급으로 잘돼서 잊지 않기 위해 TIL까지 완벽하게 정리해두고 싶은데 허리가 아파서 더 못앉아있겠다 주말에 수정할건데 그때까지 제발 머리에 남아있길... 오전에 이전 특강을 다시 들으면서 이유는 모르고 그냥 넘겨짚어가며 쓰던 코드의 범위라고 해야하나 그런 것들에 대해 공부했다. 들을까말까 고민하다가 계속 들은건데 저녁에 실행컨텍스트 부분을 복습하다보니 오전에 들었던..

⌨️/JavaScript 2024.01.18

[JavaScript] Map, Set

내일배움캠프: Node.js_4기 18일차 TIL ~오늘의 수강 과목~ 1. JavaScript 문법 종합반 2주차 (최원장 튜터님) _ Map, Set 모던 자바스크립트 핵심 가이드(알베르토 몬탈레시) 서적도 추가로 참고 Map과 Set은 ES6 문법에서 새로 생긴 자료구조 데이터의 구성, 검색, 사용을 기존의 객체, 배열보다 효율적으로 처리하기 위함 Map key : value key가 정렬된 순서로 저장되기 때문에 key에 어떤 데이터 타입도 전부 들어올 수 있음 검색, 삭제, (완전한)제거 여부 확인 const myMap = new Map(); Map을 새롭게 생성 이제 Object(key: value)처럼 map에 값을 넣어 줄 차례 mayMap.set('key', 'value') myMap...

⌨️/JavaScript 2024.01.17

[내일배움캠프 17일차 TIL] 팀 프로젝트 1: 영화 검색 사이트 (2)

영화 검색 사이트 (1) 글에서 이어집니다... 오늘은 프로젝트 최종 발표일이었다. 발표 자료에서의 개인 파트, 튜터님의 피드백 위주로 기록해봤다. 시연 영상 우리 팀은 시연 영상으로 구현한 기능을 먼저 보여드리고, 각자 어려움을 느낀 부분과 그에 대한 해결 과정, 협업 과정을 통해 느낀 점을 순서대로 ppt에 담아서 발표하게 되었다. 피드백 당시 이 부분을 긍정적으로 평가해주셨다. 각자 본인이 어려움을 느끼는 부분을 정확히 인지하고, 해결을 위해 어떤 방법을 써야하는지 고민한 과정을 좋게 봐주신게 아닐까? 또 카테고리 기능은 기존의 데이터 내에서 해결하기 보다는, 새로운 api를 호출해서 적용할 수 있도록 고민해보라는 이야기도 해주셨다. 팀원들과 진행하면서도 신경이 쓰였던 부분인지라 더욱 와닿는 피드백..

💻/프로젝트 2024.01.16

[Git] branch, GItHub pull request

내일배움캠프: Node.js_4기 16일차 TIL 효율적인 팀프로젝트 진행을 위해 필수 사항이었던 깃의 협업 기능에 대해 정리해봤다. 브랜치 === 복사본 브랜치 생성 및 확인 git branch 생성할브랜치명 터미널에 git branch 명령어를 치면 내가 새로 만든 브랜치와 원래 있었던 브랜치 확인 가능 *와 초록색이 현재경로 (혹시 여기서 새로운 명령어 입력이 안 되는 상태라면 q버튼으로 빠져나오기) 브랜치 이동 git checkout -> 브랜치 뿐만 아니라 파일 이동 등 여러 기능이 있어서 헷갈릴 수 있음 git switch -> 상기 이유로 브랜치 이동만을 위해 새로 만든 기능 브랜치 생성+이동 한번에 git switch -c 브랜치이름 (c는 create 약자) git checkout -b..

🪩/Git 2024.01.15

[내일배움캠프 15일차 TIL] 팀 프로젝트 1: 영화 검색 사이트 (1)

첫 팀프로젝트는 저번 개인 프로젝트를 발전시키는 형식의 주제였다. 팀원 중 가장 완성도가 높은 한 분의 개인과제를 선정한 후 각자 역할을 나눠서 작업을 시작했고, 내가 맡은 부분은 메인 페이지의 영화 카드를 제목, 평점 등의 기준에 맞춰 정렬시키는 기능이었다. 아직 코드를 짜서 기능을 구현하는 행위가 익숙하지 않아 연습장에 먼저 시작해봤다. 비록 이 뒤에 코딩을 시작하고 저 당시에 쥐어짜낸 생각에서 8할은 뒤엎은 것 같지만 이런 연습이 쌓이고 쌓여서 도움이 되리라고 믿는다! 진행 현황 이름순, 평점순 버튼 만들고 js로 정렬 기능 구현 // 상위 부모 요소 선택 const $movieContainer = document.querySelector('#movie-container'); 먼저 querySel..

💻/프로젝트 2024.01.12