DEVELOP
article thumbnail
[컴퓨터공학개론] 6. 프로그래밍 언어 (Programming Languages)

본 게시물은 컴퓨터공학개론 과목의 강의영상과 강의자료를 바탕으로 작성한 학습용 게시물입니다. 역사적 고찰 (p.294) 초창기 프로그래밍 언어 : 기계어, 어셈블리 언어 기계 독립적 언어 (human friendly) 고급 프로그래밍 언어들은 더욱 강력한 추상화 요소들 포함 # 1세대 언어 : 기계어 숫자로 표현된 명령코드와 피연산자들 ㅣVole # 2세대 언어 : 어셈블리 언어 기계 명령을 표현하기 위한 기호 체계 명령 코드는 기호식 이름으로 표현 기계 명령과 어셈블리 명령 사이에는 일대일 대응 관계가 존재 어셈블러에 의해 기계어로 변환됨 # 3세대 언어 고급 프리미티브를 사용 ( 슈도코드와 유사 ) 대체로 기계 독립적 각 프리미티브는 여러 개의 기계어 명령에 대응 컴파일러에 의해 기계어로 변환됨 ex..

[컴퓨터공학개론] 5. 알고리즘 (Algorithms)

본 게시물은 컴퓨터공학개론 과목의 강의영상과 강의자료를 바탕으로 작성한 학습용 게시물입니다. 알고리즘의 개념 # 알고리즘 : 모호하지 않고 실행 가능한 단계들의 집합이며, 단계들에는 순서가 정해져있고 종료되는 프로세스를 정의 - 프로그램 : 알고리즘에 대한 표현 - 프로세스 : 알고리즘 실행 활동 알고리즘의 표현 (Algorithm Representation) # 프리미티브 : 알고리즘 표현에 사용될 잘 정의된 기초 요소 - 자체의 semantics와 syntax을 갖음 - 프리미티브 조합 규칙의 집합이 프로그래밍 언어를 구성 # 의사코드 : 알고리즘 개발 과정에서 생각들을 보다 자유로운 형식으로 표현할 수 있는 표기 체계 - 배정문, 조건, 반복문, 함수정의 - 들여쓰기 알고리즘의 발견 (Alogori..

article thumbnail
[컴퓨터공학개론] 4. 네트워킹과 인터넷 ( Networking and the Internet )

본 게시물은 컴퓨터공학개론 과목의 강의영상과 강의자료를 바탕으로 작성한 학습용 게시물입니다. 네트워크 기초 ( Network Fundamentals ) # 컴퓨터 네트워크의 분류 개인통신망 (Personal Area Network , PAN) : 헤드셋, 스마트폰 사이 또는 무선마우스와 PC사이 등 수 미터 이내의 짧은 거리의 통신에 사용 근거리 통신망 (Local Area Network, LAN) : 하나의 건물이나 건물 군 안의 컴퓨터들로 이루어짐 - ex ) 대학 캠퍼스, 제조업체 공장 안의 컴퓨터들 광역도시 통신망 (Metropolitan Area Network , MAN) : 지역 공동체 정도의 지역에 걸친 중간 크기의 네트워크 원거리 통신망 (Wide Area Network, WAN) : 이웃..

article thumbnail
[데이터베이스] Database Index

본 게시물은 데이터베이스 과목의 강의영상과 강의자료를 바탕으로 작성한 학습용 게시물입니다. 테이블의 물리적 저장 구조 만든 테이블의 튜플들은 저장공간 (HDD 또는 플래시 메모리)에 Heap file 또는 Sorted file 형태로 저장됨 # Heap file 튜플들이 무순서 (random order)로 저장됨 (입력한 순서대로) 테이블의 모든 튜플들을 스캔하는 연산에서 효율 검색이 비효율적 O(N) # Sorted file 테이블 특정 애트리뷰트 값의 순으로 튜플들이 저장됨 해당 애트리뷰트로 검색할 때 효율적 O(log N) ex) 학번 순 저장 → 학번 순 검색 효율적, 이름 순 검색 비효율적 테이블의 인덱싱 테이블에서 지정한 애트리뷰트 값에 대하여, Tree 혹은 Hash 형태의 보조적인 저장구조..

article thumbnail
[데이터베이스] E/R Model을 Relational Database로 변환

본 게시물은 데이터베이스 과목의 강의영상과 강의자료를 바탕으로 작성한 학습용 게시물입니다. E/R에서 RDB로의 변환 주요 단계 Entity를 Table로 변환 - 식별자 → 기본키 - 애트리뷰트의 타입 정의 - Unique, NOT null 속성 Relationship 고려 - Foreign key 추가 - Intersection / Association Table 생성 - 관계에 의해 새로운 table 생성되기도 함 이상적인 기본 키는 짧고, 숫자이며, 고정 값 대체 키는 이상적이지만, 사용자에게는 의미 x entity : 그림자 o , table : 그림자 x 기본 키는 key symbol로 디자인 Specify Candidate (Alternate) Keys 후보 키는 테이블에서 고유한 행의 대체..

article thumbnail
[데이터베이스] E-R modeling

본 게시물은 데이터베이스 과목의 강의영상과 강의자료를 바탕으로 작성한 학습용 게시물입니다. 데이터베이스 설계 순서 (database design phases) 1. 개념적 데이터 모델링 (conceptual data modeling) E-R modeling E-R 다이어그램 2. 논리적 데이터베이스 설계 (logical database design) 관계형 데이터베이스 설계 (relational database design) 테이블 스키마 (tabla schemes) 3. 물리적 데이터베이스 설계 (physical database design) 성능 관점 : 데이터를 효과적으로 저장하고 인덱싱하는 방법 저장 구조(storage scheme) 테이블 인덱스 (table indexes) E-R model 개..

article thumbnail
[데이터베이스] 데이터베이스 설계

본 게시물은 데이터베이스 과목의 강의영상과 강의자료를 바탕으로 작성한 학습용 게시물입니다. 데이터의 세계 - 데이터에 대한 3개의 세계 # 현실 세계 (개체) # 개념 세계 (개념) : 현실 세계의 개체를 추상화, 개념적 모델링을 한 세계 ex) E-R 다이어그램 # 컴퓨터 세계 (데이터) : 개념 세계의 개체 타입을 변환, 논리적 모델링을 한 세계 1. 개념적 모델링 : 추상화 수준이 높고 업무 중심적이며 포괄적인 수준의 모델링 진행 현실 세계를 추상적 개념, 개체 타입으로 표현 개념적 구조 개념적 설계 2. 논리적 모델링 : 업무에 대해 키, 속성, 관계 등을 정확히 표현 개념적 구조를 논리적 개념, 레코드 타입으로 표현 논리적 구조, 데이터모델 논리적 설계 3. 물리적 구조화 : 실제 DB에서 이식..

[데이터베이스] DB응용프로그래밍 : mySQL 및 python 기반

본 게시물은 데이터베이스 과목의 강의영상과 강의자료를 바탕으로 작성한 학습용 게시물입니다. DB 사용자 관리 사용자 생성 - mySQL의 root 사용자를 모든 용도에 사용하지 말고, 적절한 권한을 가지는 사용자를 생성하여 사용하는게 바람직 - ex) create users 'db2020'@'%'identicied by 'db2020'; 권한 부여 - 특정 데이터베이스, 테이블 등에 읽기/쓰기 등의 권한을 부여할 수 있음 - ex) grant all privileges on university.*to'dv2020'@'%'; DB 응용프로그램 API 호출 순서 DB connection 실행 Cursor 생성 SQL문 실행 SQL 검색결과 가져오기 Cursor 닫기 DB connection 닫기 DB con..