전체 글 527

MongoDB CRUD

MongoDB에서 CRUD를 할 수 있다. Insert(C), Find(R), Update(U), Delete(D)에 대한 쿼리문을 작성 할 수 있다. C : db.fruits.insert([{ "fruit": "apple" }, { "fruit": "banana" }, { "fruit": "blueberries" }]) R : db.zips.find({"state":"NY"}) U : db.animals.updateMany({ "animal": "tiger" }, { "$set": { "type": "dangerous", "look": "adorable" }}) D : deleteOne, deleteMany $match, $project, $group 연산자를 사용할 수 있다. $match : 지정된 ..

Atlas Cluster 생성하기

Atlas Cluster는 다음 10가지 단계를 통해 생성합니다. Create an Organization을 선택합니다. 원하는 Organization 이름을 입력합니다. Cloud Service가 MongoDB Atlas로 되어 있는지 확인하고 다음으로 넘어갑니다. Create Organization을 누릅니다. New Project를 누릅니다. 프로젝트의 이름을 정한 뒤 다음으로 넘어갑니다. Create Project를 누릅니다. Build a Cluster를 누릅니다. 맨 오른쪽 FREE라고 써진 옵션의 Create a cluster를 누릅니다. Cloud Provider & Region에서 현재 위치에서 가장 가까운 지역을 선택한 뒤 Create Cluster를 누릅니다. 이 작업은 1-2분 정도..

MongoDB

Achievement Goals NoSQL의 장점 및 특징에 대해서 이해할 수 있다. NoSQL 데이터베이스는 관계에 중점을 둔 SQL 데이터베이스보다 자유로운 형태로 데이터를 저장할 수 있으므로 필요에 따라 새로운 데이터 유형을 추가할 수 있다. 데이터베이스를 클라우드 기반으로 쉽게 분리할 수 있도록 지원하여 저장 공간을 효율적으로 사용합니다. 데이터베이스를 클라우드 기반으로 쉽게 분리할 수 있도록 지원하여, 저장 공간을 효율적으로 사용하고 수평적 확장의 형태로 무한대로 서버를 증설할 수 있다. 스키마를 미리 준비할 필요가 없어 개발이 빠르게 해야 하는 경우에 매우 적합 MongoDB의 도큐먼트(Document)와 컬렉션(Collection)에 대해 이해할 수 있다. 도큐먼트(Document) : 필드..

im-sprint-shortly-mvc part1

1. Sequelize 설치 https://sequelize.org/ npm install --save sequelize 2. Sequelize CLI 설치 마이그레이션을 할 수 있도록 돕는 툴이고 CLI 에서 모델을 생성해주거나, 스키마 적용을 할 수 있도록 돕는다고 한다. npm install --save-dev sequelize-cli 3. 프로젝트 초기 단계를 자동으로 설정하는 bootstraping npx sequelize-cli init 이 명령어를 통해 아래와 같은 폴더들이 생성된다. config, contains config file, which tells CLI how to connect with database models, contains all models for your proje..

ORM

Advanced ORM의 장점을 이해할 수 있다. 직관적으로 읽히고 SQL문이 없어도 데이터베이스에 접근가능 Sequelize ORM과 관련 CLI 툴들을 공식 문서를 보고 사용할 수 있다. Sequelize를 이용해 모델을 작성할 수 있다. Sequelize를 이용해 마이그레이션을 할 수 있다. 마이그레이션의 개념과 필요성을 이해할 수 있다. Sequelize ORM으로 1:1. 1:N, N:N 관계를 표현할 수 있다. MVC 디자인 패턴의 한계를 이해할 수 있다. ORM ORM(Object-relational Mapping)이란 OOP간의 호환되지 않는 데이터를 변환하는 프로그래밍 기법으로 쉽게 말해 객체로 관계형 데이터베이스를 관리하는 기술. 관계형 데이터베이스의 세계, 자바스크립드 객체의 사이의 ..

백엔드/MVC 2021.11.18

29_binaryHeap

문제 정수를 요소로 갖는 배열을 입력받아 이진 힙(binary heap)*을 리턴해야 합니다. 이진 힙(binary heap)은 노드의 값이 특정한 순서를 가지고 있는 완전 이진 트리(Complete Binary Tree)입니다. 완전 이진 트리는 이진 트리의 (마지막 레벨 또는 마지막 깊이를 제외하고) 모든 레벨이 노드로 가득 채워져 있어야 합니다. 마지막 레벨은 왼쪽부터 차례대로 채워져 있습니다. 이진 힙에서 부모 노드의 값이 (이진 트리이므로 2개의) 자식 노드의 값보다 큰 경우를 최대 힙(max heap), 반대의 경우를 최소 힙(min heap)이라고 합니다. 더보기 // 아래 코드는 수정하지 마세요. function swap(idx1, idx2, arr) { // 두 변수를 바꾸는 방법 // ..

기능개발

문제 설명 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포됩니다. 먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열 progresses와 각 작업의 개발 속도가 적힌 정수 배열 speeds가 주어질 때 각 배포마다 몇 개의 기능이 배포되는지를 return 하도록 solution 함수를 완성하세요. 입출력 예 #1 첫 번째 기능은 93% 완료되어 있고 하루에 1%씩 작업이 가능하므로 7일간 작업 후 배포가 가능합니다. 두 번째 기능은 30%가 완료되어 있고 하..

코테/스택&&큐 2021.11.17