전체 글

IT 영상 후기

영상 후기 - 객체지향 디자인패턴 1

Singleton(싱글턴 패턴) 특정 객체가 프로세스 내에서 하나만 만들어져야 하는 경우 ex) 다크모드 세팅 - 같은 세팅을 사용해야 한다. 정적변수와 비슷하다. interface의 사용이나 lazy loading 등 할 수 있는 것이 많다. Strategy(전략 패턴) 프로그램 실행 중 모드가 바뀔 때마다 전략이 수정되는 방식 ex) - (전체,이미지,뉴스,지도) 중 선택에 따라 검색 방법이 달라진다. 검색 전략을 갈아 끼우는 방식으로 진행된다. State 패턴 전략패턴과 유사하다. 특정 상태마다 다르게 작업하는 것을 의미한다. ex) - 다크모드 on/off , TV 버튼 on/off 등 Command 패턴 각각 다른 일(명령)을 수행하는 방식 Adapter 패턴 형식이 다른 둘 사이를 연결해주는 ..

IT 영상 후기

영상 후기 - 관계형 데이터 모델링 - 6.4. 제3 정규화

제 3정규화 원칙 : No transitive dependencies 이행적 종속성이 없어야 한다. 테이블에서 A(PK), B, C column이 있을 때, B가 A에 종속되고, C가 B에 종속될 때 이를 이행적 종속성이라고 한다. 따라서, B, C를 새로운 테이블로 분리해 생성한다. 원 테이블에서는 C를 제외하여 A,B를 가지게 된다. 이로써 제 3 정규형을 만들 수 있다.

IT 영상 후기

영상 후기 - 관계형 데이터 모델링 - 6.3. 제2 정규화

제 2 정규화 원칙 : No partial dependencies 부분 종속성이 없어야 한다. 기본 키 중에 중복키인 것이 없어야 한다. 특정 column에 따라 값이 달라지는 상황이 존재하고, 중복된 값을 가진다면 부분 종속성이 존재한다는 것을 의미한다. 따라서, 특정 column과 이를 종속하는 column을 하나의 테이블로 만든다. → 새로운 테이블은 완전히 똑같은 튜플을 가지게 된다. → 튜플을 삭제하여 중복을 없앨 수 있다. 나머지 column들과의 관계도 새로운 테이블로 작성한다.

IT 영상 후기

영상 후기 - 관계형 데이터 모델링 - 6.2. 제1 정규화

제 1 정규화 원칙 : atomic columns 각각 column의 값은 하나만을 가져야 한다. 영상 실습에서 tag column에 여러 값이 존재한다. topic - tag 는 M : N 의 관계를 가진다. 따라서, 중간에서 연결을 해줄 새로운 테이블이 필요하다. topic 테이블에서 tag Column을 분리해 새로운 테이블 tag를 만든다. topic 테이블의 PK와 tag테이블의 PK를 두 column으로 가지는 테이블 topic_tag_relation 을 생성한다. 이후 PK, FK 를 연결하면 atomic columns를 만족하는 제 1 정규형이 된다.

IT 영상 후기

영상 후기 - 관계형 데이터 모델링 - 6.1. 정규화 소개

Normalization(정규화) 정제되지 않은 데이터(표를) 정제된 데이터(표)로 변환하는 방법이다. UNF : 정규화가 일어나지 않은 데이터(표) 1NF : 첫번째로 정규화된 데이터(표) 각각의 Column이 atomic 한 상황 2NF, 3NF, 4NF, … , 6NF 이 존재한다. 3NF 까지가 실제로 많이 쓰이고 이후는 학구형으로 쓰인다. 이후 강의에서 3NF까지 자세히 알아본다고 한다.

IT 영상 후기

영상 후기 - 관계형 데이터 모델링 - 5.5.2. N:M 관계의 처리 - 내용 정정

이전 강의에서 만든 write의 두 컬럼을 FK로 지정한다. 동시에 author, topic 테이블에 PK를 지정한다. write 테이블의 author_id는 author 테이블의 id를 참조하고, write 테이블의 topic_id는 topic 테이블의 id를 참조한다.

IT 영상 후기

영상 후기 - 관계형 데이터 모델링 - 5.5.1. N:M 관계의 처리

author - topic의 관계에서 author는 한명이 여러 topic에 관여할 수 있다. topic 또한 하나에 여러 author가 존재할 수 있다. 즉 N : M 의 관계이다. topic 테이블에 author 컬럼을 추가하면 한 튜플에 여러 값이 들어갈 수 있다. author의 테이블의 경우에도 마찬가지. 따라서, 중재 테이블이 필요하다. write 라는 중재 테이블을 추가했다. author_id와 topic_id 컬럼으로 이루어져 있고, 각각의 저저가 어떤 글을 작성했는지 내용을 채운다. author로 구분하고, 같은 author도 작성한 topic으로 구분되어 1개씩의 값을 가지는 튜플들이 생성된다.

IT 영상 후기

영상 후기 - 관계형 데이터 모델링 - 5.4. 1:N 관계의 처리

author - comment, comment - topic 의 관계에서 연결을 만들기 위해 새로운 컬럼을 추가했다. comment 테이블에 author_id, topic_id을 추가했다. 즉 2개의 foreign key를 가지게 되었다. 1 : N 관계는 누가 Primary Key 인지 정하지 않아도 돼 쉽다.

IT 영상 후기

영상 후기 - 관계형 데이터 모델링 - 5.3. 1:1 관계의 처리

실습 진행 (1:1 관계 추가를 위해 새로운 테이블(휴면)을 추가했다.) PK와 FK를 연결지어 관계를 만든다. 먼저, Cardinality(몇 대 몇 인지)를 따져본다. 1 : 1 의 상황에서 어떤 테이블이 FK를 가지게 되는가? 의존 관계를 따진다. 혼자여도 상관없는 테이블 : 부모 테이블, 의존하는 테이블 : 자식 테이블 자식 테이블이 부모 테이블을 참조, FK 연결가능(자식 테이블에 존재)

IT 영상 후기

영상 후기 - 관계형 데이터 모델링 - 5.2. 테이블과 컬럼 생성

실습 진행 ER Master 사용(툴 설치하기 어려움) Entity → Table FK 가 없는 테이블부터 완성 column의 제약을 설정(도메인이라고 한다) not null, auto increment 등 저자, 글, 댓글 Table을 만들었다.

호준송
다락방