[정보처리기사 필기] 정처기 모든 과목 요점정리 (2)
OSI 7 계층
- 7 - 응용 계층 : 사용자와 네트워크 간 응용 서비스 연결.
- 6 - 표현 계층 : 코드 변환, 암/복호화.
- 5 - 세션 계층 : 연결 접속(유지), 동기점(대화).
- 4 - 전송 계층 : 종간 간 신뢰성 있는 데이터 전송. 흐름 제어. 오류, 혼잡 제어.
- 3 - 네트워크 계층 : 라우팅.
- 2 - 데이터링크 계층 : 인접 시스템 간 전송, 동기화, 오류, 흐름 제어.
- 1 - 물리 계층 : 전기적, 기능적, 절차적 기능 정의.
럼바우
- 객체 모델링 : 객체 다이어그램 (객객)
- 동적 모델링 : 상태 다이어그램 (동상)
- 기능 모델링 : 자료 흐름도 (기자)
자료 흐름도(Data Flow Diagram)
- 프로세스 : 자료를 변환시키는 시스템의 한 부분. (원)
- 자료 흐름 : 자료의 이동 (화살표)
- 자료 저장소 : 시스템에서의 자료 저장소 (이중선)
- 단말 : 시스템과 교신하는 외부 개체 (사각형)
객체지향 기법에서 클래스들 사이의 '부분-전체' 관계 또는 '부분'의 관계로 설명되는 연관성은 집단화.
객체지향 분석 방법론
- Cood와 Yourdon 방법 : E-R 다이어그램을 사용해 객체의 행위를 모델링.
- Booch 방법 : 미시적 개발 프로세스와 거시적 개발 프로세스 모두 사용.
- Jacobson 방법 : 유스케이스를 강조.
- Wirfs-Brocks 방법 : 분석과 설계 간의 구분이 없음.
객체지향 설계 원칙
- 단일책임원칙 : 소프트웨어의 설계 부품은 단 하나의 책임만을 가져야 함.
- 개방-폐쇄 원칙 : 기존의 코드를 변경하지 않고 기능을 수정/추가할 수 있어야 함.
- 리스코프 치환 원칙 : 서브 타입(자식 클래스)은 어디서나 자신의 기반 타입(부모 클래스)으로 교체할 수 있어야 함.
- 인터페이스 분리 원칙 : 한 클래스는 자신이 사용하지 않는 인터페이스는 구현하지 않아야 함.
- 의존 역전 원칙 : 변화하기 쉬운 것보다 어려운 것에 의존해야 함.
CASE 도구 : 소프트웨어 개발 과정의 일부 또는 전체를 자동화 하기 위한 도구. 작업자 간의 커뮤니케이션 증대.
DDL : 데이터 정의어 : CREATE, ALTER, DROP
DML : 데이터 조작어 : SELECT, INSERT, DELETE, UPDATE
DCL : 데이터 제어어 : COMMIT, ROLLBACK, GRANT, REVOKE
SQL Mapping : 프로그래밍 코드 내에 SQL을 직접 입력. (JDBC, ODBC, MyBaits)
ORM : 객체와 관계형 데이터베이스의 데이터를 연결. (JPA, Hibernate, Django)
트랜잭션 : 하나의 논리적 기능을 수행하기 위핸 작업의 단위. 한 번에 수행되어야 할 일련의 연산들.
- COMMIT : 트랜잭션 처리가 정상 종료. 변경 내용은 DB에 반영.
- ROLLBACK : 트랜잭션 처리가 비정상적으로 종료되어 행한 모든 변경 작업을 취소하고 이전 상태로 되돌림.
- SAVEPOINT : ROLLBACK 할 위치인 저장점을 지정. 여러 개 지정이 가능.
원자성 : 연산은 DB 모두에 반영되거나 하나도 반영되지 않아야 함.
일관성 : 연산 전후로 일관성 있는 DB 유지.
독립성 : 둘 이상의 트랜잭션 실행 시 한 개의 트랜잭션만 접근 가능하며 서로 간섭 불가.
영속성 : 완료된 연산 결과는 영구적으로 반영.
통합 개발 환경 (IDE) : 개발에 필요한 편집기, 컴파일러, 디버거 등의 툴을 하나의 인터페이스로 통합해 제공. (이클립스, 비주얼 스튜디오, IDEA 등)
빌드 자동화 도구 : 소스 코드를 소프트웨어로 변환하는 과정 수행. (Ant, Maven, Gradle, Jenkins 등)
소프트웨어 패키징 : 모듈 파일들을 묶어 배포용 설치 파일을 만듦. 사용자 중심으로 진행. 보안 고려. 복잡성 및 비효율성 문제를 고려. 암호화 알고리즘 적용. 다양한 이기종 연동을 고려.