[TIL]

Sarahsea 사라씨·2021년 7월 28일
0

TIL

목록 보기
41/128

오늘 배운 것

  • MVC
    아이디어, 디자인패턴, 하나의 방법론
    Model - Controller - View
    이런 패턴으로 만들어진 라이브러리, 프레임워크가 있다,
    ex) express ruby python django
  1. Model : 데이터정보를 가지고 있음(or db랑 연결담당) view랑 직접 이어질 일 거의 없음
  2. View : "그리기만 함" 유저가 보는 화면 렌더, 컨트롤러랑 인터랙트
  3. Controller : 가공담당, 통역담당, view의 이벤트,액션에 대한 인풋을 받고, 적절히 가공해서 모델에 전달해서 원하는 데이터를 받아오고 그걸 또 가공해서 뷰로 넘기고~
  • ORM Object - Relational - Mapping
    객체 와 RDB 사이의 통역, 중계자
    ORM의 장점
    1. 관계형 데이터베이스 형태, 스키마와 객체형 프로그래밍 간의 간격이 있다
    객체형이 익숙한 개발자라면, ORM을 이용해서 관계형 으로 사고 하지 않고도 쉽게 RDB 접근 가능
    2. 어댑터-자동통역, 자동화 기능들,,
    sql문을 쓰지 않고도 원하는 crud 등을 수행,
    여러가지 RDBMS 들 조금씩 미묘하게 문법에 차이가 있는데 (varchar, 라든지..) 일일히 설정안해도 알아서 변환 해준다
    테이블 생성시 id나 created_at 등 자동으로 만들어줌 (옵션으로 안할수도 있다)

ORM을 왜? 쓰는지! , 정말 그 기능이 필요한건지? (자동기능들), 어떻게 사용하는지 (+Join의 경우..) 를 스프린트 통해 익히기 ing

  • ORM 인 sequelize > sequelize-cli모듈

느낀 점

  • module.export = {}
  • 비동기
  • 커링함수
    이상의 구멍숭숭인가

-> controller 구현에서, 클라이언트에서 온 post요청에 담긴 url을 받아서 module/utils.js 유틸스 모듈에있는 함수들을 이용해서 (getUrlTitle,..) url, title (db에 넣어줄 실제 데이터 값)를 가공한 뒤, sequelize 문법인 create ( sql insert into쿼리 문 대신) 써서 db에 넣어주고, 알맞은 응답을 보내야 함

근데 getUrlTitle은 첫번째 인자 url, 두번째 콜백함수를 받아서, 콜백함수(err, title)를 리턴하는 고차함수다

getUrlTitle 함수에 (url, ()=>{}) 인자를 뭘 넣어야 할지🤯

-> 페어 중 한 분이 시간내어 설명해주셨으나 시원하게 해결이 안되고 있다,...

  • 이해가 안되고 있는 나 자신의 상태를 받아들이기가 더 어렵다 ㅠ, 이럴 땐 TIL이고 뭐고 쓰는 거 자체가 사치처럼 느껴지지만, 매일 기본적으로 할것들을 놓지 말자, 자신과의 약속, 이해 될 때 까지 비동기챕터를 다시 봐야겠다

내일은

  • 지금부터 내일임..이미 내일임..
  • 밤을 불사르기
  • 스프린트 놓지 않고 끝까지 물고 뜯기
profile
생각하는 사람

0개의 댓글