ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 2021_12_26 개발블로그, 기술블로그 제작
    IT/React 2021. 12. 27. 01:24

    우리가 프론트만이 아닌 백엔드도 할 것이다.

    백엔드를 메인으로 가져갈게 아니기 때문에 strapi 를 사용할것

     

    backend: strapi
    • Headless CMS (Content Management System)로 Node로 구성된 API를 간편하게 만들 수 있게 해주는 오픈소스 플랫폼
    • strapi 는 무료 이긴한데 배포가 유료다
    • 배포까지 X
    • 실제로 쓰나요? -> 쓰는 곳 있음 NASA, TOYOTA, 요기요 등..
    • 입사했는데 back 개발자가 없으면 이거 쓰면된다..
    RDBMS (관계형 데이터베이스 관리 시스템)
    • Excel = Database (대표적인 형태)
    • 예를 들어서 테이플 구조로 되어있다
    • 데이터베이스를 직접 다루는 일은 거의 없다 = 왜? API를 받아서 쓰기 때문 (난 프론트니깐)
    • 직접 다뤄야 한다..? 탈출하셈
    • 데이터베이스도 데이터가 많이 쌓이면 쌓일수록 느려진다.
    • DBA(DataBase Analytics) 다루는 사람이 따로있다. 
    • 대표적인 DB는 mySQL, PastgreSQL, MariaDB, Oracle SQL 등..
    ID Name Age Gender
    0 John 29 male
    1      

     

    데이터를 데이터베이스에서 조회할 때 쓰는 언어 : SQL 언어

     

    SQL(Structured Query Language )
    • 데이터베이스에서 데이터를 조회하거나 변경하거나 즉, 제어할떄 사용하는 문법
    • 그래서 Query 라는 말이 들어있다
    • 데이터를 조회한다 : 'SELECT * FROM DB' 같은 식으로 쓰게된다
    • 조건을 걸어서 데이터를 조회 : 'SELECT *FROM DB WHERE { ... }' 

     

    RESTful API 
    • 가장 많이 쓰는 이름의 API
    • REST (Representational State Transfer) 라고 해서 상대를 주고 받는 API
    • 쉽게 생각 하면 데이터를 갱신, 조회 기타 등등 하면 1건당 1개 처리 하도록하는 것
    • 데이터를 어떻게 내려줄 지의 주체 : 서버
    • http://localhost:1337/posts/ > GET
    • http://localhost:1337/posts/[id] > 개별 포스트를 GET으로 받아온다
    • 언제나 서버가 어떻게 내려주냐에 따라서 갈린다.
    • 기존에는 이것밖에 없었다.. 

     

    RESTful API 말고 다른 것도 하나 있는데

    GraphQL

    데이터를 어떻게 내려줄 지에 대한 주체 : 서버

    'SELECT {id, name, age} FROM DATA' <- 이렇게 가져온다 딱봐도 복잡쓰

    SQL의 문제 : 복잡함

    이거를 단순하게 만들자 한게 바로 -> GraphQL 이다

     

    {
    	member{
        id,
        name,
        age
        }
    }

     

    이렇게만 하면 바로 불러와진다

    GraphQL의 단점은 2019년에 만들었다 - 페이스북에서

    요즘은 GraphQL을 프론트에서 많이 활용하는 편

    엄청난 장점이 있다 GraphQL은 서버가 RESTful API를 제작할 필요가 없다.

    그냥 GraphQL을 지원하는 서버만 있으면 된다.

    카카오, 네이버, 오늘의집에서 쓰고있다

     

    이제 strapi 세팅을 할 것 (node js로 되어있다)

     

    개발환경

    Front:Next + Typescript + SWR + Emotion + Axios

     

    localhost:3000 에 설치되어있다

     

    Backend는 strapi를 써서 단순하게 만들었다

     

    localhost:1337 에 있다 

     

    개발환경을 동시에 띄어져있어야 하는 경우가 있어서 같은 컴터에 2개다 띄우는 경우가있다

     

    네긋트 + 타입스크립트 + SWR = 클라이언트 만들것

     

    오늘의 과제
    Axios로 고통받고 있음
    저장소 올려줄것인데
    저장소 포크 떠가지고 BE, FE 환경 세팅 해주고
    FE 에서 Layout 구현 // 헤더 푸터, 글작성 버튼 정도 있는?

    Write / Posts 사이 오갈 수 있도록

     

    'IT > React' 카테고리의 다른 글

    2022_01_06 React Form  (0) 2022.01.06
    2021_12_30 React 마지막 특강 + 정리  (0) 2021.12.30
    2021_12_21 React 특강  (0) 2021.12.22
    2021_12_16 React 이벤트 처리하기  (0) 2021.12.16
    2021_12_09 yarn start 에러, 해결, 결론  (0) 2021.12.09
Designed by Tistory.