문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 크로스 플랫폼 (문서 편집) [[분류:기술]][[분류:컴퓨터 공학]] [목차] == 개요 == [[소프트웨어]]가 둘 이상의 [[플랫폼]]을 지원하는것을 뜻하는 용어. 크로스 플랫폼을 지원하기 위해서는 다음과 같은 방법들이 사용된다. * [[Java]], [[닷넷]]과 같은 여러 플랫폼이 지원되는 실행환경에서 작동하도록 개발 * 타깃 플랫폼간의 차이점을 고려하여 [[컴파일]]이 가능하도록 소스코드 개발 후 플랫폼 별로 각각 컴파일 (이 경우 GUI 등 플랫폼마다 완전히 상이한 기능을 공통으로 제공하기 위하여 [[Qt(프레임워크)|Qt]]와 같은 크로스 플랫폼 라이브러리를 사용하기도 한다. [[GUI 라이브러리#크로스플랫폼]] 문서 참조) == 예시 == * 웹 사이트 - 웹 표준을 따를 시. 심지어는 [[어도비 플래시]] 같이 웹 표준이 아닌 플러그인들도 대부분의 브라우저나 OS에서 거의 동일하게 실행이 가능하다. 오히려 HTML5보다도 규격화 되어 있다. 이는 플러그인 제작사만이 관여하기 때문에 여러 규격이 난립할 가능성이 적기 때문이다. * 대부분의 인터프리터/JIT 언어들: 미리 기계어로 번역하는 AOT 타입의 언어들과는 다르게 원본 코드나 바이트코드를 기계어로 번역해서 실행하기 때문에 해당 플랫폼에 대응되는 런타임환경만 구축되어있다면 실행하는게 가능해서 AOT타입의 언어들과 구분되는 장점중 하나이다.최근의 대부분의 크로스플랫폼 프로젝트들은 Java나 C#등의 JIT기반인 언어를 많이 채용한다. * [[LLVM]]/[[Clang]]: . 윈도우, 리눅스, 맥을 모두 지원한다. * [[Electron(프레임워크)|일렉트론]] : UI는 HTML, 프로그램은 JS로 구현한다.--UWP의 JS 앱이 생각난다면 기분탓이다-- [[Sublime Text]], [[Atom(에디터)]], [[Visual Studio Code]] 등. 이 프로그램들은 일렉트론 프레임워크를 통해 개발되었다. * [[Ruby]], [[Python]], [[Node.js]]: 기타 스크립트 언어들로 작성한 프로그램들[* 다만 특정 OS에만 있는 기능을 사용해서 이에 의존성이 생기는 경우도 있다.] * [[안드로이드 스튜디오]]: 윈도우, 리눅스, 맥을 모두 지원한다. * [[유니티(게임 엔진)|Unity]]: 역시 크로스 플랫폼을 지원하는 게임 엔진이며 모바일 플랫폼 외에 다수 플랫폼 지원[* 보통 UI를 손보긴 해야 한다.] * [[Flutter(프레임워크)|Flutter]], [[React Native]], [[Xamarin]] 등의 모바일 크로스플랫폼 프레임워크 * [[Qt(프레임워크)]]: 윈도우, 리눅스, 안드로이드, iOS 등의 대부분의 메이저 OS를 동일한 코드 (C++, QML)로 네이티브 기반의 개발이 가능하며 C++ 크로스 플랫폼의 최강자이다. * 어도비 에어: [[플래시]]와 [[HTML5]]를 사용하는 앱 개발 도구. 안드로이드, iOS, PC 지원 * XAMPP: 윈도우, 리눅스, 맥에서 모두 실행할 수 있는 [[PHP]] 서버 툴이다. * 오피스 스위트: [[오픈오피스]], [[리브레오피스]], WPS Office[* 중국산 오피스 소프트웨어.] * 외부 연결 장치 드라이버: [[프린터]], [[복합기]], 외장형 블루레이 디스크 등. 이 제품들은 사용자가 [[Microsoft Windows|윈도우즈]]에만 연결하리란 법이 없다. [[macOS]]나 [[Linux|리눅스]]에 연결할 수도 있다. 따라서 제조사들은 설치 디스켓에 [[Microsoft Windows|윈도우즈용]], [[macOS|맥용]], [[Linux|리눅스용]] 드라이버을 같이 담아 제공하거나 회사 홈페이지에 각각의 운영체제용 드라이버들을 다 같이 다운받을 수 있게 한다. * 그래픽 및 이미지 편집: [[김프]] * [[미디어 플레이어]]: [[VLC]], [[MPlayer]] * 압축 프로그램: [[7-Zip]] * 기타 [[Linux|리눅스발]] [[GNU]] 제품: 위의 김프, gcc, Vim, MPlayer 등은 원래 리눅스용으로 먼저 개발한 걸 기반으로 [[Microsoft Windows|윈도우즈]]와 [[macOS|맥]]에서도 돌아갈 수 있도록 크로스 플랫폼으로 다시 만든 것들이다. 리눅스는 태생부터 [[GNU]]를 표방한 운영체제다. 따라서 리눅스에서 돌아가는 것들은 [[GNU 일반 공중 사용 허가서|누구나 자유롭게 수정하고 배포할 수가 있다.]] 바로 이때문에 리눅스용으로 만든 제품을 윈도우즈나 맥에서도 돌아갈 수 있도록 [[마개조|마개조(!!!)]]하는 경우가 엄청 많은 것이다. 무료로 내려받아 사용할 수 있는 크로스 플랫폼 중 리눅스발 GNU 또는 오픈소스 제품이 압도적으로 많은 이유가 이 때문이다. == [[크로스 플레이]] == 온라인 비디오 게임에서 서로 다른 기종(플랫폼)의 유저가 동시에 플레이할 수 있는 것. 자세한 내용은 [[크로스 플레이]] 문서 참조.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기