Nov 2, 2021

Sung Hyun Hong (Jenny)·2022년 1월 24일
0

간략한 프로그래밍 정리

  • git 정리
    • git branch ⇒ git 브랜치 만들기
    • git checkout ⇒ git 브랜치 전환하기
      • checkout = 내가 사용할 브랜치를 지정하는 것
      • git checkout -b ⇒ 브랜치 작성 및 체크아웃 동시 실행
    • git add . ⇒ git 추가하기
    • git commit -m "" ⇒ add 설명 추가하기
    • git merge ⇒ 현재 사용하고 있는 브랜치로부터 커밋 실행
    • git checkout master ⇒ switch to master 브랜치
    • git branch -d ⇒ branch 삭제하기
  • sequelizemeta
    • sequelizemeta를 알기 전에, sequelize ORM 의 개념부터 알아야 한다.
    • ORM이란, 객체와 관계와의 설정을 의미합니다. 객체 모델과 관계형 모델간애 불일치가 존재하는데, 객체간의 관계를 바탕으로 SQL을 자동생성하여 불일치를 해결하는 것
      • ORM advantages
        • CRUD을 위한 긴 SQL 문장을 작성할 필요가 없다
        • 가독성과 생산성을 높여준다
        • re-use 및 유지보수의 편리성이 증가한다.
        • ORM은 DB에 종속적이지 않으며, 비교적 적은 리스크와 시간이 소요되며, 구현 방법 및 자료형 타입까지 유효하다.
      • ORM disadvantages
        • 완벽한 ORM만으로는 구현하기가 어렵다. 다시 말해, 설계에는 매우 신중해야 하고, 잘못 구현될 경우, 일관성이 무너질 수 있다.
    • Sequelize
      • promise를 기본으로 지원 가능
        • 복잡한 비동기 코드를 깔끔하고 쉽게
        • chaining을 통해 값을 전달 하거나 연속된 일련의 작업 처리
        • error handling에 대한 처리를 깔끔하게
      • npm install 하기
        • npm i - - save sequelize mysql2
        • npm i - - g sequelize-cli
      • root 폴더 진입
        • sequelize init
          • 폴더와 파일 생성
      • migration 생성 ⇒ purpose: schema에 변경이 필요할 때마다 진행, migration 필요한 데이터 자동 저장
        • npx sequelize db:migrate
          • code template created
      • DB models 정의
        • npx sequelize-cli model:generate - - name 'table 이름' - - attributes firstName:string,lastName:string,email:string
      • seeders
        • npx sequelize-cli seed:generate - - name demo-user
        • sequelize db:seed:all
      • migration 진행
        • npx sequelize db:migrate - - env development
          • "sequelizemeta" table create
      • migration 취소
        • npx sequelize db:migrate:undo - - env development
      • DB 생성
        • user
          • npx sequelize model:generate - -name User - -attributes userName: string
        • text
          • npx sequelize model:generate - - name Text - -attributes textContent: string
        • npx sequelize-cli db:create
        • npx sequelize-cli db:migrate
  • JSON.stringify
  • JSON parse
    • parse 메소드가 string 객체를 Json 객체로 변환
  • JSON hoisting
    • Json 의 선언된 변수, 함수의 선언부를 scope 에 따라 최상단으로 끌어올리는 개념이며, 실질적이 메모리에 영향을 주지는 않는다.

      ⇒ var, function 선언이 자동적으로 제일 위로 올라가는 것

      ⇒ 코드가 나타나는 순서대로 자동적으로 선언된다는 것


ref:

https://tibetsandfox.tistory.com/23

  • sql
    • 관계형 데이터베이스에서 사용하는 표준 질의언어
    • 모든 DBMS에서 사용 가능
    • Interpreter 언어
    • 대소문자 구별 없음

  • sequelize include

  • javascript for..of, for..in
    • for in 반복문 : 객체의 모든 열거 가능한 속성에 대해 반복
    • for of 반복문 : [Symbol.iterator] 속성을 가지는 컬렉션 전용
    • error
      • TypeError: Cannot read property 'nickname' of undefined
      • 이유: for..of 가 아닌 for..in을 썼기 때문에 발생
  • 팀 회의 결과 db 수정 ⇒ 내가 해야 할 일: 댓글 수정 기능 (include와 where 사용하기 ⇒ completed by Nov 2, 2021

ref:

https://velog.io/@yesparrot/sequelizeDB

https://kyounghwan01.github.io/blog/etc/sequelize/sequelize-join/#include

https://jsdev.kr/t/for-in-vs-for-of/2938

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Statements/for...of

profile
오늘 하루도 열심히!

0개의 댓글