본문 바로가기

verdantjuly/Today I Learned

TIL 20230613

728x90

 

Event

20:00 특강

 

생활 계획표

 

AM 6:00 체조, 아침식사, 산책, 샤워, 설거지, 세탁

AM 8:00 입실, TIL 리뷰, 노드 시간표 및 오늘 목표 체크

AM 8:30 공부 시작

PM 1:00 ~ 2:00 점심 식사

PM 6:00 ~ 7:00 저녁식사

PM 7:00 TIL, WIL 제출

PM 9:00 퇴실 (카톡 확인)

PM 11:00 취침

 

이번 주 목표 및 일정

월 : 노드 입문 1~16

화 : 노드 입문 17~ end

수 : 과제 / 20:00 후발대 수업 OT

목 : 과제

금 : ~ 13:00 과제 점검 및 제출  /  19:00 개인과제 해설 / javascript 문법 종합반 3주차

토 : javascript 문법 종합반 4주차

일 : javascript 문법 종합반 5주차

 

오늘 목표

노드 입문 1-17 ~ 끝까지 (분량 많음, 몰입!!!)

TIL 작성

TIL 리뷰

프로그래머스 1문제 풀기

오늘 한 것

노드 입문 1-17 ~ 끝까지 

TIL 작성

TIL 리뷰

프로그래머스 풀기

2차원으로 만들기 : https://verdantjuly.tistory.com/202

 

1. Studio 3T

MongoDB를 위해 만들어진 MongoDB Client

2. super

부모 오브젝트의 함수를 호출할 때 사용

 

line 15에 super 사용 예시 

3. URI

식별자도 URI이다.

/posts/:_postId 에서 _postId는 변수이기 때문에 URI가 아니다.

변수 이름은 마음대로 생성 가능하다. 

 

4. mongoose

설치 : 프로젝트 내에서 npm install mongoose

 

Document : MongoDB에서 가지고 있는 데이터 하나 

Collection : Document의 집합

Schema : Document에 어떤 종류의 값이 들어가는지 정의(null, String, Number ...)

Model : 데이터베이스에서 데이터를 저장할 때 데이터의 구조를 담당

 

5. node.js에서는 폴더의 이름만 지정해 줘도 안에 있는 index.js를 불러온다.

 

6. middleware

middleware app.use(express.json())

app.use("/api", [goodsRouter]) 보다 위에 작성되어야 한다.

> 미들웨어는 순차적으로 거쳐가기 때문이다.

 

7.   ../

상위 폴더로 이동

 

8.POST 요청이 되지 않음

문제

localhost:3000/api/goods 에서 POST 요청이 되지 않음

에러메시지 : connection was forcibly closed by a peer

시도

오타가 나면 해결이 되지 않는다는 조언을 받고 파일을 꼼꼼히 살펴 봄.

콜라 이미지 url을 찾기 귀찮아서 복사 했었는데 이번에는 JSON 을 수기로 작성함.

해결

schemas 의 스키마에는 goodsId가 아닌 defaultId가 들어있었다.

그리고 defaultId 의 required 가 true 여서 발생한 문제 같다.

알게 된 점

복사하지 말자. 오류 찾는 과정에서 걸리는 시간이 더 아깝다.

 

9.   .gitignore

git의 변경사항에 속하지 않게 해 줌

node_modules 와 같은 파일을 넣는다!

 

10. git 배포

- 처음 배포하는 서버인 경우

git clone

npm install

서버 켜기

 

- 이미 배포했던 서버의 코드를 최신 코드로 재시작 하고 싶은 경우

git pull

npm install

서버 재시작

 

11. SSH (Secure SHell) 시큐어 쉘

네트워크 상의 다른 컴퓨터에 로그인하거나

원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해주는

응용 프로그램 또는 그 프로토콜

 

대표적인 사용 : 데이터 전송 (깃허브), 원격 제어 (AWS)

 

참고자료 : SSH란?

 

12. ls -la

ls -l (use a long listing format)

긴 리스트로

  • filetype
  • file permissions
  • number of links
  • owner name
  • owner group
  • file size
  • time of last modification
  • the name of the file or directory

ls -a (do not ignore entries starting with .)

.으로 시작하는 것들 무시하지 않기 (숨김 폴더 보여 주기)

 

위 두 개의 명령어가 합쳐진 것이 ls -la이다.

 

참고자료 : https://askubuntu.com/questions/517229/what-does-ls-la-do


정리 

Studio 3T : MongoDB를 위해 만들어진 MongoDB Client

 

super : 부모 오브젝트의 함수를 호출할 때 사용

 

식별자도 URI이다.

/posts/:_postId 에서 _postId는 변수이기 때문에 URI가 아니다.

변수 이름은 마음대로 생성 가능하다. 

 

mongoose

설치 : 프로젝트 내에서 npm install mongoose

Document : MongoDB에서 가지고 있는 데이터 하나 

Collection : Document의 집합

Schema : Document에 어떤 종류의 값이 들어가는지 정의(null, String, Number ...)

Model : 데이터베이스에서 데이터를 저장할 때 데이터의 구조를 담당

 

node.js에서는 폴더의 이름만 지정해 줘도 안에 있는 index.js를 불러온다.

 

middleware

app.use(express.json())가

app.use("/api", [goodsRouter]) 보다 위에 작성되어야 한다.

> 미들웨어는 순차적으로 거쳐가기 때문이다.

 

   ../

상위 폴더로 이동

 

코딩을 배우는 기간 만큼은 복사 붙여넣기를 자제하자. 

 

git 배포

- 처음 배포하는 서버인 경우

git clone

npm install

서버 켜기

 

- 이미 배포했던 서버의 코드를 최신 코드로 재시작 하고 싶은 경우

git pull

npm install

서버 재시작

 

SSH (Secure SHell) 시큐어 쉘

네트워크 상의 다른 컴퓨터에 로그인하거나

원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해주는

응용 프로그램 또는 그 프로토콜

대표적인 사용 : 데이터 전송 (깃허브), 원격 제어 (AWS)

 

ls -l (use a long listing format)

긴 리스트로

  • filetype
  • file permissions
  • number of links
  • owner name
  • owner group
  • file size
  • time of last modification
  • the name of the file or directory

ls -a (do not ignore entries starting with .)

.으로 시작하는 것들 무시하지 않기 (숨김 폴더 보여 주기)

 

위 두 개의 명령어가 합쳐진 것이 ls -la이다.

 

체크리스트

[ ... ] 예쁜 말로 협업하였는가?

팀 안에서는 예쁜 말을 잘 사용하였으나 친한 동기와는 정말 솔직한 표현을 많이 하였다.

 

[ O ] 12시간 동안 몰입하였는가?

오늘은 몰입해서 하였다. 완강 축하합니다!

 

[ ... ] 코딩 시 복사 + 붙여넣기를 하지 않았는가?

최대한 복사 붙여넣기를 하지 않았다고 생각하였으나 그렇지 않았다. 기준을 조금 바꿔야겠다. 

 

[ O ] 친절한 개발자였는가?

친절한 다영 씨. 

 

[ O ] 오늘을 평가하였을 때 주니어 개발자가 될 수 있겠는가?

완강을 못할 줄 알았는데 완료해서 기쁘다. 희망이 보인다.

 

소감

완강 축하합니다~ 이제 개인과제 진입!

 

'verdantjuly > Today I Learned' 카테고리의 다른 글

TIL 20230615  (0) 2023.06.15
TIL 20230614  (0) 2023.06.14
TIL 20230612  (0) 2023.06.12
TIL 20230611  (0) 2023.06.11
TIL 20230610  (0) 2023.06.10