728x90
반응형

Study 66

ERD란? DB 1:1, 1:N, N:M 관계

ERD란? ERD는 Entity(실체) Relationship(관계) Diagram(도표)의 약자입니다. 한국말로 직역하면 개체-관계 모델입니다. DB 테이블간 관계 혹은 전체 구조를 한 눈에 파악할 수 있습니다. ERD 표기법 DB관계 1 : 1 일대일 관계입니다.(양쪽 엔티티 모두 반드시 하나의 관계만을 가지는 것을 뜻 합니다, 대게 하나의 외래키가 걸려있는 관계라고 볼 수 있습니다) 1 : N 일대다 관계입니다.(한 쪽 엔티티가 연결 되어있는 엔티티 쪽 객체를 여러개 가지는 것을 뜻 합니다.) N : M 다대다 관계입니다.(양쪽 엔티티 모두 1 : M 관계를 가지는 것을 뜻 합니다. ) 항상 부족한 부분이나 피드백할 부분을 댓글로 남겨주시면 적극적으로 수용하여 수정하겠습니다.

Study/DB 2021.08.27

OSI 7계층이란?

OSI 7계층 OSI란 Open Systems Interconnection의 약자로 개방형 시스템이라는 뜻을 가지고 있습니다. OSI 7계층은 네트워크를 통신이 일어나는 과정을 7단계로 나눈 표준 계층 중에 하나입니다. 통신이 일어나는 과정들을 단계별로 파악하기 수월하게 하기 위해 계층을 나눴습니다. OSI 7계층 1계층 - 물리계층(Physical Layer) 물리계층은 7계층 중 최하위 계층입니다. 전기적, 기계적, 기능적인 신호를 주고받는 역할을 하며, 비트 0과 1의 통신 단위로 통신합니다. (on, off의 전기적 신호 상태) 대표적인 장비로는 케이블, 리피터, 허브 등이 있습니다. 신호로 변환하여서 전송하는 계층입니다 2계층 - 데이터 링크계층(DataLink Layer) 물리적인 연결을 통해..

Study/Network 2021.08.26

타입스크립트(TypeScript)란?

TypeScript란? TypeScript는 MS에 의해서 개발과 관리되고 있는 오픈소스 프로그래밍 언어입니다. 그리고 자바스크립트의 슈퍼셋입니다. (슈퍼셋이란 A >= 일 경우, A는 B의 슈퍼셋이라고 할 수 있습니다.) TypeScript 장점 1. 정적 타입을 지원합니다. 2. 컴파일 단계에서 에러를 포착할 수 있습니다. 3. 명시적인 타입 지정은 개발자의 의도를 명확하게 드러내주며 가독성을 높이고 디버깅이 쉬워집니다. function sum(a, b) { return a + b; } sum(1, 2); // 20 sum('1', '2'); //12 위 자바스크립트 문법은 타입을 지정하지 않은 동적 타이핑에 의한 결과입니다. a와 b가 어떤 type인지 명시적이지 않아 의도가 명확하지 않습니다. 스..

Study/FrontEnd 2021.08.25

MySQL이란?

MySQL이란? MySQL은 세계적으로 널리 사용되고 있는 오픈 소스 데이터베이스(DB, DataBase)이며, 관계형 데이터베이스 관리 시스템(RDBMS, Relational DataBase Management System)입니다. 데이터베이스란? 데이터베이스(DB, DataBase)란 여러 사람들이 공유하고 사용할 목적으로 통합하여 관리되는 데이터의 집합체를 의미합니다. 데이터베이스는 응용 프로그램과는 다른 별도의 미들웨어에 의해 관리됩니다. 이 미들웨어를 데이터베이스 관리 시스템 DBMS이라고 합니다. DBMS란 DBMS는 DataBase Management System의 약자입니다. 사용자와 데이터베이스스 사이에서 요구에 따라 정보를 생성해주고 공유하며 관리할 수 있도록 해주는 소프트웨어입니다. ..

Study/DB 2021.08.24

[Git] Branch 생성 및 사용법

[Git Branch] Branch란 개발시 개발에 관련된 업무들을 협업할 때 개발자들이 동시에 다양한 작업을 할 수 있게 만들어주는 기능입니다. Branch를 통해 하나의 프로젝트를 여러 통로로 나누어서 관리할 수 있습니다. git branch - 현재 위치해 있는 branch와 branch항목들을 나열해줍니다. git branch -v - branch의 마지막 커밋 메세지를 보여줍니다. git branch - git branch test -> test라는 이름의 branch를 생성합니다. git checkout test - test라는 branch로 전환해줍니다. git checkout -b test2 - test2라는 branch를 생성과 동시에 test2로 전환해줍니다. git branch -d ..

