코딩캠프

1. 객체 지향 (Object-Oriented) 객체 지향 - 책임과 권한을 가진 객체들이 서로 메시지를 주고받으며 협력해서 필요한 기능을 수행하도록 시스템을 개발하는 것을 객체 지향이라고 합니다. - 크고 복잡한 시스템을 효과적으로 분해하고 구성할 수 있고, 손쉽게 이해하고 효율적으로 다룰 수 있게 도와주는 방법으로 인정받아 많은 프로그래밍 언어에 적용되어 왔고 지금은 가장 인기 있는 프로그래밍 패러다임으로 자리 잡습니다. 캡슐화(Encapsulation) - 정보은닉은 객체에 대한 중요한 정보를 외부로 노출시키지 않도록 하기 위한 기법입니다. 캡슐화의 목적은 변경하기 쉬운 객체를 만드는 것입니다. 캡슐화를 통해 객체 내부의 접근을 제한하면 객체와 객체 사이의 결합도를 낮출 수 있기 때문에 설계를 좀 ..
TCP - 서버와 클라이언트간 신뢰성 있는 데이터 송수신을 위해 만들어진 프로토콜입니다. - 연결 지향성 프로토콜이라고도 부릅니다. - 데이터를 나눠서 보낼수 있으며, 데이터를 받는쪽에서 나눠 받은 데이터를 재조립합니다. 만약 누락된 데이터가 존재하면 다시 요청해서 받아와 완전한 데이터를 만듭니다. - TCP로 서버/클라이언트간 연결이 된 경우 데이터를 양방향으로 주고 받을수 있습니다. - 데이터의 순서가 뒤바뀌는 일 없이 안정적이라 신뢰가 가능합니다. - UDP에 비해 데이터 송수신 비용(부담)이 크다는 특성을 가졌습니다. - UDP보다 전송 속도가 느립니다. UDP - TCP와 다르게 비연결성 프로토콜입니다. - 데이터를 보내고 제대로 받았는지 확인하지 않아, 데이터가 제대로 도착했는지 보장하지 않는..
Prettier 코드 서식 관리 도구 코드 서식 코드 서식이란 코드를 작성하는 방식, 코드의 형식(Format), 코딩 스타일이라고도 한다. 프리티어 기본 규칙 module.exports = { trailingComma: 'es5', tabWidth: 2, semi: true, singleQuote: true, arrowParens: 'always', }; trailingComma : 코드 맨 뒤에 콤마를 붙일 수 있는 경우 붙일지 말지 결정하는 규칙('es5', none, all) tabWidth : 들여쓰기 너비 semi : 명령문 끝에 세미콜론 추가 여부(true, false) singleQuote : 큰 따옴표 대신 작은 따옴표 사용 여부(true, false) arrowParens : 화살표 함..
사실, 객관(Facts) : 이번 일주일 동안 있었던 일, 내가 한 일 노드 숙련 주차 강의 듣기 느낌, 주관(Feelings) : 나의 감정적인 반응, 느낌 지나면 지날수록 강의 재탕... 배운 것(Findings) : 그 상황으로부터 내가 배운 것, 얻은 것 몽고에서 mysql 로 바꾸는거 미래(Future) : 배운 것을 미래에는 어떻게 적용할 지 .역시 모를땐 물어보면서 하자
Sequelize npm i sequelize mysql2 -S npm i sequelize-cli -D sequelize : 노드에서 sequelize 사용 mysql2 : 노드에서 sequelize를 이용해 mysql을 조작할 수 있게 하는 패키지 sequelize-cli : sequelize를 조금 더 쉽게 사용 할 수 있는 패키지 npx sequelize init 입력 시 여러 폴더와 파일들이 생성됨 config/config.json 에서 db 접속 정보를 수정할 수 있다. AWS 에서 RDS 서버 정보나 다른 DB 서버 정보를 적어주고 npx sequelize db:create 를 입력하게 되면 DB서버에 데이터베이스가 생성 된다. npx sequelize model:generate --name..
AWS 에서 RDS 구매 https://ap-northeast-2.console.aws.amazon.com/console/home?region=ap-northeast-2# 생성 완료 후 보안 그룹에서 외부 접속 허용 Anywhere-IPv4 허용 해서 모든 외부 접속 허용 해준다 SQL 의 종류 1. DDL - 생성, 수정, 삭제를 할때 사용 2. DML - 데이터를 조작할 때 사용(저장, 삭제, 수정, 조회) 3. DCL - DB에 접근할 수 있는 권한
1. 미들웨어 모든 요청에 대해 공통적인 처리를 하고싶을때 사용 1-1. Request 로그 남기는 미들웨어 작성 터미널을 확인해보면 로그를 확인 할 수 있습니다. app.use((req, res, next) => { console.log('Request URL:', req.originalUrl, ' - ', new Date()); next(); }); 1-2. 여러개의 미들웨이거 겹치는 경우, 첫번째 미들웨어부터 순차적으로 진입하게 된다. app.use((req, res, next) => { console.log('첫번째 미들웨어'); next(); }); app.use((req, res, next) => { console.log('두번째 미들웨어'); next(); }); app.use((req, r..
1. 쿠키와 세션 쿠키(Cookie) : 브라우저가 서버로서 사용자가 서버로부터 Set-Cookie라는 헤더로 데이터를 전달 받았을 때 해당 데이터를 브라우저 내에 저장을 한 뒤에 다음부터 서버를 요청하는 모든 해당하는 쿠키를 포함해서 전달 - 데이터를 여러 사이트에 공유할 수 있기 때문에 보안에 취약하다 세션(Session) : 데이터를 서버에서만 저장하기 때문에 보안에 좋다 다만 사용자가 많은 경우 서버에 저장해야 할 데이터가 많아져서 서버 컴퓨터 부하가 심해질 수 있다. 2. JWT - JSON 현태의 테이터를 안전하게 교환하여 사용할 수 있게 해준다. - 인터넷 표준으로서 자리잡은 규격 - 여러가지 암호화 알고리즘을 사용 할 수 있다. - header.payload.signature 의 형식으로 ..
이번주는 노드 숙련주차.. 입문도 어려웠고 이해 못하고 이번주로 넘어왔다 Node.js - JavaScript를 브라우저 없이 단독으로 실행할 수 있는 하나의 플랫폼이다. npm - Node.js에서 오픈소스 라이브러리를 쉽게 사용하기 위해 개발된 패키지 관리자 express - 쉽게 서버 프로그램을 구성할 수 있게 만들어진 오픈소스 라이브러리 HTTP - 데이터를 주고 받을 때 사용되는 통신 규약 웹 브라우저 - HTML로 이루어진 데이터를 읽어서 화면에 보여주는 역할 쿠키 - 사용자의 상태를 저장 세션 - 기본적으로는 쿠키를 사용하지만 세션 id만 쿠키로 저장하고 데이터들은 서버에 저장한다. 할 일 메모 사이트 - API 서버 준비하기 app.js const express = require("expr..
사실, 객관(Facts) : 이번 일주일 동안 있었던 일, 내가 한 일 노드 입문 원격 강의 노드 입문 과제 특강 - 좋은 개발자가 되기 위한 비밀 특강 - 애자일 방법론 느낌, 주관(Feelings) : 나의 감정적인 반응, 느낌 어렵다.... 그리고 너무 왔다갔다 한다.. 배운 것(Findings) : 그 상황으로부터 내가 배운 것, 얻은 것 Node, Express, Mongoose, Git, AWS 미래(Future) : 배운 것을 미래에는 어떻게 적용할 지 이것들을 나중에 사용해서 진행해야된다..
데이터베이스와 MongoDB의 개념 데이터베이스란 뭘까? 단순히 데이터를 잘 저장하고 잘 찾기 위해 만들어진 소프트웨어를 Database Management System(DBMS) 이라 부릅니다. DBMS가 설치된 서버 컴퓨터를 데이터베이스 서버(DB 서버)라고 부를 수 있습니다. 흔히 "데이터베이스에 저장한다" 라고 말하면 이 DBMS가 설치된 서버에 데이터를 저장한다고 말하는것입니다. 즉, DB 서버의 모든 데이터는 DBMS가 관리하게 됩니다. 데이터베이스의 종류는 크게 다음과 같습니다. 🕸 관계형 데이터베이스 - Relational Database (RDB): 데이터 형식이 정해져 있고, 데이터 끼리 관계를 맺어 모순이 없는 데이터를 유지할 수 있도록 도와주는것에 집중한 데이터베이스를 관계형 데이터..
01. 준비하기 Express.js의 이해 웹서버란 무엇인가? Express는 무엇인가? 👉 웹서버란 무엇일까요? 우리가 브라우저에 주소를 입력하면 그 내용은 어디서 가져오는 것일까요? 우리도 그런 서버를 만들려면 어떻게 해야할까요? 일반적인 웹 서버와 Node.js로 만들게 될 웹 서버 비교 일반적인 웹 서버와 Node.js로 만든 웹 서버는 다르지 않습니다! 그저 어떤 도구를 사용해서 만들었나의 차이일 뿐, 동일한 기능을 수행하는 웹 서버를 만들수 있으며, 이것은 다른 언어나 도구를 이용해 만든 웹 서버도 마찬가지 입니다. 기능이 다른 웹 서버는 존재할 수 있지만 기반이 되는 개념 자체가 다른 웹 서버는 존재하지 않습니다! 우리가 배운게 전부라고 볼 수 있어요! Express.js란? Express...
고랑E
'코딩캠프' 카테고리의 글 목록 (12 Page)