본문 바로가기
IT License/정처기-4과목

2021 #정보처리기사 필기요약 #4-2. 프로그래밍 언어 활용

by 시뮝 2021. 3. 1.
728x90
2021년 NCS기반 정처기 필기입니다.

참고1. 노랑마킹은 시험에 나온 중요한 부분입니다.

참고2. 주황강조는 약어 혹은 중요한 내용입니다.

참고3. 회색마킹은 예시입니다. 


제 4과목 프로그래밍 언어 활용


기본문법 활용

데이터 타입(Data Type)

데이터 타입의 유형 (불문열 정부)

린(Boolean) / 자(Char) / 문자(String) / 수(Int) / 동 소수점(Float)

 

 

변수(Variable)

변수는 저장하고자 하는 어떠한 값이 있을 때, 그 값을 주기억장치에 기억하기 위한 공간이다.

변수 설정 규칙

  • 영문 대/소문자, 숫자, 밑줄('_'), 달러('$')만 작성 가능하다.
  • 첫 자리에는 숫자를 사용할 수 없다.
  • 공백을 사용할 수 없다.
  • 이미 사용되고 있는 예약어(for, if, while 등)의 경우에는 변수로 사용할 수 없다.

 

배열(Array)

배열은 같은 타입의 변수들로 이루어진 집합이다.

 

C,C++ 언어의 배열 선언

구분 선언 예시
초깃값이 없는 경우 타입 배열명[배열 수]; ex) int b[5];

배열 수는 5개이므로 5개의 공간이 잡히고 0으로 초기화된다.
b = [0,0,0,0,0]
초깃값이 있는 경우 타입 배열명[배열 수] = {초깃값}; ex) int b[9]={1,2,3};

배열 수는 9개이므로 9개의 공간이 잡히고, 초깃값은 1,2,3 세 개가 명시되어 있으므로 나머지 6개의 공간은 0으로 초기화된다.
b = [1,2,3,0,0,0,0,0,0]

 

 

연산자(Operator)

연산자는 프로그램 실행을 위해 연산을 표현하는 기호이다.

 

연산자 분류

산술 / 시프트 / 관계 / 논리 / 비트 / 대입 / 증감 / 삼항 연산자

 

연산자 세부 유형

구분 연산자 설명
비트 연산자 & 모두 1이면 1, 아니면 0
| 하나라도 1이면 1, 아니면 0
^ 서로 다르면 1, 아니면 0
~ 1이면 0으로, 0이면 1로 비트 반전
삼항 연산자 (조건식) ? a : b 조건식이 참일 경우 a 실행, 거짓일 경우 b 실행

 

 

명령문(Statement)

명령문은 프로그램을 구성하는 문장으로, 지시사항을 처리하는 단위이다.

 

명령문 세부 유형

구분 연산자
명령문 조건문 if 문
case/switch 문
반복문 while 문
for 문

 


언어특성 활용

절차적 프로그래밍 언어

  • 절차적(Procedural) 프로그래밍 언어는 프로시저 호출의 개념을 바탕으로 하고 있는 프로그래밍 언어이다.
  • 명령형 프로그래밍이라고도 불린다.

절차적 프로그래밍 언어 특징

  • 유지보수 용이
    (*객체지향과 비교하면 객체지향의 유지보수가 더 용이합니다.)
  • 같은 코드 재사용 가능
  • 흐름 파악 용이
  • 모듈화를 하거나 구조화 가능

절차적 프로그래밍 언어 종류

알골(ALGOL) / C언어 / 포트란(FORTRAN)

 

C언어

구분 설명
for 초깃값, 최종값, 증감 값을 지정하여 반복을 실행
scanf 값을 입력받는 함수
struct 구조체를 사용하여 데이터를 처리할 때 사용하는 키워드
abstract 자식 클래스에서 해당 추상 메서드를 반드시 구현하도록 강제하는 키워드

객체지향 프로그래밍 언어

객체지향(Object Oriented) 프로그래밍 언어는 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독림된 단위인 "객체" 중심의 프로그래밍 언어이다.

 

객체지행 프로그래밍 언어 기능

자료 추상화 / 상속 / 다중 상속 / 다형성 / 동적 바인딩 / 접근 제어자(Access Modifier)

 

객체지향 프로그래밍 언어 종류

C++ / C# / JAVA(자바) / Delphi(델파이)

 

JAVA의 접근 제어자

public / protected / default / private

허용범위 public protected default private
클래스 내부 O O O O
동일 패키지 O O O X
하위 패키지 O O X X
다른 패키지 O X X X

 

JAVA의 정수 데이터 타입

