분류 전체보기23 릴레이션(Relation)과 집합 관계형 데이터베이스는 릴레이션으로 데이터를 표현한다. 우리는 SQL(Structured Query Language)을 이용해 테이블을 조작한다. CREATE TABLE student ( ID INT ); ALTER TABLE student ADD PRIMARY KEY ID; DROP TABLE student; 관계형 데이터베이스는 일련의 데이터의 관계(Relation, 릴레이션)를 정의한 관계 그 자체로 데이터를 관리한다. 우리는 그 관계에 질의(Query)를 던져 다양한 연산을 수행한다. 관계형 모델(relational model)은 철저히 술어 논리와 집합론에 기반을 둔 데이터베이스 모델이다. 즉 우리가 성능 좋은 SQL문을 짜기 위해선 우리의 쿼리로 이루어지는 연산이 릴레이션에선 어떤 집합 연산으로.. 2023. 5. 10. 관계형 모델(Relational Model) 관계형 모델(relational model)은 술어 논리와 집합론에 기반을 둔 일종의 데이터베이스 모델이다. 관계형 데이터베이스(Relational Database)는 관계형 모델을 바탕으로 구현되었다. 관계형 데이터베이스 관리 시스템(relational database management system)은 관계형 데이터베이스를 편리하게 관리하기 위해 만들어졌다. SQL(Structured Query Language)은 관계형 데이터베이스 관리 시스템의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다. 데이터베이스 설계, 데이터베이스 정규화, SQL 공부, 쿼리 튜닝에서 많은 사람들이 고생하는 이유이다. 관계형 데이터베이스는 철저히 술어 논리와 집합론의 세상으로만 이해할 수 있지만, 우리는 .. 2023. 5. 10. 추상 팩토리 패턴(Abstract Factory Pattern) 객체 생성을 담당하는 구체 클래스를 상세하게 정의하지 않고도, 서로 의존성이 있거나 독립적인 여러 객체의 집합을 생성하기 위한 추상 클래스 혹은 인터페이스를 정의한다. full source BluetoothSupport 블루투스 기능을 구현하기 위한 규약이 모인 인터페이스 Computer 컴퓨터를 표현하기 위한 클래스이다. 키보드, 모니터, 마우스를 표현한 객체를 필드에 인스턴스화 하여 사용하고 있다. 키보드, 모니터, 마우스는 컴퓨터를 이루는 제품군이다. 제품군은 컴퓨터의 부분 집합이며, 제품군의 라이프 타임 은 독립적이다. ComputerFactory (abstract factory) 구체 컴퓨터 객체의 제품군 생성을 담당하는 추상 팩토리 클래스이다. ComputerFactoty2 구체 팩토리 객체를.. 2023. 5. 10. 빌더 패턴(Builder Pattern) 생성 패턴(Creational Patterns) 객체를 생성(클래스의 인스턴스를 만드는 절차), 합성(Compositon) 하는 방법을 기존 클래스에서 분리한다. (SOLID, Single Responsibility Principle : 단일 책임 원칙) 필요시 클래스의 인스턴스(instance)를 만드는 절차, 과정을 추상화(Abstraciton) 한다. 객체의 표현 방법을 기존 클래스에서 분리 한다. full source full source NPC 플레이어와 상호 작용이 가능한 NPC(Non-player character)를 구현한 클래스 각각의 NPC 객체는 이름(name), 비용(cost), 신규 플레이어 도우미 여부(helper), NPC의 타입(npcType), NPC의 특성(npcModif.. 2023. 5. 10. 이전 1 2 3 4 5 6 다음