3-1. 문자열
- 프로그래밍 언어마다 문자열을 저장하는 자료형이 다르므로, 문자열 하나 당 바이트 값은 항상 동일하다고 말할 수 없다.
- 유니코드 :
- 유니코드 협회가 제정한 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 설계된 산업 표준.
- 이 표준에는 ISO 10646 문자 집합, 문자 인코딩, 문자 정보 데이터베이스, 문자를 다루기 위한 알고리즘 등을 포함하고 있다.
- 목적 : 현존하는 문자 이코딩 방법을 모두 유니코드로 교체하는 것.
- 인코딩(부호화)
- 어떤 문자나 기호를 컴퓨터가 이용할 수 있는 신호로 만드는 것.
- 인코딩과 디코딩의 기준을 문자열 세트 또는 문자셋(charset)이라 함.
- 문자셋의 국제 표준이 유니코드.
- ASCII
- 영문 알파벳을 사용하는 대표적인 문자 인코딩.
- 7 비트로 모든 영어 알파벳을 표현 가능.
- 유니코드는 ASCII를 확장한 형태.
- UTF-8 vs UTF-16
- 인코딩 방식에 따라 나뉨.
- UTF-8 :
- 가변 길이 인코딩 : 유니코드 한 문자를 나타내기 위해 1 byte(= 8 bits)에서 4 bytes까지 사용
- 바이트 순서가 고정됨.
- UTF-16 :
- 코드 그대로 바이트로 표현 가능, 바이트 순서가 다양함
3-2. 그래픽
크게 비트맵(Bitmap)과 벡터(Vector)로 분류.
비트맵(래스터) | 벡터 | |
기반 기술 | 픽셀 기반 | 수학적으로 계산된 Shape 기반 |
특징 | 사진과 같이 색상의 조합이 다양한 이미지에 적합 | 로고, 일러스트와 같이 제품에 적용되는 이미지에 적합 |
확대 | 확대에 적합하지 않음, 보다 큰 사이즈의 이미지가 필요할 때 사용하려는 크기 이상으로 생성하거나 스캔해야 함 | 품질 저하 없이 모든 크기로 확대 가능하며, 해상도의 영향을 받지 않음 |
크기(dimension)에 따른 파일 용량(file size) | 큰 크기의 이미지는, 큰 파일 사이즈를 가짐 | 큰 크기의 벡터 그래픽은 작은 파일 사이즈를 유지할 수 있음 |
상호 변환 | 이미지의 복잡도에 따라 벡터로 변환하는 것에 오랜 시간이 걸림 | 쉽게 래스터 이미지로 변환 가능 |
대표적인 파일 포맷 | jpg, gif, png, bmp, psd | svg, ai |
웹에서의 사용성 | jpg, gif, png 등이 널리 쓰임 | svg 포맷은 현대의 브라우저에서 대부분 지원 |
'코딩' 카테고리의 다른 글
GraphQL (0) | 2022.08.02 |
---|---|
컴퓨터 공학 기초 4 (0) | 2022.08.01 |
컴퓨터 공학 기초 2 (0) | 2022.08.01 |
컴퓨터 공학 기초 1 (0) | 2022.08.01 |
[React] 코드 분할(Code spliting) (0) | 2022.07.31 |