[정처기 필기] 「4」 | 프로그래밍 언어 활용 - (2.7) 스크립트 언어, 라이브러리, 예외 처리

728x90

[정처기 필기] 4」 | 프로그래밍 언어 활용 - (2.7) 스크립트 언어, 라이브러리, 예외 처리

「1」 소프트웨어 설계

「2」 소프트웨어 개발

「3」 데이터베이스 구축

> 「4」  프로그래밍 언어 활용

- 서버 프로그램 구현, > 프로그래밍 언어 활용, 응용 SW 기초 기술 활용

「5」  정보시스템 구축 관리

 

1 데이터 타입

2 변수

3 연산자

4 데이터 입 / 출력

5 제어문

6 반복문

7 배열과 문자열

8 포인터

9 구조체

10 Python의 기초

11 Python의 활용

> 12 스크립트 언어

> 13 라이브러리

> 14 예외 처리

12. 스크립트 언어

스크립트 언어의 개요

 

HTML문서 안직접 프로그래밍 언어삽입하여 사용, 별도의 번역기가 소스를 분석하여 동작하게 하는 언어

 

- 게시판 입력, 상품 검색, 회원 가입데이터베이스 처리 작업을 수행

- 클라이언트의 웹 브라우저에서 해석되어 실행되는 클라이언트용 스크립트언어, 서버에서 해석되어 실행된 후 결과만 클라이언트로 보내는 서버용 스크립트 언어

- 클라이언트용 스크립트 언어 : 자바 스크립트(JavaScript), VB 스크립트(Visual Basic Script)

- 서버용 스크립트 언어 : ASP, JSP, PHP, 파이썬

 

스크립트 언어의 장 / 단점

 

- 컴파일 없이 바로 실행, 결과를 바로 확인

- 배우고 코딩하기 쉬움

- 개발 시간이 짧음

- 소스 코드를 쉽고 빠르게 수정

- 코드를 읽고 해석하므로 실행 속도 느림

- 런타임 오류 많이 발생

 

스크립트 언어의 종류

 

자바스크립트(JavaScript)

: 웹 페이지의 동작을 제어하는 데 사용, 클라이언트용 스크립트 언어

: 클래스 기반의 객체 상속을 지원, 객체지향 프로그래밍 언어의 성격

: Prototype Link, Prototype Object를 통해 프로토타입 개념을 활용

 

VB 스크립트(Visual Basic Script)

: 마이크로소프트 사에서 자바스크립트에 대응하기 위한 언어

: Active X를 사용하여 마이크로소프트 사 애플리케이션을 컨트롤

 

ASP(Active Server Page)

: 마이크로소프트 사에서 만든 서버 측에서 동적으로 수행되는 페이지를 만들기 위한 언어

: Window 계열에서만 수행 가능한 언어

 

JSP(Java Server Page)

: JAVA로 만들어진 서버용 스크립트, 다양한 운영체제 사용 가능

 

PHP(Professional Hypertext Preprocessor)

: 서버용 스크립트 언어, Linux, Unix, Windows 운영체제에서 사용 가능

: C, Java 등 문법이 유사, 배우기 쉬움, 웹 페이지 제작

 

Python

: 귀도 반 로섬(Guido van Rossum)이 발표한 대화형 인터프리터 언어

: 객체지향 기능 지원, 플랫폼에 독립적, 문법이 간단

 

쉘 스크립트

: 유닉스 / 리눅스 계열쉘(Shell)에서 사용되는 명령어들의 조합으로 구성

: 컴파일 단계 없어 실행 속도 빠름

: 저장시 확장자로 '.sh' 붙음

: 종류 - Bash Shell, Bourne Shell, C Shell, Korn Shell

: 사용되는 제어문

  - 선택형 : if, case

  - 반복형 : for, while, until

 

Basic

: 절차지향 기능을 지원, 대화형 인터프리터 언어, 초보자도 쉽게 사용하는 문법 구조

13. 라이브러리

라이브러리의 개념

 

프로그램을 효율적으로 개발할 수 있도록 자주 사용하는 함수, 데이터미리 만들어 모아 놓은 집합체

 

- 반복적인 코드 작성을 피하기 위해, 언제든지 호출하여 사용

- 도움말, 설치 파일, 샘플 코드 등 제공

- 모듈과 패키지 모두 의미

  : 모듈 - 하나의 기능한 개의 파일로 구현된 형태

  : 패키지 - 하나의 패키지 폴더 안에 여러 개의 모듈을 모아 놓은 형태

- 표준 라이브러리, 외부 라이브러리

  : 표준 라이브러리 - 기본적으로 포함되어 있는 라이브러리, 여러 종류의 모듈이나 패키지 형태

  : 외부 라이브러리 - 개발자들이 필요한 기능들을 만들어 인터넷 등에 공유, 다운로드하여 설치사용

 

C언어의 대표적인 표준 라이브러리

 

