목록분류 전체보기 (142)
개발자공부일기
데이터 무결성이란 무엇인가요?데이터 무결성이란 조직의 데이터가 라이프사이클의 어느 시점에서든 정확하고 완전하며 일관성이 있다는 것을 보장하는 것입니다. 데이터 무결성 유지에는 손실, 유출 및 손상으로부터 조직의 데이터를 보호하는 것이 포함됩니다.데이터 무결성이 중요한 이유는 무엇인가요?데이터 무결성은 전통적인 제품 지향 비즈니스의 품질 관리와 유사하며 원자재가 의도한 용도에 올바르고 안전하며 적합한지 확인합니다. 조직은 라이프사이클 전반에 걸쳐 데이터를 완전하고 정확하며 일관되고 안전하게 유지해야 합니다. 데이터 무결성은 모든 데이터 요소를 변경, 절단 또는 손실 없이 그대로 유지하고, 분석을 왜곡하고 일관된 테스트 조건을 위태롭게 할 수 있는 변경을 방지하여 이러한 완전성을 촉진하는 데 도움이 됩니다...
ER 모델 (Entity-Relationship Model)ER 모델은 데이터베이스 설계를 위한 개념적 모델로, 현실 세계의 데이터를 엔터티(Entity), 속성(Attribute), 관계(Relationship)로 표현합니다.엔터티(Entity): 데이터를 저장할 대상 (예: 학생, 강의, 고객 등)속성(Attribute): 엔터티가 가지는 정보 (예: 학생의 학번, 이름, 나이 등)관계(Relationship): 엔터티 간의 연관성 (예: 학생이 강의를 수강한다)이를 시각적으로 표현한 것이 ER 다이어그램(ERD)이며, 데이터베이스를 설계할 때 많이 사용됩니다.ER diagram은 테이블 간의 관계를 나타내는 도표입니다. 각 테이블의 이름, 컬럼의 PKey, FKey, Unique Key 여부, 필드..

그래프 와 트리는 컴퓨터 과학에서 객체 간의 관계를 나타내는 데 사용되는 두 가지 기본 데이터 구조입니다. 몇 가지 유사점을 공유하지만, 서로 다른 애플리케이션에 적합하게 만드는 뚜렷한 차이점도 있습니다.그래프와 트리의 차이점Graph란 무엇인가요?그래프 데이터 구조는 노드 (정점이라고도 함)와 이를 연결하는 에지 의 모음입니다 . 노드는 사람, 장소 또는 사물과 같은 엔티티를 나타낼 수 있는 반면 에지는 이러한 엔티티 간의 관계를 나타냅니다.그래프는 소셜 네트워크 , 교통 네트워크 , 컴퓨터 네트워크 등 다양한 실제 시스템을 모델링하는 데 사용됩니다 . Tree란 무엇인가?트리 데이터 구조는 에지로 연결된 노드로 구성된 계층적 데이터 구조입니다. 각 노드는 여러 자식 노드를 가질 수 있지만 부모 노드는..

