1. 라이브러리의 개념
라이브러리는 프로그램을 효율적으로 개발할 수 있도록 자주 사용하는 함수나 데이터들을 미리 만들어 모아 놓은 집합체이다.
2. C언어의 대표적인 표준 라이브러리
C언어는 라이브러리를 헤더 파일로 제공하는데, 각 헤더 파일에는 응용 프로그램 개발에 필요한 함수들이 정리되어 있다.
- 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 등
3. Java의 대표적인 표준 라이브러리
Java는 라이브러리를 패키지에 포함하여 제공하는데, 각 패키지에는 Java 응용 프로그램 개발에 필요한 메소드들이 클래스로 정리되어 있다.
java.lang
- Java에 기본적으로 필요한 인터페이스, 자료형, 예외 처리 등에 관련된 기능을 제공한다.
- 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
- 사용자 인터페이스(UI)와 관련된 기능을 제공한다.
- 주요 클래스 : Frame, Panel, Dialog, Button, Checkbox 등
4. Python의 대표적인 표준 라이브러리
Python은 Java와 동일하게 라이브러리를 패키지로 제공하며, 패키지에는 응용 프로그램 개발에 필요한 클래스와 메소드들이 정의되어 있다.
- Python에서 라이브러리를 사용하려면 ‘import random’ 과 같이 선언하고, 사용할 때는 마침표(.)로 구분하여 ‘random.choice()’ 와 같이 사용한다.
내장함수
- Python에 기본적인 인터페이스로, import문이나 클래스명 없이도 사용할 수 있다.
- 주요 메소드 : abs(), slice(), pow(), print() 등
os
- 운영체제와 상호 작용하기 위한 기능을 제공한다.
- 주요 메소드 : getcwd(), chdir(), system() 등
re
- 고급 문자열 처리를 위한 기능을 제공한다.
- 주요 메소드 : findall(), sub() 등
math
- 복잡한 수학 연산을 위한 기능을 제공한다.
- 주요 메소드 : cos(), log() 등
random
- 무작위 선택을 위한 기능을 제공한다.
- 주요 메소드 : choice(), sample(), random(), randrange() 등
statistics
- 통계값 산출을 위한 기능을 제공한다.
- 주요 메소드 : mean(), median(), variance() 등
datetime
- 날짜와 시간 조작을 위한 기능을 제공한다.
- 주요 메소드 : today(), date(), strftime() 등