자료 구조는 컴퓨터에서 효율적으로 데이터를 사용하기 위한 특별한 방식이다.
자료 구조는 하나 혹은 더 특정한 추상적인 데이터 타입(ADT)을 실행할 수 있다.
각각의 언어(C/Python)에는 공통된 자료구조를 포함하고 있으면 더 나아가, 자신들의 언어만의 고유 자료구조를 가지고 있다.


실제 프로그래밍 언어(C, Python 등)의 문법이 아닌, 인간의 언어(한글, 영어 등)와 프로그래밍 구조를 섞어 알고리즘을 흉내 내어 표현하는 방식
Pseudo-code란 의사코드로, 특정 언어의 규칙에 얽매이지 않고 논리 흐름을 설계하는 데 집중한다.
일반적인 프로그래밍 코드와 달리 인간이 기계언어를 읽고 이해할 수 있도록 하는 것이 목표이다.
Database는 데이터의 집합체이다.
관계 데이터베이는 더 업격히 스키마, 테이블, 쿼리, 보고서, 뷰 그리고 다른 요소들을 포함하고 있다.
Relational model : 관계형 모델
Entity-relationship model : 엔티티 기반 관계 모델
구조와 언어를 활용하여 데이터를 관리하는 접근 방식이다. 모든 데이터는 관계로 그룹화되어, 튜플을 나타낸다.

ER 모델은 특정 지식 도메인과 상호연관된 것들을 묘사한다.
기본 ER 모델은 entity타입으로 구성되며, 각종 entity 타입의 예시 사이 존재할 수 있도록, 관계를 명시한다.
기본 ERD 구성요소

Entity Relationship Diagram (ERD)

SQL : Structured Query Language (table based)
NoSQL : No or Not only SQL
관계형 데이터베이스 관리 시스템(RDBMS)에서 데이터를 정의, 조작, 제어 및 조회하기 위해 설계된 표준 프로그래밍 언어
NoSQL은 고성능 비관계형 데이터 저장소를 나타내고, 사용 편의성, 확장성, 복원력 및 가용성 특성에 탁월하다.
정규화된 데이터의 테이블을 조인하는 대신, NoSQL은 구조화되지 않은 데이터 또는 반구조화된 데이터를 Key-value 쌍(pair) 또는 Json문서에 저장하는 경우가 많다.
특정 부분이나 기능을 블록으로 나타낸 시스템 다이어그램으로, 선으로 연결되어 블럭들 간의 관계를 보여준다.

컴퓨터 네트워크 또는 더 일반적으로 모든 통신 네트워크의 노드와 노드 간의 연결을 묘사하는 개략도이다.

시스템 구성 요소나 객체들이 시간 흐름에 따라 서로 주고받는 메시지와 상호작용의 순서를 시각적으로 나타내는 UML 동작 다이어그램(Sequence Diagram)의 일종이다.

시스템이나 객체가 시간에 따라, 또는 특정 이벤트(Event) 발생 시 어떻게 상태가 변경(Transition)되는지 시각적으로 모델링한 다이어그램이다.
State diagram은 시스템의 상태를 묘사하며, 각각의 정해진 상태를 구성하여 단계별로 어떠한 상태로 넘어가는지 명확히 보여준다.