본문 바로가기

전체 글67

[API Server] REST API vs GraphQL API Server란? API Server는 요청에 대한 응답을, Endpoint를 통해 해주기 위해서 규격화 되어있는 서버라고 이해하면 쉽다. 예를 들어, 클라이언트 측에서 로그인을 하게되면 API서버를 통해서 DB와의 통신을 할 수 있는 것이라고 생각하면 된다. REST API란? API를 만들기 위한 하나의 방법이 REST인 것이며, 그렇게 만들어진 API가 REST API인 것이다. REST API의 디자인 가이드 URI는 정보의 자원을 표현해야 한다. ( * 행위를 표현하는 것이 아님.) 자원에 대한 행위는 HTTP 메소드를 이용하여 표현해야 한다. GET /members/delete/1 URI는 자원을 표현해야하지만, 지금 delete라는 행위를 표현을 하였다. 따라서, 위와 같은 표현은 올바.. 2022. 3. 19.
[FastAPI] 1. FastAPI의 사용 백엔드 개발 분야로 대규모 생태계를 가진 spring framework와 뛰어난 성능을 가진 node.js 등을 사용을 하여 웹 서버를 구축하고, 서비스를 해왔지만 최근 착수한 프로젝트에 적합한 python 기반의 웹 프레임워크를 찾던 도중에, FastAPI라는 것을 알게 되었다. django, flask라는 파이썬 기반의 웹 프레임워크도 존재하지만 무겁지 않고, 성능이 가장 중요하다고 설계된 이번 프로젝트에서는 FastAPI를 선택하게 되었다.(부족한 레퍼런스는 극복하면 된다고 생각!) FastAPI 공식문서를 보면 아래와 같이 명시되어있다. Fast : Very high performance, on par with NodeJS and Go (thanks to Starlette and Pydantic).. 2022. 3. 9.
webpack이란? ES6, CommonJS. WebPack. 설치 및 설정 방법. 위와 같은 내용 정리. 1. ES6, CommonJS란? javascript의 모듈화 방식이다. (참고. 외부의 스크립트 파일을 불러오는 것, IIFE 등은 범위 문제와 즉시 실행되는 문제로 인해서 모듈 기능을 할 수 없었다.) CommonJS - exports 키워드로 모듈 생성, require()함수로 import 하는 방식. --> script 태그가 아닌 필요한 함수나 변수만을 가져올 수 있음. --> 의존성 관리가 편리 하지만, 브라우저에서는 필요한 모듈을 모두 받을때까지 아무것도 할 수 없다는 단점이 존재. ES6 - export 키워드로 모듈 생성, import로 가져오는 방식. --> server.js export defaul.. 2022. 2. 6.
Babel이란? 아래 두가지에 대한 개념 정리. 크로스 브라우징(Cross Browsing) 바벨(Babel) 1. 크로스 브라우징(Cross Browsing) 사용자 환경의 영향을 최소로 하고, 웹 서비스를 사용할 수 있도록 최적화하는 작업이다.(즉, 모든 브라우저에서 의도한대로 올바르게 나오도록 하는 작업(호환성)) --> 크로스 브라우징을 위한 것이 바로 Babel이라는 툴! 2. Babel: 크로스 브라우징 이슈를 해결하기 위한 툴 ES6+ 버전의 자바스크립트, 타입스크립트 등의 다른 언어들도 모든 브라우저에서 동작 가능하도록 호환성을 지켜줌. 바벨을 통해서 ES6+ 버전의 자바스크립트 코드는 하위버전으로 변환되고, 그로 인하여 IE나 다른 브라우저에서 동작할 수 있도록 함. 3. 바벨의 빌드 단계 3-1. 파싱.. 2022. 2. 6.