헤더 파일로 제공, 각 헤더 파일에 응용 프로그램 개발에 필요한 함수들 정리

 

- '#include <stdio.h>'와 같이 include문을 이용해 선언 후 사용

 

stdio.h : 데이터의 입 / 출력에 사용되는 기능 제공, printf, scanf, fprintf, fscanf, fclose, fopen 함수

math.h : 수학 함수 제공, sqrt, pow, abs 함수

string.h : 문자열 처리에 사용되는 기능 제공, strlen, strcpy, strcmp 함수

stdlib.h : 자료형 변환, 난수 발생, 메모리 할당에 사용되는 기능 제공, atoi, atof, srand, rand, malloc, free 함수

time.h : 시간 처리에 사용되는 기능 제공. time, clock 함수

 

JAVA의 대표적인 표준 라이브러리

 

패키지에 포함하여 제공, 각 패키지에 JAVA 응용 프로그램 개발에 필요한 함수들이 클래스로 정리

 

- 'import java.util'과 같이 import문을 이용해 선언 후 사용

- 클래스와 메소드를 마침표(.)로 구분하여 사용

 

java.lang 

: 기본적으로 필요한 인터페이스, 자료형, 예외 처리 등 관련된 기능 제공, import문 없어도 사용

: String, System, Process, Runtime, Math, Error 클래스

 

java.util

: 날짜 처리, 난수 발생, 복잡한 문자열 처리 등 관련된 기능 제공

: Date, Calender, Random, StringToKenizer 클래스

 

java.io

: 파일 입 / 출력과 관련된 기능 및 프로토콜 제공

: InputStream, OutputStream, Reader, Writer 클래스

 

java.net

: 네트워크와 관련된 기능 제공

: Socket, URL, InetAddress 클래스

 

java.awt

: 사용자 인터페이스와 관련된 기능 제공

: Frame, Panel, Dialog, Button, Checkbox 클래스

14. 예외 처리

예외 처리의 개요

 

정상적인 실행을 방해하는 조건, 상태예외(문법 오류는 예외 아님)라고 하며, 프로그래머가 대비하여 작성해 놓은 처리 루틴을 수행하도록 하는 것

 

- 일반적인 처리 루틴은 프로그램 종료, 로그 남기기

- C++, Ada, JAVA, JavaScript와 같은 언어는 예외 처리 기능이 내장, 그 외 언어조건문을 이용해 예외 처리 루틴 작성

- 컴퓨터 하드웨어 문제, 운영체제 설정 실수, 라이브러리 손상, 사용자의 입력 실수, 받아들일 수 없는 연산, 할당 못하는 기억장치 접근

 

JAVA의 예외 처리

 

잘못된 동작, 결과에 영향 주는 예외객체로 취급, java.lang 패키지에서 제공

 

- try ~ catch 문 이용

- try 블록 코드 수행하다가 예외가 발생하면 예외를 처리하는 catch 블록으로 이동하여 예외 처리 코드 수행, 이후 코드는 실행되지 않음

- catch 블록에서 선언한 변수는 해당 블록에서만 유효

- 중첩된 try ~ catch 문 가능

- 실행 코드가 한 줄이라도 중괄호 생략 불가

 

try {
  예외가 발생할 가능성이 있는 코드;
}
catch (예외객체1 매개변수) {
  예외객체1에 해당하는 예외 발생 시 처리 코드;
}
catch (예외객체n 매개변수) {
  예외객체n에 해당하는 예외 발생 시 처리 코드;
}
catch (Exception 매개변수) {
  예외객체1 ~ n에 해당하지 않는 예외 발생 시 처리 코드;
}
finally {
  예외 발생 여부와 관계없이 무조건 처리되는 코드;
}

 

 

- 예외 발생 : try문 > 해당 예외 catch문 > finally문

- 예외가 발생하지 않은 경우 : try문 > finally문

- finally문무조건 수행되는 블록으로 생략 가능

 

JAVA의 주요 예외 객체

 

ClassNotFoundException : 클래스를 찾지 못한 경우

NoSuchMethodException : 메서드를 찾지 못한 경우

FileNotFoundException : 파일 찾지 못한 경우

InterruptedIOException : 입 / 출력 처리가 중단된 경우

ArithmeticException : 0으로 나누는 등 산술 연산에 대한 예외 발생한 경우

IllegalArgumentException : 잘못된 인자 전달한 경우

NumberFormatException : 숫자 형식으로 변환할 수 없는 문자열숫자 형식으로 변환한 경우

ArrayIndexOutOfBoundsException : 배열의 범위를 벗어난 접근을 시도한 경우

NegativeArraySizeException : 0보다 작은 값으로 배열 크기 지정한 경우

NullPointerException : 존재하지 않는 객체를 참조한 경우

 

 

 

 

 

 

 

 

출처 | <시나공> 정보처리기사 필기 2024 기본서 (길벗알앤디)

 

728x90