230316_TIL

majungha·2023년 3월 17일
1

TIL

목록 보기
19/68

앞으로의 목표 👍


  1. javascript 능력 및 고난도 알고리즘 풀이 능력
  2. Nest, Graphql등 최신 기술 스택 활용 능력
  3. 기초 미니프로젝트 포트폴리오
  4. 로그인, 결제기반 심화프로젝트 포트폴리오
  5. 배포를 위한 네트워크 및 CI/CD 배포자동화 능력
  6. 120% 백엔드 개발 지식

오늘부터 꾸준히 해야할 일 👍


  • 영타실력 늘리기
  • 단축키 사용 익숙해지기
  • 코드리딩 실력 키우기
  • 데일리 퀴즈
  • 포트폴리오 작성
  • 독스에 친숙해지기
  • MDN 보는 연습하기

오늘의 수업 👍



📝 반복문


  • 일정 로직을 계속 반복해서 실행하는 문법

  • for()로 시작하며, 소괄호 () 안에 문법을 작성한다. 문법에는 최초식, 조건식, 증감식이 있다

  • 최초식은 반복문을 처음 실행할 때 선언 (어디서부터 시작하는지를 결정하는 시작점)

  • 조건식은 반복문을 실행하는 조건을 설정 (해당 조건식이 true일 때만 로직을 실행)

  • 증감식은 반복문을 실행할 때마다 최초식을 증감 (반복문의 실행 범위를 조절할 수 있음)

  • for 문법에서는 break와 continue 기능을 사용할 수 있다.

    • break - 원하는 구간에서 반복문을 종료 (함수안의 return과 유사함)

      for (let i = 0; i < 5; i++){
        if (i === 2) {
          break
        }
        console.log(i) // 0 1
      } 
    • continue - 해당 구간의 반복문을 실행하지 않음

      for (let i = 0; i < 5; i++){
        if (i === 2) {
          continue
        }
        console.log(i) // 0 1 3 4
      } 

▷ 반복문의 문법

이름특징사용 범위문법
for-in객체를 반복할 수 있다.문자열, 객체, 배열for (let key in object)
for-of각각의 요소들을 가져올 수 있다.배열for (let key of object)
forEach배열에만 사용할 수 있다.배열Array.forEach(function())
while최초식, 조건식, 증감식이 분할되어 사용for와 동일while()
  • for-in문

    const str = 'abcde'
    for (let data in str){
      console.log(str[data]) // 'a' 'b' 'c' 'd' 'e'
    }
  • for-of문 - 비교적으로 시간이 걸린다

    const arr = [1,2,3,4,5]
    for (let data of arr){
      console.log(data) // 1 2 3 4 5
    }
  • forEach - break나 continue 사용 불가 (반복이 중단된 것 처럼 보이게 가능)

    const arr = ['a', 'b', 'c']
    arr.forEach((data) => {
      console.log(data) // 'a' 'b' 'c'
    })
  • while - ()안에는 조건식이 들어감

    let answer = 0 // 로봇이 움직인 획수
     let current = 1 //로봇의 현재 위치
     while(current !== 100) {
      answer ++
      current ++
     }
    answer // 99

📝 서버와 포트


  • 브라우저(손님) -> 프론트엔드 서버(종업원) - HTML서빙

  • 프론트엔드 서버 - 누군가의 접속을 24시간 기다리는 프로그램

  • 백엔드 서버 - API 실행, 데이터베이스 저장

  • 데이터베이스(DB) 서버 - 인터넷이 되는 엑셀, 백엔드 서버 접속을 24시간동안 기다림

  • 포트번호 - 서버에서 필수로 있어야 하는 번호, 포트번호를 기준으로 요청(req)된다.

  • 네이버 같은 곳에 포트번호가 없는 이유
    - http://naver.com:80 -> http의 기본포트는 80이고, 생략 가능하다.
    - https://naver.com:443 -> https의 기본포트는 443이고, 생략 가능하다.

📝 CPU / RAM / DISK


  • CPU - 계산해줘

  • RAM - 변수에 저장해줘 -> 임시저장 (대신에 빠름)

  • DISK - 엑셀에 저장해줘 -> 완벽한 저장 (대신에 느림)

📝 Nodemon(노드몬)


  • 서버를 수정하고 저장하면 반영이 안되지만, 서버를 재시작하면 반영이 된다.

  • 그 과정이 굉장히 비효율적이기 떄문에 노드몬을 사용한다.

    $ yarn add nodemon
  • 명령어 실행하는 두가지 방법

  1. 컴퓨터 전체에 설치

  2. package.json에서 나만의 명령어 만들기 ( scripts에 명령어 추가하기 )

    "scripts": {
      "나만의명령어": "nodemon index.js"
    }
    • 명령어 실행 yarn 나만의명령어

📝 json 데이터 받아오기


  • express.json() // 옛날에는 bodyParser 사용
    app.use(express.json());

📝 API docs


  • 백엔드개발자는 API를 만들고 꼭 명세서를 작성해야 한다.

  • 명세서를 작성을 하지 않으면 프론트엔드 개발자는 이 API가 어떤 일을 하는지 모르기 때문

  • 명세서를 잘 작성해야 프론트엔드 개발자랑 협업하기 좋다

오늘의 마무리 👍



  • 복습
  • github 공부
  • 블로그 포스팅
  • 데일리 퀴즈
  • 알고리즘 문제 풀기

항상 겸손한 자세로 배우면서 성장하자, 할 수 있다!! 💪


출처 : 코드캠프

profile
개발자 블로그 / 항상 겸손한 자세로 배우면서 성장하자 할 수 있다!

0개의 댓글