Database
-
- [Database] ์ ๊ทํ ๋ฐฉ๋ฒ ์ ๋ฆฌ (1NF, 2NF, 3NF, BCNF, 4NF, 5NF)์ ๊ทํ ๋ฐฉ๋ฒ ์ ๋ฆฌ (1NF, 2NF, 3NF, BCNF, 4NF, 5NF)๋ค์ด๊ฐ๋ฉฐ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๊ทํ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด๋ณธ๋ค. ์ฉ์ด ์ ๋ฆฌ์์ฑ(Attribute) : ํ ์ด๋ธ์ ์ปฌ๋ผ(Column)ํค(Key) : ํ ํ(Row)์ ๊ณ ์ ํ๊ฒ ์๋ณํ ์ ์๋ ์์ฑ (๋๋ ์์ฑ๋ค์ ์งํฉ)๊ธฐ๋ณธํค(Primary Key) : ํ ์ด๋ธ์ ๋ํํ๋ ์ ์ผํ ํคํ๋ณดํค(Candidate Key) : ๊ธฐ๋ณธํค๊ฐ ๋ ์ ์๋ ๋ชจ๋ ํค๊ธฐ๋ณธํค๋ ํ๋ณดํค ์ค์์ ์ ํํ ํ๋์ ํค์ด๋ค.ํ๋ณดํค๋ ์ํผํค ์ค์์ ์ต์์ฑ์ ๋ง์กฑํ๋ ํค์ด๋ค.์ํผํค(Super Key) : ์ ์ผ์ฑ์ ๋ง์กฑํ์ง๋ง ์ต์์ฑ์ ๋ง์กฑํ์ง ์์ ์ ์๋ ํค์ ์ผ์ฑ(Uniqueness)ํน์ ์์ฑ(๋๋ ์์ฑ๋ค์ ์กฐํฉ)์ด ์ค๋ณต๋์ง ์๊ณ ๊ณ ์ ํ ๊ฐ์ ๊ฐ์ ธ์ผ ํ๋ ์ฑ์ง์ ์ผ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด ๊ธฐ๋ณธํค(P..
2025.02.10 -
- [Database] ์ ๊ทํ(Normalization), ๋ฐ์ ๊ทํ(Denormalization), ์ด์(Anomaly)์ ๊ทํ(Normalization), ๋ฐ์ ๊ทํ(Denormalization), ์ด์(Anomaly)๋ค์ด๊ฐ๋ฉฐ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ ๊ทํ(Normalization)์ ๋ฐ์ ๊ทํ(Denormalization), ์ด์(Anomaly)์ ๋ํด ์ ๋ฆฌํด๋ณธ๋ค. ์ ๊ทํ(Normalization)๊ฐ๋ ๋ฐ์ดํฐ์ ์ค๋ณต์ ์ต์ํํ๊ณ , ์ด์ ํ์(Anomalies)์ ๋ฐฉ์งํ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ์ ๊ตฌ์กฐํํ๋ ๊ณผ์ 1์ฐจ ์ ๊ทํ(1NF), 2NF, 3NF, BCNF, 4NF, 5NF ๋ฑ์ ์ ๊ทํ์ด ์๋ค. ์ฅ์ ์ค๋ณต๋ ๋ฐ์ดํฐ๊ฐ ์ ์ด์ ธ ๊ฐฑ์ ์ด๋ ์ญ์ ์ ํ ๋ฒ๋ง ๋ณ๊ฒฝํด๋ ์ผ๊ด์ฑ์ด ์ ์ง๋๋ค.๋์ผํ ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ฌ ๊ณณ์ ๋ณด๊ดํ์ง ์์๋ ๋์ด ์ ์ฅ ๊ณต๊ฐ์ ์ ์ฝํ ์ ์๋ค.ํ ์ด๋ธ ๊ตฌ์กฐ๊ฐ ์ ์ ๋ฆฌ๋์ด ์์ด ๊ฐฑ์ ์ด์, ์ญ์ ์ด์, ์ฝ์ ์ด์ ๊ฐ์ ๋ฌธ์ ๋ค์..
2025.02.10 -
- [Service] ํ๋ฆฌ์ฆ๋ง(Prisma)ํ๋ฆฌ์ฆ๋ง(Prisma)๋ค์ด๊ฐ๋ฉฐORM(Object-Relational Mapping) ๋๊ตฌ ์ค ํ๋์ธ ํ๋ฆฌ์ฆ๋ง(Prisma)์ ๋ํด ์ ๋ฆฌํด๋ณธ๋ค. ํ๋ฆฌ์ฆ๋ง(Prisma)๊ฐ๋ ORM(Object-Relational Mapping) ๋๊ตฌ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ์ ์ธํฐํ์ด์ค๋ฅผ ๊ฐํธํ๊ฒ ๋ง๋ค์ด์ฃผ๋ ๊ฐ๋ฐ ๋๊ตฌ์ฃผ๋ก Node.js์ TypeScript ํ๊ฒฝ์์ ์ฌ์ฉ๋๋ค.SQL ์ฟผ๋ฆฌ๋ฅผ ์ง์ ์์ฑํ ํ์ ์์ด ์์ ํ ํ์ ์ ์ฝ๋๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํธ์์ฉํ ์ ์๋๋ก ๋์์ค๋ค. ORM(Object-Relational Mapping)๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ์ฌ์ฉํ๋ ๊ฐ์ฒด(Object)์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค(Relational Database)์ ํ ์ด๋ธ ๊ฐ์ ๋งคํ์ ์๋ํํ๋ ๊ธฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ๋ฅผ SQL์ด ์..
3 2024.10.22 -
- [Redis] Redis(Remote Dictionary Server)Redis(Remote Dictionary Server)๋ค์ด๊ฐ๋ฉฐ์ค์๊ฐ ๋ฐ์ดํฐ(Real Time Data)๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด ์ฌ์ฉํ ์ ์๋ ํ๋ซํผ์ธ Redis(Remote Dictionary Server)์ ๋ํด ์ ๋ฆฌํด๋ณธ๋ค. Redis(Remote Dictionary Server)๊ฐ๋ 'ํค-๊ฐ' ๊ตฌ์กฐ์ ๋น์ ํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๊ธฐ ์ํ ์คํ ์์ค ๊ธฐ๋ฐ์ ๋น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ (DBMS)๊ณ ์ฑ๋ฅ์ ์ธ๋ฉ๋ชจ๋ฆฌ(In-memory) ๋ฐ์ดํฐ ๊ตฌ์กฐ ์คํ ์ด์ฃผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค, ์บ์, ๋ฉ์์ง ๋ธ๋ก์ปค๋ก ์ฌ์ฉ๋๋ฉฐ, ๋ค์ํ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์ง์ํ๋ค.2009๋ ์ด๋ฐํ ๋ฅด ์ฐํ๋ฆฌํฌ(Salvatore Sanfilippo)๊ฐ ์ฒ์ ๊ฐ๋ฐํ๋ค. ํน์ง๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๋ฉ๋ชจ๋ฆฌ(RAM)์ ์ ์ฅํ๋ค. ๋ฐ๋ผ์ ๋งค์ฐ ๋น ๋ฅด๊ฒ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ์ธ ..
2024.10.15 -
- [MongoDB] ํ์ด์ฌ(Python)์ผ๋ก MongoDB ์ฌ์ฉํ๊ธฐ (pymongo)ํ์ด์ฌ(Python)์ผ๋ก MongoDB ์ฌ์ฉํ๊ธฐ (pymongo)๋ค์ด๊ฐ๋ฉฐํ์ด์ฌ(Python)์ผ๋ก MongoDB๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํด๋ณธ๋ค. MongoDB๊ฐ๋ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฐํ ์คํค๋ง์ JSON๊ณผ ์ ์ฌํ ๋ฌธ์ ๊ตฌ์กฐ๋ฅผ ์ ๊ณตํ๋ค.ํ์ด์ฌ(Python)์์ MongoDB๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด @pymongo@ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.@pymongo@ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ MongoDB์์ ์ํธ์์ฉ์ ๊ฐ๋จํ๊ฒ ํด์ฃผ๋ ํ์ด์ฌ ํด๋ผ์ด์ธํธ์ด๋ค.MongoDB์์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์ ์ปฌ๋ ์ (Collection)์ด๋ผ๋ ๋จ์๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ค. ๋ ์ปฌ๋ ์ ์์๋ ๋ฌธ์(Document)๊ฐ ๋ค์ด๊ฐ๋ค. (๋ฐ์ดํฐ) ์ค์นํ๊ธฐํ์ด์ฌ์์ MongoDB๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ @pymongo@ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํด์ค์ผ ํ๋ค.$ pip in..
2024.08.14 -
- [PyQt] QTableWidget๊ณผ SQLite3๋ฅผ ์ฐ๋ํ์ฌ ๊ตฌํํ CRUD ํ๋ก๊ทธ๋จQTableWidget๊ณผ SQLite3๋ฅผ ์ฐ๋ํ์ฌ ๊ตฌํํ CRUD ํ๋ก๊ทธ๋จ ๋ค์ด๊ฐ๋ฉฐ QTableWidget๊ณผ SQLite3๋ฅผ ์ฐ๋ํ์ฌ ๊ฐ๋จํ๊ฒ ๊ตฌํํ CRUD ํ๋ก๊ทธ๋จ ์์ค ์ฝ๋๋ฅผ ์ ๋ฆฌํด๋ณธ๋ค. ์์ค ์ฝ๋ import sys import sqlite3 from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QVBoxLayout, QHBoxLayout, QPushButton, QLineEdit, QTableWidget, QTableWidgetItem, QLabel, QMessageBox class MainWindow(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle("C..
2023.11.27 -
- [Node.js] PostgreSQL ์ค์น ๋ฐ ์ฌ์ฉํด๋ณด๊ธฐPostgreSQL ์ค์น ๋ฐ ์ฌ์ฉ๋ฐฉ๋ฒ๋ค์ด๊ฐ๋ฉฐNode.js์์ @npm@์ ์ด์ฉํ์ฌ PostgreSQL์ ์ค์นํ๊ณ , ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์. PostgreSQL ์ค์นํ๊ธฐํฐ๋ฏธ๋์ @npm@์ ์ด์ฉํ์ฌ ์๋์ ๋ช ๋ น์ผ๋ก PostgreSQL์ ์ค์นํ ์ ์๋ค.$ npm install pg ์ฌ์ฉ ๋ฐฉ๋ฒ@db.connect()@๋ฅผ ์ด์ฉํ์ฌ PostgreSQL DB์ ์ฐ๋ํ ํ, @db.end()@ ๋ช ๋ น์ ์ด์ฉํ์ฌ DB ์ฐ๋์ ํด์ ํ๋ค.import pg from "pg";const db = new.pg.Client({ user: "postgres", host: "localhost", database: "world", password: "123456", // ์ค์น ์ ์ค์ ํ๋ ์ํธ por..
2023.11.17 -
- [Python] ORM(Object Relational Mapping) ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉํด๋ณด๊ธฐ (SQLAlchemy)ํ์ด์ฌ์์ ORM(Object Relational Mapping) ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฌ์ฉํด๋ณด๊ธฐ (SQLAlchemy) ๋ค์ด๊ฐ๋ฉฐ ํ์ด์ฌ์์ SQLAlchemy ORM(Object Relational Mapping) ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํด๋ณด์. ORM(Object Relational Mapping) ๊ฐ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด SQL ์ฟผ๋ฆฌ(Query)๋ผ๋ ๊ตฌ์กฐํ๋ ์ง์๋ฅผ ์์ฑํ๊ณ ์คํํ๋ ๋ฑ์ ๋ณต์กํ ๊ณผ์ ์ด ํ์ํ๋ค. ์ด๋ ORM(Object Relational Mapping)์ ์ด์ฉํ๋ฉด ํ์ด์ฌ ๋ฌธ๋ฒ๋ง์ผ๋ก๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ค๋ฃฐ ์ ์๋ค. ์ฆ, ORM์ ์ด์ฉํ๋ฉด ๊ฐ๋ฐ์๊ฐ ์ฟผ๋ฆฌ๋ฅผ ์ง์ ์์ฑํ์ง ์์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ์ ์๋ค. ORM์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ํ ์ด๋ธ์ ํ์ด์ฌ ํด๋์ค๋ก ๋ง๋ค์ด ๊ด๋ฆฌํ..
2023.11.14 -
- [SQL] HAVING ์
HAVING ์ ๊ฐ๋ SQL์์ HAVING ์ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๊ทธ๋ฃนํ๋ ๊ฒฐ๊ณผ์ ๋ํ ํํฐ๋ง์ ์ํํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. HAVING ์ ์ GROUP BY ์ ๊ณผ ํจ๊ป ์ฌ์ฉ๋๋ฉฐ, GROUP BY ์ ๋ก ๊ทธ๋ฃนํ๋ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํน์ ์กฐ๊ฑด์ ๊ฐ์ง ๊ทธ๋ฃน์ ์ ํํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. ์ผ๋ฐ์ ์ธ HAVING ์ ์ ๊ตฌ๋ฌธ์ ๋ค์๊ณผ ๊ฐ๋ค. SELECT column1, column2, aggregate_function(column3) FROM table GROUP BY column1, column2 HAVING condition; SELECT: ๊ฒ์ํ ์ด์ ์ง์ ํ๋ค. ์ผ๋ฐ์ ์ผ๋ก ๊ทธ๋ฃนํ๋ ์ด๊ณผ ์ง๊ณ ํจ์๋ฅผ ํฌํจํ๋ค. table: ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ฌ ํ ์ด๋ธ์ ์ด๋ฆ์ด๋ค. GROUP BY: ๊ทธ๋ฃนํํ ์ด์ ์ง์ ํ๋ค. ์ด ์ด์ ๊ธฐ์ค์ผ๋ก ๋ฐ์ด..
2023.08.05 -
- [Azure] ํ์ด์ฌ(Python)์ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฟผ๋ฆฌ ์ค์ตํ๊ธฐํ์ด์ฌ(Python)์ ์ฌ์ฉํ์ฌ ์ ์ (Azure) ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฟผ๋ฆฌ ์ค์ตํ๊ธฐ ๋ค์ด๊ฐ๋ฉฐ ํ์ด์ฌ(Python)์ ์ฌ์ฉํ์ฌ ์ ์ (Azure)์ ์ฌ๋ฆฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฟผ๋ฆฌํด๋ณด์. ์ด๋ฒ ์ค์ต์ ์ด์ ์ ๊ธ(https://dev-astra.tistory.com/387)์ ์ด์ด์ ์งํํ๋ค. ์ค์ตํ๊ธฐ OCBC ๋๋ผ์ด๋ฒ ์ค์นํ๊ธฐ ํ์ด์ฌ์์ @mssql@๋ก ์ฐ๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ์ผ๋ฐ์ ์ผ๋ก @pyodbc@์ @pymssql@์ด ์์ผ๋ฉฐ, ์ด๋ฒ ์ค์ต์์๋ @pyodbc@๋ฅผ ์ฌ์ฉํ๋ค. ์๋์ฐ(Windows)์ ๊ฒฝ์ฐ, ์๋์ ODBC ๋๋ผ์ด๋ฒ๋ฅผ ์ค์นํ๋ค. SQL Server์ฉ ODBC ๋๋ผ์ด๋ฒ ๋ค์ด๋ก๋ - ODBC Driver for SQL Server Microsoft ODBC Driver for SQL Server๋ฅผ ๋ค์ด๋ก๋ํ์ฌ SQL..
2023.05.24 -
- [Azure] SQL Server ์ค์ตํ๊ธฐ์ ์ (Azure)๋ฅผ ์ด์ฉํ์ฌ SQL Server ์ค์ตํ๊ธฐ ๋ค์ด๊ฐ๋ฉฐ ์ ์ (Azure)๋ฅผ ์ด์ฉํ์ฌ SQL Server๋ฅผ ์ค์ตํด๋ณด์. ์ด๋ฒ ์ค์ต์ ์ด์ ์ ๊ธ(https://dev-astra.tistory.com/386)์ ์ด์ด์ ์งํํ๋ค. ์ด๋ฒ ์ค์ต์ SQL Server Tutorial ์ฌ์ดํธ์ SQL Server Basics ๋ด์ฉ์ ๋ฐํ์ผ๋ก ์ค์ต์ ์งํํ๋ค. SQL Server Basics The SQL server basics section shows you how to use the Transact-SQL (T-SQL) statements to interact with SQL Server databases. www.sqlservertutorial.net ์ค์ตํ๊ธฐ SQL Server Sample Datab..
2023.05.24 -
- [Azure] SSMS/VS Code๋ฅผ ์ฌ์ฉํ์ฌ ์ฐ๊ฒฐ ๋ฐ ์ฟผ๋ฆฌ ์ค์ตํ๊ธฐSSMS/VS Code๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ (Azure) ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ ๋ฐ ์ฟผ๋ฆฌ ์ค์ตํ๊ธฐ ๋ค์ด๊ฐ๋ฉฐ ์ ์ (Azure)์์ SSMS(SQL Server Management Studio) ๋๋ VS Code๋ฅผ ์ฌ์ฉํ์ฌ ์ฐ๊ฒฐ ๋ฐ ์ฟผ๋ฆฌ ์ค์ต์ ํด๋ณด์. ์ด๋ฒ ์ค์ต์ ์ด์ ์ ๊ธ(https://dev-astra.tistory.com/385)์ ์ด์ด์ ์งํํ๋ค. ์ค์ตํ๊ธฐ SSMS์์ ์ค์ตํด๋ณด๊ธฐ SSMS(SQL Server Management Studio) ์ค์น ์๋ ๋งํฌ์์ SSMS๋ฅผ ์ค์นํ๋ค. SSMS(SQL Server Management Studio) ๋ค์ด๋ก๋ - SQL Server Management Studio (SSMS) ์ต์ ๋ฒ์ ์ SSMS(SQL Server Management Studio)๋ฅผ ๋ค์ด๋ก๋ํฉ๋๋ค..
2023.05.23 -
- [Azure] ๋จ์ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง๋ค๊ธฐ์ ์ (Azure)๋ฅผ ์ด์ฉํ์ฌ ๋จ์ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง๋ค๊ธฐ ๋ค์ด๊ฐ๋ฉฐ ์ ์ (Azure)๋ฅผ ์ด์ฉํ์ฌ ๋จ์ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง๋ค์ด๋ณด์. ์ค์ตํ๊ธฐ ๋จ์ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง๋ค๊ธฐ ์ ์ ํฌํธ์ [๋ฆฌ์์ค ๋ง๋ค๊ธฐ]์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค, Azure SQL ์ ํ ๋๋ [SQL ๋ฐฐํฌ ์ต์ ์ ํ] ํ์ด์ง๋ก ์ด๋ํ๋ค. Microsoft Azure portal.azure.com SQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฆฌ์์ค ์ ํ์ ๋จ์ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ์ค์ ํ ์ํ๋ก ๋๊ณ [๋ง๋ค๊ธฐ]๋ฅผ ์ ํํ๋ค. ํ์ด์ง์์ ๋ค์๊ณผ ๊ฐ์ด ์ค์ ํ๊ฑฐ๋ ์ถ๊ฐํ๋ค. [๊ธฐ๋ณธ] ํญ ๋ฆฌ์์ค ๊ทธ๋ฃน : ์๋ก ๋ง๋ค๊ฑฐ๋ ์ ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด๋ฆ : @mySampleDatabase@ ์๋ฒ [์๋ก ๋ง๋ค๊ธฐ] ์ ํ ํ ์ ์๋ฒ ์์์ ๋ค์๊ณผ ๊ฐ์ด ์ ๋ ฅํ๋ค. ์๋ฒ ์ด๋ฆ : @mysqlserver-xxx@ ์๋ฒ ์ด..
2023.05.23 -
- [CS ๊ฐ๋ ] ์ฑ๊ธํค ํจํด(Singletone Pattern)์ฑ๊ธํค ํจํด(Singleton Pattern) ํ๋์ ํด๋์ค์ ์ค์ง ํ๋์ ์ธ์คํด์ค๋ง ๊ฐ์ง๋ ํจํด ํ๋์ ํด๋์ค๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฌ ๊ฐ์ ๊ฐ๋ณ์ ์ธ ์ธ์คํด์ค๋ฅผ ๋ง๋ค ์ ์์ง๋ง, ๊ทธ๋ ๊ฒ ํ์ง ์๊ณ ํ๋์ ํด๋์ค๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋จ ํ๋์ ์ธ์คํด์ค๋ฅผ ๋ง๋ค์ด ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ก์ง์ ๋ง๋๋ ๋ฐ ์ฐ์ธ๋ค. ๋ณดํต ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ ๋ชจ๋์ ๋ง์ด ์ฌ์ฉํ๋ค. ํ๋์ ์ธ์คํด์ค๋ฅผ ๋ง๋ค์ด ๋๊ณ ํด๋น ์ธ์คํด์ค๋ฅผ ๋ค๋ฅธ ๋ชจ๋๋ค์ด ๊ณต์ ํ๊ธฐ ๋๋ฌธ์ ์ธ์คํด์ค๋ฅผ ์์ฑํ ๋ ๋๋ ๋น์ฉ์ด ์ค์ด๋๋ ์ฅ์ ์ด ์๋ค. ํ์ง๋ง, ์์กด์ฑ์ด ๋์์ง๋ค๋ ๋จ์ ์ด ์๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์ ์ฑ๊ธํค ํจํด ์๋ฐ์คํฌ๋ฆฝํธ์์๋ ๋ฆฌํฐ๋ด { } ๋๋ new Object๋ก ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ฒ ๋๋ฉด, ๋ค๋ฅธ ์ด๋ค ๊ฐ์ฒด์๋ ๊ฐ์ง ์๊ธฐ ๋๋ฌธ์ ์ด ์์ฒด๋ง์ผ๋ก ์ฑ๊ธํค ํจํด์ ๊ตฌํํ ์ ์๋ค. const ..
2023.05.18