본문 바로가기

전체 글221

Node.js로 초간단 서버 만들어보기 Node.js를 이용해서 아주 간단한 서버를 만들어보자// server.js 파일let http = require('http'); // http 기능을 사용할 수 있도록 모듈을 받아온다function onRequest(request, response) { // onRequest: client에게 요청이 온다면 // http의 head + body 구조 템플릿을 생각하자 response.writeHead(200, {'Content-Type' : 'text/html'}); // 200(정상) response.write('Hello Node.js'); // write = writeBody response.end();}http.createServer(onRequest).listen(8888.. 2024. 6. 24.
[데이터베이스] ep4-1) SQL: DDL SQL(Structed Query Language): 구조화된 질의 언어3가지 종류가 있다 DDL, DML, DCL ㅁDDL(Data Definition Language): 데이터 정의어  ① CREATE문: 테이블을 구성하는 속성 타입 지정 및 NULL 값 허용 여부 또는 기본 값 지정 등 정의   (속성 정의)- NOT NULL: 속성에 NULL값 허용 xUSER_ID VARCHAR(10) NOT NULL;(CREATE TABLE문으로 생성되는 테이블을 구성하는 속성은 기본적으로 NULL값을 허용) NOT NULL: 특정 열에 반드시 값이 있어야 하는 경우 e.g. 이름과 같은 필수 정보, 외래 키나 중요한 참조 값NULL 허용: 특정 열에 값이 없어도 되는 경우(나중에 입력될 가능성이 있는 경우) .. 2024. 6. 21.
[데이터베이스] ep3) RDB ㅁRDB(Relational DataBase): 관계형 데이터베이스 키(key)와 값(value)을 테이블 형태로 구성한 데이터베이스 (참고) RDB 모델 https://claremont.tistory.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-ep1-DB-%EB%AA%A8%EB%8D%B8 [데이터베이스] ep1) DB 모델ㅁ논리적 데이터 모델들1. 계층형 데이터 모델 2. 네트워크형 데이터 모델 3. 관계형 데이터 모델(RDB: Relational DataBase)- 우리는 이 RDB에 대해 앞으로 지겹도록 다룰 것이다 ㅁRDB 데이터 모claremont.tistory.com [릴레이션의 특성] 튜플의 유용성: 하나의 릴레이션에 .. 2024. 6. 21.
주요 DBMS들 정리(미완) RDBMS(Relational DataBase Management System): 관계형 데이터베이스표준 언어로 SQL(구조화된 질의 언어: Structured Query Language )을 사용 오라클은 아주 악덕한 기업 (돈에 환장)스타트업에서는 Postgre SQL을 많이 쓴다          ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ NoSQL(Not only SQL): 관계형 데이터베이스가 아닌 dbms(흔히들 SQL을 안쓴다고 해서 no + sql 로 생각한다)데이터를 조직하는 방법에는 리스트, 해시 테이블, 트리, 그래프 등이 있고 각각의 장점과 단점이 명확하다사실 아직까지 NoSQL에 내려진 구체적인 정의는 없다 하지만 NoSQL이라 불리는 데이터베이스.. 2024. 6. 20.
[데이터베이스] ep2) DBMS ※ 트랜잭션(transaction): DB시스템에서 복구 및 병행 시 처리되는 작업의 논리적 단위 ㅇ데이터 사전(= 시스템 카탈로그): 스키마, 스키마 간의 맵핑 정보, 다양한 제약조건 등을 저장한다(메타 데이터: 데이터에 대한 데이터)  [DB 시스템 유틸리티]적재, 백업, 파일 재조직, 성능 모니터링, 파일 정렬, 데이터 압축, 사용자 접근 모니터링, 네트워크와의 인터페이스 등  DBMS의 장점: 데이터 중복 통제, 데이터 동시 공유, 데이터 보안 향상, 데이터 무결성 유지, 장애 발생 시 회복 가능DBMS의 단점: 비용, 복잡한 백업&회복, 중앙 집중 관리로 인한 취약점     데이터베이스 사용자는 3가지로 나뉜다1. DBA(DataBase Administrator): 데이터베이스 관리자2. 최종 .. 2024. 6. 20.
웹 기본지식 [HTML5가 지원하는 주요 기능]- 멀티미디어 기능 제공 - 플러그인 없이 음악, 동영상 재생- 그래픽 지원 - 2차원, 3차원- 서버와 클라이언트 간의 실시간 양방향 소켓 통신 지원 (e.g. 실시간 채팅, 온라인 게임)- 다양한 장치 접근 (e.g. 배터리 잔량, 현재 위치, 알람 등)- 시맨틱 태그 추가 (시맨틱 웹: 컴퓨터 프로그램이 코드를 읽고 의미를 인식할 수 있는 지능형 웹)- CSS3 스타일시트 - 3차원 변환, 애니메이션 효과 등  ㅇ메타 태그(meta tag): 웹 페이지에 대한 추가 정보를 제공 운영체제 기술블로그 추가지식1) 가상머신(Virtual Machine) 가상머신은 소프트웨어적으로 만들어낸 가상 컴퓨터이다 가상머신을 설치하면 새로운 운영.. 2024. 6. 20.
[자료구조] ep8) 분리집합(Disjoint Set) ㅇ분리집합 ADT: 교집합이 없는 집합들서로소집합이라고도 불리며 Union-Find라고도 한다 소속 관계가 분명해야 하는 데이터를 다룰 때 유용하다목적: 원소가 어느 집합에 귀속되어 있는지 (find 함수) 직접 응용: 동치관계(e.g. 그래프), 최소신장트리간접 응용: 알고리즘 구현, 저료구조 구현  - set find(e): 원소 e가 속한 집합을 반환- union(x, y): 집합 x, y를 통합- int size(S): 집합 S 원소의 수를 반환  [구현 방법 2가지]1. 리스트(or 배열)에 기초한 구현 find는 빠르고 union은 느리다2. 트리에 기초한 구현find는 느리고 union은 빠르다  1-1 리스트에 기초한 구현: 분리집합 집단을 레코드의 배열로 표현  1-2 배열에 기초한 구현.. 2024. 6. 11.
[자료구조] ep7++) 결정 트리(decision tree) - 양자택일식 문답시스템 ㅇ결정 트리(decision tree): 의사결정 과정과 연관된 이진트리- 내부노드: yes/no로 답 할 수 있는 질문- 외부노드(리프): 결정    활용) 프로그램 요구사항 다음과 같이 한 프로그램 내에서 양자택일식 문답시스템의 구축과 사용을 연속하여 지원하는 프로그램을 작성하라. 1) 문답시스템 구축 지원 기능 -  결정트리는 배열 또는 연결리스트 가운데 하나를 이용하여 구축되어야 한다. -  1회의 상담은 최소 3회 ~ 최대 5회의 문답을 통해 완료되도록 제한하라(즉, 상담설계자가 이 시스템을 이용하여 최소 8개 ~ 최대 32개의 결정을 포함하는 결정트리의 구축을 지원할 수 있어야 한다). -  설계된 결정트리를 프로그램을 통해 구축하라(즉, buildDecisionTree를 1회 호출). 2) .. 2024. 6. 11.
[자료구조] ep7+) 이진 트리 구현 및 탐색 이번 문제에서는 트리가 고정되지 않고 트리의 모양이 입력으로 주어진다. 1. 트리 만들기 (구현)◦ 트리는 연결이진트리로 구현하며 각 노드에 저장되는 정보는 아래와 같다.◦ 선위순회 순서로 각 노드에 대한 정보가 주어지면, 루트노드부터 확장해 가는 방식으로 트리를 구성할 수 있다.- 노드 번호는 유일한 양의 정수며, 노드 번호에 특별한 순서는 없다. - 각 노드에 대한 정보는 괄호에 싸인 세 개의 정수, 즉 (x y z)로 표현된다.- 여기서 x는 해당 노드의 번호, y는 x의 왼쪽 자식 노드의 번호, z는 x의 오른쪽 자식 노드의 번호를 나타낸다. 해당 자식이 없는 경우에는 번호 0이 주어진다.    2. 트리 탐색◦ 트리 탐색은 루트노드에서 시작하여 자식 링크를 따라 내려가면서 진행된다.- 탐색 도중.. 2024. 6. 11.