차이점

이 페이지의 선택한 이전 버전과 현재 버전 사이의 차이점을 보여줍니다.

차이 보기로 연결

상위호환성 [2011-09-05 09:12] (현재)
lifthrasiir 새로 만듦
줄 1: 줄 1:
 +====== 상위 호환성 ======
  
 +[[소프트웨어]] [[호환성]]의 한 종류. 앞으로 나올 소프트웨어에서 만들어진 자료나 [[파일포맷]] 등을 현재의 소프트웨어에서 문제 없이 읽을 수 있다는 보장을 뜻하며, [[하위호환성]]의 반댓말이다.
 +
 +이게 가능하려면 현재의 소프트웨어 자체가 충분히 일반적으로 만들어져서 나중 버전에서 추가될 기능을 어떻게 무시하거나 적절히 처리해야 할 지를 결정해야 하는데, 보통 엄청나게 어렵다. 미래의 일이다 보니 일반화를 어느 정도 해야 할 지 감을 잡기 힘들 뿐만 아니라, 그렇게 일반화를 한 게 쓸모가 있다는 보장도 쉽지 않기 때문이다. 종종 상위 호환성을 위해 만들어지 않은 소프트웨어가 확장되면서 상위 호환성을 어거지로 끼워 넣는 경우가 종종 있는데, 보통 문제가 생기는 게 태반이다(특히 하위 버전에서 "수정"을 했을 때 상위 버전에서 깨지지 않는다는 보장이 없다). 이 때문에 하위 호환성과는 달리 상위 호환성은 흔히 시도하기 어려운 보장이기도 하다.
 +
 +이런 모든 문제를 극복하고 극강의 상위 호환성을 확보한 대표적인 예로 [[HTML]]이 있다. 옛날에 만든 HTML 문서를 현재의 [[웹브라우저]]에서 아무 무리 없이 읽을 수 있을 뿐만 아니라, 몇 가지 주의만 한다면 **현재의 HTML 문서를 옛날의 웹 브라우저에서 아무 무리 없이 읽을 수도 있다**. 이는 HTML이 [[웹접근성]]을 매우 강력하게 권장하면서 생긴 부수 효과이긴 하지만 그냥 구조화되지 않은 태그로 이루어진(그래서 "tag soup"이라고도 불렸던) HTML의 태생과도 어느 정도 연관이 있다고 할 수 있다. 모르는 태그는 무시할 수 있으니까.
 +
 +===== 좋은 예 =====
 +
 +  * [[HTML]]
 +  * [[PNG]] (다만 실제로 쓸 일은 많지 않았다)
 +
 +===== 나쁜 예 =====
 +
 +  * [[VFAT]]은 기존의 [[FAT16]]에 [[유니코드]] 긴 파일 이름을 적절히 끼워 넣기 위해 보통의 FAT 구현이 인식할 수 없는 파일 이름을 사용한다. 그러나 긴 파일 이름을 모르는 기존의 [[디스크검사]] 프로그램을 쓰면 긴 이름이 사라지는 문제가 있었다.
 +  * [[HFS플러스]] 파일 시스템은 [[HFS]] 파일 시스템만을 지원하는 시스템을 위해 HFS 파티션으로도 보이도록 설계되어 있다. 그러나 그렇다고 HFS+ 파티션 안에 있는 파일을 읽을 수 있다는 건 아니다(...).
 +
 +{{tag>소프트웨어}}

도쿠위키DokuWiki-custom(rev 9085d92e02)을 씁니다.
마지막 수정 2011-09-05 09:12 | 작성자 lifthrasiir