접근성(Accessibility)이란?
웹 접근성은 장애가 있는 사용자를 포함한 모든 사람이 웹 콘텐츠를 사용할 수 있도록 만드는 것입니다. 정보처리기사 시험에서는 WCAG 2.1 준수 기준, WAI-ARIA 역할과 속성, 국제화(i18n) 구현 방법이 핵심 출제 범위입니다.
WCAG 2.1(Web Content Accessibility Guidelines)
W3C의 웹 콘텐츠 접근성 지침. 4가지 원칙(POUR)으로 구성됩니다.
- Perceivable(인식 가능): 텍스트 대안(alt 속성), 자막, 색상만으로 정보 전달 금지
- Operable(운용 가능): 키보드만으로 모든 기능 이용 가능, 충분한 시간 제공
- Understandable(이해 가능): 읽기 쉬운 콘텐츠, 예측 가능한 동작, 입력 오류 방지
- Robust(견고함): 다양한 보조 기술과 호환
적합성 수준: A(최소), AA(권장), AAA(최상). 국내 웹 접근성 인증마크는 WCAG 2.1 AA 기준 적용
WAI-ARIA(Accessible Rich Internet Applications)
동적 콘텐츠와 복잡한 UI 컨트롤에 의미론적 정보를 추가하는 W3C 표준입니다.
- 역할(Role): 요소의 역할 정의. role=”button”, role=”navigation”, role=”dialog”
- 속성(Property): 요소의 특성. aria-label(접근 가능한 이름), aria-required, aria-expanded
- 상태(State): 동적 변화. aria-hidden, aria-disabled, aria-checked
- 라이브 리전(Live Region): 동적 콘텐츠 변경 알림. aria-live=”polite/assertive”
국제화(i18n)와 현지화(l10n)
- i18n(Internationalization): 소프트웨어를 다양한 언어/지역에 적응할 수 있도록 설계하는 과정. 18글자 축약(Internationalization)
- l10n(Localization): 특정 지역/언어에 맞게 실제로 번역하고 적응시키는 과정
- Unicode와 UTF-8: 다국어 문자 지원의 기반. BOM(Byte Order Mark) 처리
- RTL(Right-to-Left): 아랍어, 히브리어 등 오른쪽에서 왼쪽으로 읽는 언어 지원. CSS logical properties
- 날짜/숫자 형식: 지역별 날짜(MM/DD/YYYY vs DD/MM/YYYY), 숫자 구분자, 통화 형식
다국어 처리 구현
- 번역 파일: JSON/PO 형식의 키-값 번역 파일. 변수 보간, 복수형 처리
- 라이브러리: react-i18next(React), vue-i18n(Vue), Angular i18n
- ICU 메시지 형식: 복수형, 성별, 선택 처리를 위한 표준 형식
정보처리기사 기출 핵심 정리
- WCAG 4원칙(POUR): Perceivable·Operable·Understandable·Robust
- 국내 웹 접근성 인증: WCAG 2.1 AA 수준 기준
- WAI-ARIA: 역할(role), 속성(aria-label), 상태(aria-hidden)
- i18n = 다국어 설계, l10n = 특정 지역 현지화
- RTL = 오른쪽→왼쪽 언어(아랍어·히브리어)