본문 바로가기

정보처리기사/필기73

[정보처리기사] Part04-02-1. 기본 문법 활용 데이터 타입 ☞ 응용 소프트웨어 개발에 사용되는 기본 문법 중 하나 ☞ 개발 시 사용될 언어에 대한 선택과 해당 언어 데이터 타입 숙지하여 활용해야 함 1. 변수와 데이터 타입 확인 절차 ㄱ. 변수와 데이터 타입 의미 파악 ▶ 유형 ▷ 블린 타입 → 조건이 참인지 거짓인지 판단 → bool ▷ 문자 타입 → 문자 하나를 저장 → char ▷ 문자열 타입 → 나열된 여러 개 문자 저장 → string ▷ 정수 타입 → 정수 값 저장 → int, long, unsigned int ▷ 부동소수점 타입 → 소수점 포함하는 실수 값 저장 → float, double ▶ 자료형별 형식 지정자 ▷ int a; → int로 선언된 변수는 %d로 출력 → %d ▷ long a; → long로 선언된 변수는 %ld로 출력.. 2022. 2. 15.
[정보처리기사] Part04-01-4. 배치 프로그램 구현 배치 프로그램 ☞ 사용자와의 상호작용 없이 일련 작업들을 작업 단위로 묶어 정기적으로 반복 수행하거나 정해진 규칙에 따라 일괄로 처리하는 프로그램 ▶필수 요소 ▷ 대용량 데이터 → 대용량 데이터 처리 가능해야 함 ▷ 자동화 → 심각한 오류 상황 외에는 사용자 개입 없이 동작해야 함 ▷ 견고함 → 유효하지 않은 데이터나 로직 수행 경우에도 예외 처리해서 비정상적인 동작 중단 발생하지 않아야 함 ▷ 안정성 → 어떤 문제가 생겼는지, 언제 발생했는지 등 추적 가능해야 함 ▷ 성능 → 주어진 시간 내 처리 완료 가능해야 하고, 동시 동작하고 있는 다른 애플리케이션 방해하지 않아야 함 배치 스케줄러 ☞ 일괄 처리 위해 주기적으로 발생하거나 반복적으로 발생하는 작업을 지원하는 도구 ▶종류 ㄱ. 스프링 배치(Spri.. 2022. 2. 15.
[정보처리기사] Part04-01-3. 서버 프로그램 구현 보안 취약점 ☞ 취약점 (vulnerability) : 공격자가 시스템 정보에 대한 안정성 낮추는데 사용되는 보안 약점 ☞ 시스템 자체 결함, 공격자 결함에 대한 접근 용이성, 공격자가 결함에 대하여 공격할 가능성 ☞ 취약점 공격 위해, 공격자는 시스템 약점 이용하여 접속 가능한 적어도 하나 이상의 툴이나 기법 이용 ▶ 취약점 식별과 제거 → 컴퓨터 시스템에서 취약점들을 발견 가능케 도와주는 많은 솔루션 존재 → 그러나 이러한 솔루션은 보안 담당자에게 현재 존재하는 취약점들에 대한 편의 제공할 수 있지만, 사람의 판단을 완전히 대체 불가 > 스캐너나 툴에만 의존하는 것은 현재 시스템에 존재하는 문제들에 대한 매우 제한된 관점과 오류 생성 가능 → 보안 취약점 이용한 공격 확률 줄일 수 있는 가장 좋은 방.. 2022. 2. 15.
[정보처리기사] Part04-01-2. 공통 모듈 구현 재사용 ☞ 기존 SW 또는 SW 지식 재활용하여, 새로운 SW 개발하는 활동 ▶ 이해 → SW나 SW 지식은 재사용 가능한 자산 → 재사용 대상에는 설계, 요구명세, 검사, 아키텍처 등 포함 → 라이브러리는 SW 재사용 좋은 사례 → 프로그래머는 프로그램 일부 재사용하기 위해서 공통 라이브러리 생성 → SW 재사용하기 쉽게 하는 주요 특성 : 모듈화, 낮은 결합도, 높은 응집도, 캡슐화, 관심사 분리 등 ▶ 코드 재사용 → 가장 일반적인 재사용 가능한 자산 중 하나는 프로그램 코드 → 특정 시점에 작성된 프로그램 일부 또는 전부를 다른 프로그램 만들 때 재활용하는 활동 → 장황한 코딩 작업에 소비하는 시간과 에너지 절약하는 전형적인 기법 ▶ 재사용 프로그래밍 기법 ▷ 객체 지향 프로그래밍 → 객체 단위로.. 2022. 2. 10.
[정보처리기사] Part04-01-1. 개발환경 구축 개발 환경 구축 ☞ 애플리케이션 설계 기반으로 개발에 필요한 환경 구성하고, 프로그래밍 언어와 도구 활용하여 공통모듈, 업무, 프로그램과 배치 프로그램 구현하는 능력 ▶ 개발 도구 분류 및 특성 ▷ 구현 도구 (Implementation Tool) : 코드의 작성과 디버깅, 수정 작업 가능하며 구현해야 할 SW가 어떤 프로그래밍 언어로 개발되는지에 따라 적합한 구현 도구 선택하여 사용 (Eclipse, Visual Studio Code, IntelliJ, NetBeans 등) ▷ 테스트 도구 (Test Tool) : 코드 기능 검증과 개발 품질 높이기 위해 사용하는 도구이며, 테스트 계획, 수행, 분석 등의 작업 가능 (xUnit, Spring Test 등) ▷ 형상관리 도구 (Configuration .. 2022. 2. 10.
[정보처리기사 필기 요약] 시스템 소프트웨어 * 시스템 소프트웨어 사용자가 하드디스크에 있는 파일 조작 시 사용자가 직접 처리 않고 이를 대신 처리하는 P/G 컴퓨터 HW를 실제로 운용하는 P/G P/G을 메모리에 적재하거나 인터럽트 관리, 기억장치 관리 등 역할 시스템 소프트웨어 개념 운영 체제 (Operation System) - HW와 SW 자원 관리하고 컴퓨터 P/G 위한 공통 서비스 제공하는 P/G 어셈블러 (Assembler) - 어셈블리어 --> 기계어로 변환해주는 P/G 컴파일러 (Compiler) - 고급언어로 작성한 원시 P/G을 기계어인 목적 P/G으로 바꾸어 주는 P/G 인터프리터 (Interpreter) - 고급 언어나 코드화된 중간 언어 입력받아 목적 P/G 생성 없이 직접 기계어 생성하여 실행시켜 주는 P/G 전처리기 (.. 2021. 3. 4.
[정보처리기사 필기 요약] 프로그램 개발 언어 (객체지향, 선언형) * 프로그램 개발 언어 - 프로그램 실행 방식에 따른 종류 구분 설명 컴파일러 언어 (Compiler) - 번역사 같은 작업 - P/G 전체 라인을 처음부터 끝까지 해독해 목적 코드로 만든 후 실행 - C, C++, COBOL, Ada, FORTRAN, PASCAL 등 인터프리터 언어 (Interpreter) - 통역사 같은 작업 - P/G 라인 단위로 한 줄씩 해석하고 바로 실행 - 자바스크립트, BASIC, LISP 등 스크립트 언어 - 소스 코드 컴파일 하지 않고도 실행 가능한 프로그래밍 언어 - 별도 컴파일 없이 내장된 번역기에 의해 번역되므로 바로 실행 가능 - 컴파일러 언어와는 다르게 인터프리터(interpreter) 사용해서 코드 한줄 한줄을 즉시 해석하고 실행 - 인터프리터 방식 언어를 보.. 2021. 3. 4.
[정보처리기사 필기 요약] 배치 프로그램 * 배치 프로그램 사용자와의 상호작용 없이 일련의 작업들을 작업 단위로 묶어 정기적으로 반복 수행하거나 정해진 규칙에 따라 일괄 처리하는 P/G * 배치 프로그램 필수 요소 요소 설명 대용량 데이터 - 대용량 데이터 처리 가능해야 함 자동화 - 심각한 오류 상황 외에는 사용자 개입 없이 동작해야 함 견고함 - 유효하지 않은 데이터나 로직 수행 경우에도 예외 처리 해서 비정상적인 동작 중단 발생하지 않아야 함 안정성 - 어떤 문제 생겼는지, 언제 발생했는지 등 추적 가능해야 함 성능 - 주어진 시간 내 처리 완료 가능해야 하고, 동시에 동작하고 있는 다른 어플리케이션 방해하지 않아야 함 2021. 3. 4.
[정보처리기사 필기 요약] 소프트웨어 개발 보안 * SW 개발 보안 SW 개발 과정에서 개발자 실수, 논리적 오류 등으로 인해 SW에 내포될 수 있는 보안 약점 원인 보안 취약점 최소화하고 사이버 보안 위협에 대응할 수 있는 안전한 SW 개발하기 위한 일련의 보안 활동 * SW 개발 보안가이드 (시큐어 코딩) 유형 유형 설명 입력 데이터 검증 및 표현 - P/G 입력 값 대한 검증 누락 또는 부적절한 검증, 데이터 잘못된 형식 지정으로 인해 발생 가능한 보안 약점 ※ SQL 삽입, 자원 삽입, 크로스 사이트 스크립트(XSS) 등 26개 보안 기능 - 보안 기능(인증, 접근 제어, 기밀성, 암호화, 권한 관리 등) 적절하지 않게 구현할 경우 발생 가능한 보안 약점 ※ 부적절한 인가, 중요 정보 평문 저장(또는 전송) 등 24개 시간 및 상태 - 동시 또.. 2021. 3. 4.
[정보처리기사 필기 요약] 취약점 * 취약점(vulnerability) 공격자가 시스템 정보에 대한 안정성 낮추는데 사용되는 보안 약점 시스템 자체 결함, 공격자가 결함에 대한 접근 용이성, 공격자가 결함에 대해 공격할 가능성 * SW 보안 취약점 보안 사고는 한 가지 이상 취약점들의 조합 통해 더욱 빈번하게 발생 분류 취약점 설명 메모리 보안 침입 버퍼 오버플로 - 메모리 다루는 데 오류 발생하여 잘못된 동작 하는 P/G 취약점 - 컴퓨터 보안과 프로그래밍에서는 프로세스가 데이터를 버퍼에 저장할 때, 프로그래머가 지정한 곳 외에 저장 허상 포인터 (Dangling pointer) - 컴퓨터 프로그래밍에서 적절한 타입의 유효 객체 가리키고 있지 않은 포인터로 인함 Null Pointer 역참조 - Null로 설정된 변수 주소 값 참조 시.. 2021. 3. 4.