목록전체 글 (118)
all is well!!
👀 컴파일러 VS 인터프리터 제일 큰 차이점은 전처리를 해주는 머신코드가 있고없고이다. 1. 컴파일러(머신코드 있음) 전체 코드가 한번에 머신 코드로 실행한다. 바이너리 파일로 쓰여진다. 컴파일 이후에 실행이 가능하다. 2. 인터프리터(머신코드 없음) 한줄씩 소스 코드를 읽으면서 실행한다. 컴파일러에 비해 속도가 느리다. 변경 사항을 빠르게 테스트 가능하다. 👀 JS 인터프리터 단점을 극복하기 위한 노력 🟣 JIT(Just-In-Time) 컴파일러 소스코드 -> 파싱 -> (AST)컴파일 -> 실행 -> 최적화(머신코드) -> 컴파일 -> 실행…… 인터프리터는 한줄씩 읽으면서 실행하기 때문에 속도가 느린 단점이 있다. 그래서 크롬 V8 엔진이 나온 이후엔 성능 최적화를 위해 컴파일도 같이 진행한다.
👀 mongoose? 공식 mongoDB 드라이버 기반으로 만들어진 서드 파티 라이브러리 🟣 mongoose의 특징 mongoDB와의 상호작용을 간편하게 만들어준다. 스키마를 사용한다. (스키마란 데이터베이스에 저장하려는 문서의 구조를 정의할 수 있게 해주는것.) mongoose를 통해 데이터베이스 서버에 연결하고 데이터를 생성하거나 가져올 수 있다. 일정한 형식이나 틀을 갖춘 정형화된 데이터가 필요할때 스키마를 사용하면 데이터베이스에 데이터를 저장하거나 수정하는게 훨씬 간단해서 좋다. 🟣 공식 mongoDB 드라이버와 다른 점 const getUser = async (req, res, next) => { const client = new MongoClient(url); let users; try{..
👀 SQL? mySql 🟣 SQL의 특징 엄격한 스키마 규칙이 있다. 그래서 구조를 바꾸기가 어렵다. 스키마를 생성할때 특정 스키마를 따라야한다. relation이 핵심이여서 예를 들어 사용자가 등록된 테이블이 있고 각 사용자에 상응하는 상품 테이블이 있다면 relation로 연결해야 어느 사용자가 어떤 제품을 구매했는지 알 수 있다. 🟣 SQL 언제 쓰면 좋을까? 장바구니, 연락처, 거대한 소셜 네트워크 등등... 👀 no SQL? mongoDB 🟣 noSQL의 특징 특정 데이터 스키마를 요구하지 않는다. 여러가지 스키마의 문서를 넣을 수 있다. 새 문서를 넣을때 스키마를 바꾸고 프로퍼티 추가 가능 relation도 덜 따진다. Relation은 사용자 문서와 장소 문서가 있다면 사용자 문서에 ..
👀 mongoDB Atals란? https://www.mongodb.com/ko-kr/cloud/atlas/efficiency MongoDB Atlas 운영 효율성 MongoDB Atlas에서는 운영 모범 사례가 기본적으로 제공되기 때문에 데이터베이스 관리 작업을 줄이고 비즈니스 가치 창출 및 애플리케이션 개발 가속화에 집중할 수 있습니다. www.mongodb.com mongoDB의 완전 관리형 데이터베이스 서비스로 1. 자동화된 배포 2. 간단한 구성 변경 3. 지속적인 개선 4. 무료로도 사용 가능 의 장점이 있다. 👀 mongoDB Atals 사용하기 1. mongoDB 회원가입 및 로그인을 끝낸 후에 DEPLOYMENT -> Database로 이동 후 Build a Database를 클릭한다..
👀 Express.js란? 1. Node.js를 위한 프레임워크 2. Express.js는 미들웨어 중심이다. 그래서 미들웨어를 통해 요청을 받고 응답을 반환할 수 있다. 3. 미들웨어 함수는 요청이 해당 미들웨어 함수에 도달할때마다 실행된다. 4. Express는 수신 요청을 리스닝하고 다양한 타입의 요청에 대한 여러 작업을 단순화할 수 있다. 👀 Express.js 설치 및 설정 1. package.json 파일을 생성하기 위해서 터미널에서 입력한다. $ npm init 2. Express를 설치한다. $ npm install express --save 3. 설치가 잘 되었는지 package.json에서 확인한다. 4. nodemon 설치(필수는 아님, 개발할때만 필요한 라이브러리로 -dev를 붙..