목록분류 전체보기 (305)
개발하고 싶은 초심자

1. NoSQL 기반의 비관계형 데이터베이스 ‣ 비구조적인 대용량의 데이터를 저장하는 경우 → 비관계형 데이터베이스이기 때문에 자유로운 형태로 데이터를 저장할 수 있음. → 필요에 따라 새로운 데이터 유형을 추가할 수 있음. → 소프트웨어 개발에 정형화되지 않은 많은 양의 데이터가 필요한 경우 효율적임. ‣ 클라우드 컴퓨팅 및 저장 공간을 최대한 활용하는 경우 → 데이터베이스를 클라우드 기반으로 쉽게 분리할 수 있도록 지원한다. → 저장공간을 효율적으로 사용한다. → 수평적 확장의 형태로 데이터베이스를 증설하므로 이론상 무한대로 서버를 계속 분산시켜 증설할 수 있음. ‣ 빠르게 서비스를 구축하고 데이터 구조를 자주 업데이트하는 경우 → 스키마를 미리 준비할 필요가 없기 때문에(스키마와 데이터 타입이 유연..

1. MongoDB 사이트를 들어간다. 2. Log in with Google을 클릭한다. 3. View All Organizations를 클릭한다. 4. 우측에 있는 Create New Organization을 클릭한다. 5. Organization Name을 설정하고, MongoDB Atlas에 체크되어 있는지 확인한 후 Next를 클릭한다. 6. Create Organization을 클릭한다. 7. New Project를 클릭한다. 8. Project Name을 지정하고 Next를 클릭한다. 9. Create Project를 클릭한다. 10. Build a Cluster를 클릭한다. 11. FREE라고 써진 옵션의 Create a cluster를 클릭한다. 12. Cloud Provider & Re..
페어 분께서 지난 주에 코로나 검사를 받고, 오늘 양성이라는 결과가 나왔다며 페어 진행을 하지 못하겠다고 말씀하셔서 지난 주에 이어 shortly-mvs sprint를 혼자 진행했다. 혼자 했을 때는 많이 어렵게 느껴졌고, 줌 세션을 들었을 때는 무슨 말인지 이해가 잘 되지 않았다. 그러나 정규 학습 시간이 끝난 이후에 학습하던 중, 아고라 스테이츠에 올렸던 질문에 대한 답변과 예전에 함께 페어를 진행했던 수강생 분의 도움으로 스프린트를 진행하면서 들었던 의문을 해결할 수 있었다. cmarket sprint에서 get 요청이 제대로 들어가지 않았던 케이스와 shortly-mvc sprint에서 redirection이 제대로 되지 않아 이후의 테스트 케이스 통과에도 어려움이 있었는데, 둘 다 오타난 것 때..
node -v 명령어로 노드 버전 확인 npm cache clean -f npm 캐시 삭제 npm install -g n 노드 버전관리 n 플러그인 설치 n latest // 최신버전 설치 n lts // lts버전 설치 n stable // 안정된 버전 설치 // nvm으로 원하는 버전 깔기 nvm install 버전 npm -v // npm 현재 버전 확인 npm i -g npm // npm 업데이트 // -g 옵션이 없으면 현재 프로젝트에만 적용됨 npm i -g npm@버전 // npm 다운그레이드

1. ORM(Object Relational Mapping /객체-관계 매핑) 데이터베이스 데이터 Object 필드 : 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것. → 객체 지향 프로그래밍은 클래스를 사용하고, 관계형 데이터베이스는 테이블을 사용하여 객체 모델과 관계형 모델 간에 불일치가 존재하는데, 이를 ORM을 통해 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결한다. → 객체를 통해 간접적으로 데이터베이스 데이터를 다룬다. persistent API라고도 할 수 있다. ex) JPA, Hibernate 등 ⇒ ORM을 이용하면 따로 SQL문을 짤 필요 없이 객체를 통해 간접적으로 데이터베이스를 다룰 수 있다. ✷ 객체 지향 프로그래밍에서 객체는 상태를 나..

1. MVC(Model-View-Controller) ✷ MVC : 소프트웨어가 돌아가는 방식에 대한 하나의 디자인 패턴. → 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 널리 사용되는 소프트웨어 디자인 패턴 → 어떤 특정한 역할들에 대해 역할분담을 할 때 가이드라인을 제시하는 방법 중 하나 → 서비스 처리들을 각각 기능별로 나누게 됨으로써 프로그래밍을 할 때 하나의 코드베이스에서 모든 것들을 하는 것이 아닌 정돈된(의도된) 코드를 특정 역할에서 할 수 있게 한다. ⇒ 코드 가독성, 관리성, 코드 퀄리티, 협업 등의 모든 것이 좋아진다. ex) Express, Angular, Django, Flask 등 브라우저에서 유저의 액션들이 일어나면 라우터 쪽으로 특정 엔드포인트들을 라우팅(분기), 각 ..
오늘은 지난 section 2에 했던 cmarket을 바탕으로 database 스프린트를 진행했다. hooks와 redux는 그나마 연관되어 있던 것이라 쉽게 느껴졌는데, 이번 database 스프린트는 서버에 연결을 하고, 데이터의 영속성을 위해 데이터베이스에 저장하여 써야 해서 많이 낯설고 힘들게 느껴졌다. 게다가 오늘은 페어 분의 코로나 검사로 인한 부재로 모르는 것이 있을 때나 낯선 에러가 나올 때마다 구글링으로 전부 해결해야 했다. 그렇게 혼자 공부하며 찾아감으로 인해 보다 더 많은 것을 알 수는 있었지만, 혼자 하면서 막히는 부분이 생길 때마다 소통하며 해결해나갈 동료가 없다는 것은 막막함을 느끼기도 했다. 결국 오늘 스프린트는 테스트 케이스를 통과하지 못한 채 주어진 페어 시간인 5시간이 지..

1. 인스타그램 스키마 디자인 1. 게시물(Post) 작성 기능 : 인스타그램에서는 여러 개의 사진(A)을 올릴 수 있다. 사진을 업로드할 때, 사진을 설명하는 간단한 글(C)이 올라간다. 2. 게시물에 댓글 달기 및 좋아요 기능 : 게시물이 업로드되면 다른 사용자는 이 게시물에 댓글(E)을 달 수 있고, 좋아요(B) 를 눌러 관심을 표할 수 있다. 3. 해시태그 기능 : 게시물에 #감성 #맛집 등의 해시태그(D)를 남길 수 있으며, 이 해시태그를 누르면 이 해시태그가 사용된 모든 게시물을 한 데 모아 볼 수 있다. 4. follow 기능 : 인스타그램에서 친구 관계는 팔로워(follower)와 팔로잉(following)으로 나뉜다. 김코딩이 최해커를 following 하면, 최해커의 피드가 김코딩의 홈..