Node.js Event Loop흔히 Node.js를 싱글 스레드 논 블로킹이라고 한다. Node.js는 하나의 스레드로 동작하지만 I/O 작업이 발생한 경우 이를 비동기적으로 처리할 수 있다. 분명 하나의 스레드는 하나의 실행 흐름만을 가지고 있고 파일 읽기와 같이 기다려야 하는 작업을 실행하면 그 작업이 끝나기 전에는 아무것도 할 수 없어야만 한다. 그러나 Node.js는 하나의 스레드만으로 여러 비동기 작업들을 블로킹 없이 수행할 수 있고 그 기반에는 이벤트 루프가 존재한다. Nods.js 속 이벤트 루프이벤트 루프는 Node.js가 여러 비동기 작업을 관리하기 위한 구현체다. console.log("Hello World")와 같은 동기 작업이 아니라 file.readFile('test.txt', ..
절차 지향 프로그래밍(Procedural Programming)이란?절차지향(Procedural Programming)이란, 물이 위에서 아래로 흐르는 것처럼 순차적인 처리가 중요시 되며 프로그램 전체가 유기적으로 연결되도록 만드는 프로그래밍 기법입니다. 절차지향(Procedural Programming) 특징대표적인 예로는 C언어가 있습니다.컴퓨터의 작업 처리 방식과 유사하기 때문에 객체지향 언어를 사용하는 것에 비해 더 빨리 처리 되어 시간적으로 유리합니다.절차지향 프로그래밍은 프로그램의 흐름이 위에서 아래로, 순차적으로 실행되도록 구성됩니다. 이로 인해 프로그램의 진행이 논리적으로 명확해지며, 흐름을 이해하기 쉽습니다. 단, 복잡한 프로그램에서는 흐름이 너무 길어지거나 꼬일 수 있어 가독성이 떨어질..

스택(Stack)스택은 LIFO(Last In First Out) 법칙을 분리하여 데이터 구조로 , 마지막으로 삽입된 요소가 가장 먼저 팝됩니다. 즉, 삽입 및 삭제 작업이 끝에서만 발생한다는 의미입니다.LIFO(후입선출)프링글스통을 상상하면 편하다. 우리가 통에 감자칩을 여러개 넣고 맨아래 감자칩을 빼려면 위에 감자칩부터 먼저 빼야할 것이다.스택 데이터 구조의 표현:스택은 LIFO(마지막에 들어간 요소가 먼저 나감) 원칙을 따르므로 마지막으로 푸시된 요소가 먼저 팝됩니다.스택의 종류:고정 크기 스택 : 이름에서 알 수 있듯이 고정 크기 스택은 고정된 크기를 가지며 동적으로 커지거나 줄어들 수 없습니다. 스택이 가득 차 있고 요소를 추가하려고 하면 오버플로 오류가 발생합니다. 스택이 비어 있고 요소를 제..

배열(Array)이란?배열은 연속된 메모리 위치에 요소를 저장하는 데 사용되는 데이터 구조입니다. 이는 각 요소가 서로 인접한 메모리 위치에 저장된다는 것을 의미합니다. 또한 배열의 크기는 변경할 수 없으며 미리 선언됩니다.이것은 각 상자가 인접한 메모리 위치에 해당하는 크기 6 의 배열의 예입니다 . 보시다시피, 배열은 처음에 크기 6 으로 선언되었지만 인덱스 0-4 만 사용됩니다. 그러나 인덱스 5 가 비어 있고 값이 없지만 메모리 공간을 차지하고 있습니다.접근요소에 접근할 때 배열은 매우 효율적이며 상수 시간 O(1)이 걸립니다 .이는 각 메모리 위치의 순차적 특성 때문입니다. 예를 들어 인덱스 4에서 요소를 검색하고 싶다고 가정해 보겠습니다. 그런 다음 배열의 기본 주소(첫 번째 요소의 메모리 주..

그래프 탐색 알고리즘그래프 탐색 알고리즘은 그래프 구조에서 특정 노드나 경로를 찾기 위해 사용되는 알고리즘입니다. 대표적인 그래프 탐색 알고리즘으로는 깊이 우선 탐색(DFS, Depth-First Search)과 너비 우선 탐색(BFS, Breadth-First Search)이 있습니다. 그래프 탐색 알고리즘은 그래프 구조에서 특정 노드나 경로를 찾기 위해 사용됩니다.DFS와 BFS는 각각의 탐색 방식과 특성이 다르기 때문에, 문제의 특성에 따라 적절한 알고리즘을 선택하여 사용해야 합니다. DFS는 깊이 우선으로 탐색을 진행하며, BFS는 너비 우선으로 탐색을 진행합니다. DFS 깊이 우선 탐색 (Depth-First Search) 깊이 우선 탐색(DFS)은 그래프의 한 노드에서 시작하여 가능한 한 깊..