상식 2

데이터베이스 정규화 정리

정규화? 관계형 데이터베이스에서 중복 작업을 최소화하기 위해 정보를 나누는 작업.프로그램 처리속도를 개선이 목표. 특히 데이터의 수정 시 반복된 작업을 제거하기 위해 필수적이다. 정규화의 종류는 1NF, 2NF, 3NF, BCNF, 4NF, 5NF 등이 있다.하지만, 일반적으로 사용하는 단계에서는 3NF만 만족해도 충분하다. 3NF만 만족하여도 데이터베이스가 정규화되었다고 말한다. 1NF 각 속성은 반드시 원자값을 가져야한다.하나의 칼럼에 나누어 질 수 있는 값을 넣어선 안된다. 연락처 값에 2개로 나눌 수 있는 값이 들어갔으므로 원자성에 위배된다. 다음과 같이 테이블에 행을 추가해서 1NF을 만족할 수 있게 해야한다. 2NF 완전함수종속을 만족해야한다. (부분함수종속 제거)키가 아닌 모든 칼럼은 키에 ..

상식 2016.06.04

Compiler vs Interpreter

컴파일러(Compiler) 컴파일러는 특정 프로그램 언어로 작성된 문장을 처리하여 기계어 또는 컴퓨터가 사용할 수 있는 코드로 번역해주는 프로그램이다. ( C, C++, Java ... ) 인터프리터(Interpreter) 고급언어로 작성된 명령문을 한 번에 한 줄씩 번역하고 실행하는 프로그램. (대표적으로 Python ... ) 차이점 속도컴파일러는 프로그램 단위로 한 번에 번역하고 수행하기 때문에 번역시간이 인터프리터보다 다소 길지만 프로그햄 수행시간은 짧다. 인터프리터는 명령어 단위로 번역하고 수행하기 때문에 번역시간은 빠르지만, 프로그램수행속도가 느리다. 메모리할당컴파일러는 프로그램을 번역한 뒤, 번역한 기계어를 저장하기 위해 메모리를 많이 사용한다.(목적 프로그램 생성) 인터프리터는 명령어를 한..

상식 2016.06.04