플랫폼 독립이란 무엇입니까? 크로스 플랫폼과 '플랫폼 독립성'은 동일합니까?


11

플랫폼 독립성은 무엇을 의미합니까? 언어 플랫폼을 독립적으로 부르는 기준은 무엇입니까? 크로스 플랫폼과 '플랫폼 독립성'은 동일합니까?

(이것은 자기 연구에 대한 질문 일지 모르지만 Stack overflow에서 전문가의 의견을 듣고 싶습니다. 인터넷에 관한 많은 정의와 견해가 있으며 그 중 일부는 혼란 스럽습니다)


"플랫폼 독립"이라는 용어는 언어 자체가 아닌 특정 프로그램 제품에 적용하기에 더 적합하다고 생각합니다.

3
개인적으로 각 플랫폼의 JVM은 모든 Java 프로그램에 대해 동일한 지침 및 코드 세트 (일반적인 "any")를 지원해야하기 때문에 개인적으로 Java를 플랫폼과 독립적이라고 생각합니다. 반면에 C #은 Mono와 .NET에서 모두 실행되지만 같은 수준이 아니라는 점에서 크로스 플랫폼으로 간주됩니다.

1
@Randolph는 많은 닷넷 인프라가 모든 UI와 같은 창에 피곤하다는 것을 잊어 버린 것 같습니다. Java의 플랫폼 독립성을 dotnet + mono와 비교할 수는 없습니다. 여기에 표준의 일부라고 불리는 많은 부분이 있습니다. 유일한 문제는 Windows에서만 작동한다는 것입니다. pinvoke가 도처에 흩어져 있으며 휴대용으로 사용할 수는 없습니다.
mP01

플랫폼 간 독립성과 플랫폼 독립성의 차이점을 설명해 주시겠습니까?

@ mP-나는 그것을 잊지 않았다. 사실, 나는 대부분의 UI가 Windows와 관련되어 있다는 사실 때문에 "동일하지 않다"고 말했을 때 매우 명확하다고 생각했습니다. 주의 깊게 읽으면 Java와 .NET 및 Mono를 비교하지 않았습니다 .Java는 플랫폼 독립적이며 .NET / Mono는 크로스 플랫폼입니다. 그것이 비교라면, 사과와 배도 동등해야한다는 것을 의미합니다. 몸값을 내고 다니면 용서해주십시오.하지만 입에 들어간 단어는 감사하지 않습니다.

답변:


8

플랫폼 독립성과 크로스 플랫폼이 동일하지 않습니다. 이해하기 위해 다음 설명을 살펴 보겠습니다.


크로스 플랫폼 소프트웨어


크로스 플랫폼 또는 멀티 플랫폼은 여러 컴퓨터 플랫폼에서 구현되고 상호 운용되는 컴퓨터 소프트웨어 또는 컴퓨팅 방법 및 개념에 부여되는 속성입니다.

두 가지 유형으로 나눌 수 있습니다.

  1. 하나는 지원하는 각 플랫폼마다 개별 건물 또는 컴파일이 필요합니다.
  2. 다른 하나는 특별한 준비없이 모든 플랫폼에서 직접 실행될 수 있습니다. 예를 들어, 통역사 또는 런타임 패키지가 모든 플랫폼의 공통 또는 표준 구성 요소 인 해석 된 언어로 작성된 소프트웨어 또는 사전 컴파일 된 휴대용 바이트 코드입니다.

다중 플랫폼 또는 교차 플랫폼 소프트웨어 : 소프트웨어는 둘 이상의 플랫폼 (운영 체제)에서 사용할 수 있습니다. 이것은 두 가지를 의미 할 수 있습니다-

  1. 이 소프트웨어는 다른 플랫폼을위한 다른 빌드 / 애플리케이션과 함께 제공됩니다 [Windows의 경우 다른 패키지, Linux의 경우이 패키지].
  2. 소프트웨어는 여러 플랫폼에서 동일한 다운로드로 실행될 수 있지만 전부는 아닙니다.

플랫폼 독립적


플랫폼 독립적 인 소프트웨어는 단일 플랫폼의 특정 기능에 의존하지 않으며, 여러 플랫폼을 처리 할 수 ​​있도록 해당 특수 기능을 처리합니다.

플랫폼 독립적 인 소프트웨어 : 엄격한 의미의 플랫폼 독립적 인 소프트웨어 –

  • 어디에나 설치하고 어디에서나 실행할 수 있습니다. 위치는 중요하지 않습니다. 플랫폼마다 다른 설치 프로그램을 사용할 수 있지만 이는 사용자 편의를위한 것입니다. 소스 코드에서 직접 설치할 수있는 옵션이 있습니다.




다른 소스에서 집계


@ Shekhhar : 우연히도 당신이 물건을 가져간 곳 과 동일한 출처 (Wikipedia AND openalternatives.org/site/2008/08/… )를 누르십시오 . 대단히 감사합니다.

@CSharpLearner 내가 게시물의 맨 아래에 언급

0

내 "장 정의"는 Shekhar가 말한 것과 일치합니다. multiplatform == 많은 호환되지 않는 플랫폼을 빌드하고 플랫폼 독립적 ==는 플랫폼에 관계없이 작동합니다.

물론 platform == 운영 체제 인 경우, 운영 체제에 Python 인터프리터가있는 한 파이썬 스크립트는 "플랫폼 독립적"일 것입니다.

어떤면에서 스크립트 플랫폼 Python입니다. 결국 플랫폼은 일부 기능을 추상화하는 소프트웨어 및 하드웨어의 표준 스택입니다.

그래도 내 요점은 확실하지 않습니다.


0

에 약간 확장 Shekhar_Pro의 대답은 ,

Platform Independent는 모든 플랫폼을 실행합니다. 반드시 다시 컴파일하거나 다시 작성하지 않고도 Windows, Mac 및 Linux에서 실행할 수있는 플랫폼 별 항목이없는 Java 또는 Python 응용 프로그램을 생각해보십시오.

플랫폼 간 제품은 완전히 다른 물고기 주전자입니다. 크로스 플랫폼 제품의 일부 측면이 공통 요구 사항과 소스 코드 (예 : C로 구현 된 일부 수학 함수)를 공유 할 수있는 경우 각 제품 버전은 특정 플랫폼에 맞게 작성되고 컴파일됩니다. 예를 들어, Mac, Windows, Linux, BeOS, Android 등에서 실행되는 다른 버전이있는 Mozilla Firefox를 생각해보십시오. 각 버전은 비슷하며 호환 가능한 데이터 구조를 가질 수도 있지만 각 버전은 독립적으로 개발되며 종종 완전히 다른 프로그래밍 언어 및 API, 다른 버전 번호 등을 사용하여 작성됩니다.


-1

플랫폼 독립성은 하나의 플랫폼 또는 운영 체제에서 작성, 테스트 및 기능을 수행하는 프로그램이 다른 플랫폼 / OS에서 수정되지 않은 상태로 작동 함을 의미합니다. 당연히 다른 디렉토리에 복사 된 경우 일부 작은 구성 파일에는 고정 경로가 필요하지만 작동하지 않는 경로가 필요할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.