본문 바로가기

전체 글

(297)
[error] Failed to load module script: Expected a JavaScript module script but the server responded with a MIME type of "text/html" 발생한 에러 생활 코딩 webpack 편을 듣는 도중, html 상에서 모듈을 이용할 때 다음과 같은 에러가 발생했다. 해당 에러가 발생한 환경은 이렇다. html 파일 : Hello, Webpack! express 서버 파일 : import express from 'express'; import {dirname, resolve} from 'path'; import { fileURLToPath } from 'url'; const url = new URL(import.meta.url).href; const __dirname = dirname(fileURLToPath(url)); const app = express(); app.use(express.urlencoded({extended:true})); app..
[알고리즘] 비교 기반 알고리즘 비교 기반(Comparison-based) 알고리즘 selection sort ( 선택 정렬 ) bubble sort ( 버블 정렬 ) insertion sort ( 삽입 정렬 ) shell sort ( 쉘 정렬 ) quick sort ( 퀵 정렬 ) merge sort ( 합병 정렬 ) heap sort ( 힙 정렬 ) Selection Sort 주어진 리스트 내에서 최솟값을 찾은 후, 가장 앞에 있는 값과 교체하면서 정렬하는 알고리즘으로, 각 정렬 단계가 마치 현재 단계에 들어가야 할 값을 리스트 내에서 찾아가는 과정처럼 보인다. 각 단계마다 배열의 좌측에서 배열의 정렬이 일어난다. 코드 def selection_sort(array: list[any]): for i in range(len(array)..
[데이터베이스 04] Relational Data Model Informal Formal Table Relation Column Header Attribute All possible Column values Domain Row Tuple Table Definition Schema ( of Relation ) Populated Table State ( of Relation ) Relation Informal 값들을 모아둔 테이블에 대응되며, row의 집합으로, Set(집합) 이라는 수학적 개념에 기반을 두고 있다. Row 에 포함된 데이터 원소들은 Real-World(혹은 Mini-World) 의 Entity 또는 Relationship에 대응된다. Column 은 해당 컬럼에 속한 데이터들의 속성을 의미한다. Key of Relation : 각각의 row는 아이템..
[데이터베이스 03] Entity Relationship Model 하나의 프로그램을 설계할 때는 어플리케이션 디자인 및 데이터베이스 디자인이 필요하다. 이때 수행되는 데이터베이스 디자인은 엄밀하게 따지면 분석(analysis) 및 디자인(design) 작업을 포함하지만, 보통 뭉뚱그려 같이 표현한다. 데이터의 출처 Mini World 데이터의 분석 요구사항 수집 및 분석 요구사항 기능적 요구사항(Functional, Application) 데이터 요구사항(Data, Database) 기능 분석(Functional Analysis) 개념적 설계(Conceptual Design) 요구사항 구현 모델 High-Level Transaction Specification Conceptual Schema DBMS independent 논리적 설계(Logical Design) + M..
[운영체제] 운영체제 링커 & 로더 링커 : 여러 오브젝트 파일들을 하나의 실행 가능한 바이너리 파일로 합쳐주는 프로그램으로, 단순 코드뿐만 아니라 해당 코드에 사용된 라이브러리 등도 바이너리 파일에 포함될 수 있다. 로더 : 스토리지에 저장되어 있는 프로그램을 메모리 영역으로 가져오는 프로그램. 로더에 의해 로딩된 프로그램만이 운영체제에 의해 실행될 수 있다. 최근에는 라이브러리들을 링커를 통해 직접 바이너리 파일에 넣기보다는 DLL(Dynamically Linked Libraries)의 형태로 저장한 후, 필요할 때 메모리 상으로 로드 · 공유하는 방식을 이용한다고 한다. 운영체제의 설계(Design) 및 구현(Implementation) 운영체제가 달성하고자 하는 목표는 해당 운영체제가 요구되는 환경, 해당 운영체제를 ..
[운영체제] OS 서비스/프로그램 운영체제 프로그램 또는 사용자가 특정 프로그램이나 서비스를 실행할 수 있도록 환경을 제공하거나 도와주는 시스템으로, 다음과 같은 서비스들을 유저에게 제공하게 된다. Operating System Services User Interface : 유저가 시스템을 사용하는데 도움을 주는 시각적인 인터페이스. CLI(Command Line Interface) : 커맨드 라인 형태의 인터페이스. 커널의 일부로 구현되거나, 시스템 프로그램 형태로 구현된다. 사용자의 커맨드를 읽어 들이고(fetch) 실행한다. 커맨드는 처음부터 지정되어 있을 수도 있지만 ( ls, pwd 등 ), 사용자에 의해 구성된 프로그램일 수도 있다. 사용자 프로그램의 추가는 쉘을 변경하지 않는다. GUI(Graphic User Interfac..
[알고리즘] 정렬 00 : 정렬 개요 정렬(Sorting) 주어진 일련의 데이터( 보통 배열 )를 순서대로 재배치하는 것. 물건을 가격별로 세워두기 위해 조사하거나, 유통기한이 임박한 순서대로 제품을 출고해야 하는 등 정보의 순서가 의미 있는 분야라면 어디든지 사용될 수 있다. 알고리즘의 효율성은 데이터 및 데이터가 가진 특성에도 영항을 받지만, 해당 알고리즘을 구동하는 환경( 메모리, CPU 파워, 지원되는 소프트웨어 등 )과 같은 요소에도 영향을 받을 수 있다. 알고리즘 성능 측정 수단 시간 효율(Time Complexity) Big-O, Big-Ω, Big-Θ 의 표현법을 이용. best-case, worst-case, average-case 을 나타낼 수 있음. 공간 효율(Space Complexity) 제자리성(In-place al..
[알고리즘] 알고리즘 이해 알고리즘 특정 문제를 풀거나 계산을 수행하는 데 사용되는 잘 정의된 명령의 유한 절차로, 어떠한 문제에 대한 해결 절차를 체계적으로 나타낸 후, 해당 절차에 따라 어떤 입력을 어떤 출력으로 변환하는 일련의 계산과정을 의미한다. 알고리즘의 대상이 되는 문제는 입력 및 출력의 형태로 요구조건을 나타낼 수 있어야 한다. ex) 도서관의 책을 ISBN에 따라 정렬하세요. 문제 : ISBN에 따른 도서관 책 정렬 입력 : 도서관의 책 & ISBN 출력 : 정렬된 책 리스트 알고리즘이 가져야 할 특성 명확성 : 최대한 이해하기 쉽고 간명하게 서술해야 한다. 명확하게 나타낼 수만 있다면 알고리즘을 나타내는 수단은 상관없음. 효율성 : 동일 문제 해결에 있어 최대한 시·공간적으로 효율적이어야 한다. ex ) for 문..