구분 타입 크기
논리형 boolean 1byte
문자형 char 2byte
정수형 byte 1byte
short 2byte
int 4byte
long 8byte
실수형 float 4byte
double 8byte

 

JAVA에서 대표적인 출력 함수

구분 설명
System.out.print 개행 없이 출력하는 함수
System.out.println 출력 후 개행하는 함수
System.out.printf C언어처럼 포맷을 지정하여 출력하는 함수

 


스크립트 언어

스크립트 언어는 소스 코드를 컴파일하지 않고도 실행할 수 있는 프로그래밍 언어이다.

 

스크립트 언어 특징

  • 빨리 배운다.
  • 쉽게 작성할 수 있다.

스크립트 언어 종류

PHP / Perl(펄) / Phython(파이썬) / Javascript(자바스크립트) / Bash(배시) / Basic(배이직)

 

 

PHP의 대표적인 연산자

구분 설명
@ 오류 억제 연산자
오류 메시지를 무시함
<> 값이 다름을 표현하는 연산자
=== 값도 같고 타입도 같은지 확인하는 연산자

 

Python 특징

구분 설명
파이썬 문법 들여쓰기를 사용하여 블록을 구분,
리스트, 문자열은 slice를 이용하여 요소를 가져올 수 있음
리스트[시작인덱스:종료인덱스:인덱스증가폭] 시작인덱스 생략 시 0으로 대체,
종료인덱스 생략 시 마지막 요소 인덱스 번호로 대체,
시작인덱스부터 종료인덱스 직전 인덱스까지 인덱스증가폭만큼 요소를 불러옴
문장[시작:종료인덱스] 시작인덱스부터 종료인덱스 직전 인덱스까지의 요소

 

Bash 쉘 스크립트에서 사용할 수 있는 제어문

if / for / while


선언형 언어

선언형(Declarative) 언어는 선언형 프로그래밍을 사용하여 해법을 정의하기보다는 문제를 설명하는 단어이다.

 

선언형 언어 기능 (함순익고 논사규질)

선언형 언어 유형 기능
수형 언어 수 함수 (Pure Function)
명 함수 (Anonymous Function)
계 함수 (Higher Order Function)
리형 언어 실 (Facts)
칙 (Rule)
문 (Question)

 

선언형 언어 종류

구분 종류 설명
함수형 언어 하스켈 (Haskell) 하스켈은 패턴 맞춤, 커링, 조건제시법, 가드, 연산자 정의 등의 기능이 존재하는 함수형 언어이다.
리스프 (LISP) 리스프는 수학 표기법을 나타내기 위한 목적으로 생성하고, 트리 자료구조, 가비지 콜렉션, 동적 자료형과 인터프리터와 같은 개념을 제시한다.
논리형 언어 프롤로그 (Prolog) 프롤로그는 논리형 언어로 논리식을 기반으로 객체 간의 관계에 관한 문제를 해결하기 위해 사용된다.
함수형 언어로 함수 호출 시 이름 혹은 연산자가 첫 번째로 위치하여 피연산자가 이어 위치하는 언어는 리스프(LISP)이다.
특수 분야 언어 SQL 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다.

 


라이브러리 활용

라이브러리(Library)

라이브러리란 필요할 때 찾아서 쓸 수 있도록 모듈화되어 제공되는 프로그램을 말한다.

 

라이브러리 구성

도움말 / 설치 파일 / 샘플 코드 등

 

라이브러리 종류

표준 라이브러리 / 외부 라이브러리

 

표준 라이브러리 기능

입출력 / 문자열 / 시간 처리 / 수학 관련

 


데이터 입출력(Data Input/Output)

데이터 입출력은 프로그램으로 데이터가 입력 및 출력되도록 하기 위한 기법이다.

 

데이터 입출력 구성

표준 입력 / 표준 출력 / 표준 오류

 


예외처리(Exception Handling)

예외 처리는 오류가 발생 시 오류를 그대로 실행시키지 않고 오류에 대응하는 방법으로 처리하는 프로그래밍 기법이다.

 

예외 처리 구성

throw / try / catch

 

예외 처리 사용 예시

try {
    if(예외조건)
        throw 예외객체;
} 
catch (타입 예외객체) {
    예외처리;
}

프로토타입(Prototype)

프로토타입은 속성과 메서드를 다른 클래스의 인스턴스 또는 빈 객체에 추가하는 작업을 덜 수 있는 프로그래밍 스타일이다.

 

프로토타입 구성

복제(Cloning) / 객체 생성 / 마스터 객체(Master Object)

 

 


 

 

 

 

 

 

728x90

댓글