본문 바로가기

정보처리기사/IV. 프로그래밍 언어 활용

(9)
IV. 프로그래밍 언어 활용 - 응용 SW 기초 기술 활용 (3) (1) 웹 서버 1. 웹 서버 개념 - 웹 브라우저로부터 HTTP 요청을 받아드리고 웹 페이지를 반환해주는 프로그램이다 2. 웹 서버의 동적 콘텐츠와 정적 콘텐츠 - 정적 콘텐츠 : 미리 생성된 페이지를 사용자 요청에 의해 바로 응답하는 콘텐츠 - image, html, css, javascript 파일과 같이 컴퓨터에 저장되어 있는 파일 제공 - 동적 콘텐츠 : 사용자의 요청에 의해 생성되는 콘텐츠 - 웹 서버에 의해서 실행되는 프로그램을 통해서 만들어진 결과물 3. 웹 서버의 기능 - HTTP : HTTP의 요청과 응답에 대한 처리 수행 - 통신 기록 : 처리 기능을 로그화시켜서 추적성 보장 - 인증 : 허용된 사용자나 관리자만 접근할 수 있도록 인증 기능 제공 - HTTPS 지원 : SSL이나 TL..
IV. 프로그래밍 언어 활용 - 응용 SW 기초 기술 활용 (2) (1) 인터넷 구성의 개념 1. 인터넷 개념 - 컴퓨터로 연결하여 TCP/IP 통신 프로토콜을 이용해 정보를 주고 받는 컴퓨터 네트워크 2. 인터넷의 구성 - 종단 시스템, 통신망, 프로토콜, 주소체계, 접속 제공 (2) 네트워크 7계층 1. OSI (Open System Interconnection) 7계층 구분 개념 단위 프로토콜 Application 일반적 응용 서비스를 수행하는 역할을 담당 Data FTP,HTTP Presentation 하위 계층에서 온 데이터를 사용자가 이해 할 수 있는 형태로 만드는 역할 MPEG,SMB Session 응용 프로그램간 대화를 유지하기 위한 구조를 제공 SSH,TLS Transport 신뢰성 있는 데이터를 전송하는 계층 Segment TCP/UDP Network..
IV. 프로그래밍 언어 활용 - 응용 SW 기초 기술 활용 (1) (1) 운영체제 종류 1. 운영체제 개념 - 하드웨어를 보다 쉽게 사용할 수 있도록 인터페이스를 제공해주는 소프트웨어 2. 운영체제 종류 1) 윈도우즈 계열 운영 체제 - GUI제공, 선점형 멀티태스킹방식 제공, 자동감지 기능 제공, OLE사용 2) 리눅스/유닉스 계열 운영 체제 - 대화식 운영체제, 다중 작업 제공, 다중 사용자 기능 제공, 이식성 제공, 계층적 트리 구조 파일 시스템 (2) 메모리 관리 1. 운영체제에서 메모리 관리 개념 - 중앙처리장치, 메모리, 스토리지, 주변 기기 등을 적절히 관리하며 CPU가 연속적으로 동작하기 위해 관리의 역할이 필요 2. 메모리 관리 기본 사항 - 가상 메모리, 메모리 관리 장치, 메모리 관리자 3. 메모리 관리 기법 - 반입 기법, 배치 기법, 할당 기법,..
IV. 프로그래밍 언어 활용 - 프로그래밍 언어 활용 (2) (1) 절차적 프로그래밍 언어 1. 절차적 프로그래밍 언어 (Procedural Programming Language) 개념 - 프로시저 호출의 개념을 바탕으로 하고 있는 프로그래밍 언어 2. 절차적 프로그래밍 언어 특징 - 유지보수에 쉽다 - 같은 코드를 다른 곳에서 사용하기 쉽다 - 순차적으로 진행되어 흐름 파악에 쉽다 - 모듈화, 구조화를 할 수 있다 3. 절차적 프로그래밍 종류 - 알골, C언어, 베이직, 포트란 (2) 객체지향 프로그래밍 언어 1. 객체지향 프로그래밍 언어(Object Oriented Programming Language) 개념 - 컴퓨터 프로그램을 여러 명령어의 목록으로 보는 시각에서 벗어나 여러개의 독립된 단위인 "객체"들을 중심으로 하는 프로그래밍 언어 2. 객체지향 프로그..
IV. 프로그래밍 언어 활용 - 프로그래밍 언어 활용 (1) (1) 데이터 타입 1. 데이터 타입의 개념 - 실수, 정수 자료형과 같은 여러 종류 데이터를 식별하는 형태 2. 데이터 타입의 유형 - 불린(boolean type) : 조건이 참인지 거짓인지 판별 - 문자(char type) : 문자 하나를 저장하고자 할 때 사용 - 문자열(string type) : 나열된 여러개의 문자를 저장할 때 - 정수 타입(int type) : 정수값 저장 - 부동 소수점 타입(float type) : 소수점을 포함하는 실숫값 저장할 때 사용 - 배열 타입(array type) : 여러 데이터를 하나로 묶어서 저장 (2) 변수 1. 변수의 개념 - 저장하고자 하는 어떠한 값이 있을 때 그 값을 주기억 장치에 저장하기 위한 공간을 의미 (3) 연산자 1. 연산자의 개념 - +,..
IV. 프로그래밍 언어 활용 - 서버프로그램 구현 (4) (1) 배치 프로그램 1. 배치 프로그램의 개념 - 일련의 작업들을 반복수행하거나 정해진 규칙에 따라 일괄 처리하는 방법 2. 배치 프로그램의 필수요소 - 이벤트 배치, 온디맨드 배치, 정기 배치 3. 배치 스케쥴러 1) 개념 - 일괄처리를 위해 주기적으로 발생하거나 반복적으로 발생하는 작업을 지원하는 도구 2) 종류 - 스프링 배치, 쿼츠 스케쥴러
IV. 프로그래밍 언어 활용 - 서버프로그램 구현 (3) (1) 보안 취약성 식별 1. 보안 취약성의 개념 - 정보 시스템에 불법적인 사용자의 접근을 허용할 수 있는 위협 2. 침투 테스트 - 위험한 코드 삽입, SQL 삽입, 매개변수화 등의 부적절한 보안 조치를 식별하고 평가 - 절차 : 정찰 ,탐색, 접근 권한 취득, 액세스 유지, 추적 방지 3. 취약성 공격 - 공격자가 원하는 결과를 얻기 위한 행위. 랜섬웨어도 포함됨. 4. 취약성에 따른 공격 기법 - 서비스 거부(Dos), 코드 실행, 버퍼 오버플로우, 정보 수집, 권한 상승, SQL인젝션, 크로스 사이트 스크립팅(XSS) 등 5. 시큐어 코딩 - 개발자의 실수, 논리적 오류 등으로 인해 SW의 보안 취약점을 최소화하고 안전한 소프트웨어를 개발하기 위한 활동 (2) API 1. API (Applica..
IV. 프로그래밍 언어 활용 - 서버프로그램 구현 (2) (1) 재사용 1. 재사용의 개념 - 개발 시간 및 비용 절감을 위하여 검증된 기능을 파악하고 재구성하여 시스템에 응용하기 위한 최적화 작업 2. 재사용의 유형 - 함수/객체 재사용, 컴포넌트 재사용, 애플리케이션 재사용 3. 재사용 프로그래밍 기법 - 객체지향, 제네릭, 자동, 메타 프로그래밍 (2) 모듈화 1. 모듈화 개념 - 프로그램 개발 시 생산성과 최적화, 관리에 용이하게 기능 단위로 분할하는 기법 2. 모듈화 장점 - 효율적 관리 및 성능 향상 - 용이성 증대와 복잡성 감소 - 인터페이스 단순화 - 유지보수 용이 3. 모듈화 원리 - 분할과 정복, 정보 은닉, 데이터 추상화, 모듈 독립성 4. 모듈화 측정 지표 - 응집도, 결합도 5. 모듈화 유형 - 모듈, 컴포넌트, 서비스, 함수, 매크로,..