본문 바로가기
300x250

코드스테이츠36

[코드스테이츠] first-project 후기(2주 프로젝트) 3번의 섹션이 끝나고 드디어 프로젝트 단계에 들어갔다. 프로젝트에 들어가기 전부터 같이 프로젝트를 하자고 했던 페어들이 있어서 팀 구성에는 문제가 없을 줄 알았는데, 한분이 섹션 3 ha에서 떨어지게 돼서 급하게 한 명의 멤버를 구해서 4명이서 하게 되었다.( 팀원 3명의 이름을 쓰면 웬만하면 된다.) 운이 진짜 좋았던게 나는 프런트엔드 지망이어서 프런트엔드로서 한 명의 프런트엔드와 두 명의 백엔드를 만났는데, 프런트엔드 분은 디자인에 강했고, 두 명의 백엔드는 이미 다른 국비지원 프로그램으로 코딩의 맛을 보고 오신 분들이라 많이 배울 수 있었다. 내가 팀원을 모아 팀장을 했지만 가장 낮은 위치에서 배울 수 있었다. 2주 프로젝트 후기의 결론부터 말하자면 '아쉬운 점은 많았지만, 성공적이였다'라고 말하고.. 2021. 9. 6.
가비지컬렉션 개념정리 가비지 컬렉션(garbage collection) 가비지 컬렉션은 프로그램에서 더 이상 사용하지 않는 메모리를 자동으로 정리하는 것이다. 이 기능을 가진 언어(혹은 엔진)는 자바, C#, 자바스크립트 등이 있다. 자바스크립트는 눈에 보이지 않는 곳에서 메모리 관리를 수행한다. 원시값, 객체, 함수 등 우리가 만드는 모든 것은 메모리를 차지한다. 그렇다면 더는 쓸모 없어지게 된 것들은 어떻게 처리될까? 지금부턴 자바스크립트 엔진이 어떻게 필요 없는 것을 찾아내 삭제하는지 알아보겠습니다. 가비지가 되는 대상 어떤 객체에 유효한 참조가 존재한다면 Reachable, 그렇지 않다면 Unreachable이라 한다. 언리쳐블한 객체는 수거 대상이 된다. 트레이싱 한 객체에 flag를 두고, 가비지 컬렉션 사이클마다.. 2021. 8. 6.
운영체제, 문자열, 그래픽 개념정리 문자열 유니코드 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 설계된 산업 표준 인코딩(부호화) 인코딩이란 어떤 문자나 기호를 컴퓨터가 이용할 수 있는 신호로 만드는 것이다. 이 신호를 입력하는 인코딩과 문자를 해독하는 디코딩을 하기 위해서는 미리 정해진 기준을 바탕으로 입력과 해독이 처리되어야 한다. 이렇게 인코딩과 디코딩의 기준을 문자열 세트 또는 문자셋(charset)이라고 한다. ASCII 문자 영문 알파벳을 사용하는 대표적인 문자 인코딩으로 7 비트로 모든 영어 알파벳을 표현할 수 있다. 52개의 영문 알파벳 대소문자와, 10개의 숫자, 32개의 특수 문자, 그리고 하나의 공백 문자를 포함 UTF-8과 UTF-16의 차이점 UTF-8과 UTF-16은 인코딩 방식의 차이를 의.. 2021. 8. 6.
Token 개념 정리 + im-sprint-auth-token 리뷰 Token 토큰이란 통행증, 회원증과 같은 개념 클라이언트로 로그인할 시 서버에서 인증을 거친 다음 토큰을 내어주는 방식으로, 다음 부터 서버에 요청시 토큰을 같이 보내어 인증을 가진다. 가장 대표적인 토큰 기반 인증은 'jwt' 인증정보가 어디에 저장되느냐? 특징 세션은 서버(세션스토어)+ 클라이언트(세션id가 담긴 쿠키)에 저장된다. 토큰은 클라이언트(Authorization header)에 저장된다.(jwt토큰) 이 특징을 통해 파생되는 특징 서버가 여러대 일 경우 -서비스가 수평 확장을 했거나 -로드 밸런싱 일 경우 - 토큰이 유리하다. 세션같은 경우는 인증정보를 여러 서버가 공유해야 한다. 클라이언트로만 인증하면 서버의 부담이 없다. 어떻게 jwt는 스스로를 안전하다고 증명하는가? -signat.. 2021. 8. 6.
MongoDB - 기본 명령어, CRUD 정리 몽고디비의 명령어는 조금더 간결하다 crub 쿼리문에 있어서 객체를 활용하는 메소드 형식이다. 기본 명령어 몽고디비는 기본적으로 camelCase를 사용한다. 1) DB 관련 MongoDB (대소문자 구분 0) DB 보기 show dbs DB 생성 use DB이름 DB 선택 use DB이름 현재 DB db 현재 DB 정보 db.stats() DB 삭제 (DB 선택 후) db.dropDatabase() 2) Collection(Tables) 관련 Collection은 기본적으로 Primary Key가 필요없다. Document가 생성될 때 마다. _id가 그 역할을 한다. 타입도 지정해 줄 필요가 없다. 벨류 자체로 타입을 결정한다. MongoDB (대소문자 구분 0) Collection(Table) 보기.. 2021. 8. 5.
NoSQL, MongoDB,MongoDB Document, JSON vs. BSON 개념 정리 NoSQL이란? 접근방식이 SQL과는 상반되는 데이터베이스 형식을 얘기하거나 또는 관계형데이터베이스 뿐만아니라 다른 특성 까지도 갖는 (Not only SQL) 으로 정의할 수 있다. NoSQL은 매우 넓은 범위에서 사용하는 용어로, 관계형 테이블의 레거시한 방법을 사용하지 않는 데이터 저장소를 말한다. 다음과 같은 특징을 같는다. nosql 특징 1) RDBMS 처럼 고정된 스키마 및 JOIN이 존재하지 않는다. 자유로운 형태로 데이터를 저장할 수 있으므로 필요에 따라서 새로운 데이터 유형을 추가할 수 있다. 소프트웨어 개발에 정형화되지 않은 많은 양의 데이터가 필요한 경우, NoSQL이 효율적이다. 2) 스키마 변경(ALTER)가 필요없다. -스키마를 미리 준비할 필요가 없어서, 개발을 빠르게 해야하.. 2021. 8. 5.
스프린트 cmarket_datadase 분석/리뷰 1. 먼저 스키마를 확인하기 2. 스프린트 진행 테스트 항목은 3가지 였다. 해당 유저가 작성한 모든 주문을 가져오는 함수를 작성 해당 유저의 주문 요청을 데이터베이스에 생성하는 함수를 작성 Cmarket의 모든 상품을 가져오는 함수를 작성 문제를 풀기전에 흐름을 알아보려고 한다. 1) 클라이언트에서 서버로 요청을 보내면 서버의 app.js로 들어간다. 2)이 밑에 두문장을 보면, 우리가 가진 주소뒤에 /users로 왔을때랑 /items로 왔을때 어디로 가야하는지 두번째 인자로 나와 있다. app.use('/users', router); app.get('/items', controller.items.get); 2-1) users로 갔을 때를 보게 되면, server/routes.js로 가게되면, 또 다시.. 2021. 7. 27.
데이터베이스 개념정리 + mysql 설치 방법 코드스테이츠의 섹션 쓰리의 시작은 자료구조-알고리즘과 데이터베이스이다. 데이터베이스에 대해 정리해보려고한다. 3-Tier Architecture client-server-database로 구성된 구조이다. 작동 방식은 클라이언트가 서버에 데이터를 요청(requset)하고, 서버는 그 요청에 맞는 데이터를 데이터베이스에 요청(requset)한다. 데이터베이스가 요청에 알맞는 데이터를 서버에 응답(response)하고, 서버는 응답된 데이터를 클라이언트에게 데이터를 보내주어 응답(response)한다. DATABASE 데이터베이스란? 데이터는 어떤 것들을 기록한 정보이고, 데이터를 모아 둔 것을 데이터베이스라고 한다. 예전에는 일일이 손으로 정보를 기록하였지만 현대에 와서는 컴퓨터의 발달로 컴퓨터를 이용해 .. 2021. 7. 26.
[자료구조] 시간복잡도와 Big-O 표기법 시간복잡도와 Big-O 표기법 우리가 알고리즘 문제를 풀때 중요한 것은 해답을 찾는 것이다. 더 나아가 그 문제를 좀더 효율적인 방법을 찾는 것도 굉장히 중요하다. 좀더 효율적인 방법을 고민해 본 적이 있다면 시간 복잡도를 고민한다는 것과 같은 말이다. 알고리즘에서 빠르다는 의미는 시간으로 표현하지 않는다. 알고리즘에서는 절차(step)의 수로 결정된다. 10번의 스텝이 필요한 알고리즘보단 5번의 스텝이 필요한 알고리즘이 더 훌륭하다고 볼수있다. 시간 복잡도를 표기하는 방법은 다음과 같다. Big-O(빅-오) Big-Ω(빅-오메가) Big-θ(빅-세타) 다른건 잘 모르겠고,Big-O 표기법이 자주 사용된다. 빅오 표기법의 종류는 O(1), O(n), O(log n), O(n2), O(2n) 등이 있다. .. 2021. 7. 19.
반응형