Study/Git 2021.08.20

스택(Stack), 큐(Queue) 개념과 차이점

스택 (Stack) 스택(Stack)이란 데이터가 입력되는 순서대로 쌓이고, 나중에 들어온 것부터 먼저 사용하는 자료구조 입니다. 이러한 데이터 구조를 LIFO (Last In First Out)라고 합니다. (후입선출) 스택에서는 데이터를 삽입하는 것을 PUSH, 데이터를 삭제하는 것을 POP이라고 합니다. 스택 예시 하노이의 탑 웹 브라우저 뒤로가기 실행 취소 큐 (Queue) 큐란 데이터가 입력되는 순서대로 쌓이고, 먼저 들어온 것부터 사용하는 자료구조입니다. 이러한 데이터 구조를 FIFO (First In First Out)라고 합니다. (선입선출) 큐에서는 데이터를 삽입하는 것을 ENQUEUE, 데이터를 삭제하는 것을 DEQUEUE이라고 합니다. 큐 예시 은행 업무 캐시(Cache) 구현 프로세..

Study/자료구조 2021.08.19

객체 지향 프로그래밍(OOP, Object-Oriented Programming) 이란?

객체 지향 프로그래밍 이란? 객체 지향적인 프로그래밍(OOP, Object-Oriented Programming)이란, C와 같은 절차 지향적인 프로그래밍이 아닌 객체의 관점에서 프로그래밍을 한다는 것입니다. OOP는 절차지향에 비해서 사람의 사고방식과 더 가깝습니다. 그리고 OOP는 객체들의 유기적인 관계를 통해서 프로세스가 진행됩니다. OOP 특징 1. 캡슐화 (Encapsulation) - 특정한 객체에 대해서 해당 객체가 필요한 변수나 메소드를 하나로 묶는것을 의미합니다. 2. 추상화 (Abstraciton) - 객체들의 공통된 속성들을 파악하여 클래스를 정의하는 것입니다. 3. 상속성 (Inheritance) - 상위 개념의 특징을 하위 개념이 물려받는 것입니다. (부모클래스가 자손 클래스에게 ..

Study/BackEnd 2021.08.18

Sequelize 란? 설치 및 사용법

Sequelize 란? Sequelize는 node.js 라이브러리로써 mysql등 과 같은 관계형 데이터베이스를 쉽게 다룰수 있게 도와주는 라이브러리입니다. Sequelize는 node.js 대표적인 ORM입니다. ORM 이란? ORM (Object Relational Mapping) 이란? ORM이란? ORM이란 Object Relational Mapping의 약자로 관계형 데이터베이스 관리 시스템(RDBMS)(Relational Database Management System)과 객체 지향 프로그래밍 언어(OOP)(Object Oriented Programming) 사이에.. ujam.tistory.com Sequelize 설치 방법 sequelize와 mysql을 사용할거기 때문에 mysql2를 ..

Study/BackEnd 2021.08.14

ORM (Object Relational Mapping) 이란?

ORM이란? ORM이란 Object Relational Mapping의 약자로 관계형 데이터베이스 관리 시스템(RDBMS)(Relational Database Management System)과 객체 지향 프로그래밍 언어(OOP)(Object Oriented Programming) 사이에 데이터를 맵핑(연결)해주는 것이 ORM입니다. ORM 장점 DBMS(Database Management System)에 종속성이 줄어듭니다. 재사용 및 유지보수가 편리성이 증가합니다. SQL문을 사용하지 않고 객체 지향 프로그래밍 언어(OOP)로 구현이 가능합니다. (생산성이 증가합니다) ORM 단점 SQL문을 사용하는 것보다 복잡해질 수 있습니다. 프로젝트의 복잡성이 높아질 경우에 같이 난이도도 올라갑니다. 항상 부족..

Study/DB 2021.08.11

Node.js 란?

Node.js란? 위키백과에 아래와 같이 정의되어 있습니다. Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어로 자바스크립트를 활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다. 내장 HTTP 서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹 서버의 동작에 있어 더 많은 통제를 가능케 한다. 특징 Single-Thread의 non-blocking I/O 이벤트 기반 비동식 방식으로 작동한다. JavsScript 엔진(V8 Engine)로 빌드 된 JavaScript 런타임이다. 장점 자바스크립트를 사용하여 서버를 처..

Study/BackEnd 2021.08.10
728x90
반응형