Platform bağımsızlığı nedir? Platformlar arası ve 'platform bağımsızlığı' aynı mıdır?


11

Platform bağımsızlığı gerçekten ne anlama geliyor? Bir dil platformuna bağımsız deme kriteri nedir? Platformlar arası ve 'platform bağımsızlığı' aynı mıdır?

(Bu kendi kendine çalışma için bir soru olabilir, ancak Stack overflow uzmanlarından duymak istiyorum. Interenet hakkında birçok tanım ve görüş var ve bazıları kafa karıştırıcı)


"Platforma bağımlı" teriminin, dilin kendisi için değil, belirli program ürünlerine uygulanması için daha uygun olduğunu düşünüyorum.

3
Ben şahsen Java'yı platformdan bağımsız olarak görüyorum, çünkü her platformdaki JVM herhangi bir Java programı için aynı komutları ve kodu desteklemelidir ("herhangi bir" genel değeri için). Öte yandan, C # hem Mono hem de .NET üzerinde çalıştığı için platformlar arası kabul edilir, ancak aynı derecede değil.

1
@Randolph, dotnet altyapısının çoğunun pencerelere yorulduğunu unutuyorsunuz - örneğin tüm ui şeyler. Java'nın platform bağımsızlığını dotnet + mono ile karşılaştıramazsınız, hatta yakın değildir. Standartın bir parçası olarak adlandırılan çok fazla parça var, tek sorun Windows üzerinde çalışıyorlar. Pinvoke her yere dağılmış ve kullanımı taşınabilir olmayacak unutmayın.
mP01

Platformlar arası ve platform bağımsızlığı arasındaki farkı açıklar mısınız?

mP - Bunu hiç unutmadım. Aslında, UI'nin çoğunun Windows'a bağlı olması nedeniyle "aynı derecede değil" dediğimde oldukça net olduğumu düşündüm. Java'yı .NET ve Mono ile karşılaştırmıyordum, dikkatlice okursanız: Java'nın platformdan bağımsız olduğunu ve .NET / Mono'nun platformlar arası olduğunu söyledim. Bu bir karşılaştırma ise, sanırım elma ve armut da eşdeğer olmalı demektir. Rütbe olarak karşımıza çıkarsam beni affet, ama ağzımın içine konulan kelimeleri takdir etmiyorum.

Yanıtlar:


8

Hiçbir Platform Bağımsızlığı ve Çapraz platform aynı değildir. anlamak için aşağıdaki açıklamalara bir göz atalım.


Çapraz platform yazılımı


çapraz platform veya çoklu platform, birden çok bilgisayar platformunda uygulanan ve aralarında çalışan bilgisayar yazılımı veya bilgi işlem yöntemleri ve kavramlarına verilen bir özelliktir

İki türe ayrılabilir.

  1. Biri, desteklediği her platform için bireysel bina veya derleme gerektirir,
  2. Diğeri, özel bir hazırlık yapılmadan doğrudan herhangi bir platformda çalıştırılabilir, örneğin, yorumlanmış bir dilde yazılmış yazılım veya tercümanların veya çalışma zamanı paketlerinin tüm platformların ortak veya standart bileşenleri olduğu önceden derlenmiş taşınabilir bayt kodu.

Çok platformlu veya çapraz platform yazılımı: yazılım birden fazla platformda (işletim sistemleri) bulunur. Bu iki anlama gelebilir -

  1. Yazılım, farklı platformlar için farklı sürümler / uygulamalar ile donatılmıştır [windows için farklı paketler, bu linux için].
  2. Yazılım birden fazla platformda çalıştırılabilir (aynı indirme ile), ancak hepsi DEĞİL.

Platform bağımsız


Platformdan bağımsız olan yazılım, herhangi bir tek platformun herhangi bir özel özelliğine güvenmez veya varsa, bu özel özellikleri birden çok platformla başa çıkacak şekilde işler.

Platformdan Bağımsız Yazılım: Platformdan bağımsız yazılım tam anlamıyla -

  • Her yere kurun ve her yerde çalıştırın - nerede olduğunuz önemli değil. Farklı yükleyiciler (farklı platformlar için) alabilmenize rağmen, bu sadece kullanıcıların kolaylığı için olacaktır. Doğrudan kaynak kodundan yüklemeniz için seçenekler olacaktır.




Farklı Kaynaklardan Toplanan


@Shekhar: Tesadüfen, aynı kaynakları (Vikipedi VE openalternatives.org/site/2008/08/… ) ben de sizin eşyaları almış olabileceğiniz yerden vurdum . Çok teşekkür ederim.

Yazımın alt kısmında bahsettiğim gibi @CSharpLearner

0

Benim "bağırsak tanımı" Shekhar'ın söylediklerine uyuyor; multiplatform == birçok uyumsuz platform için oluşturulur, platformdan bağımsız == platformdan bağımsız olarak çalışır.

Tabii ki platform == işletim sistemi görmek kolaysa, bu durumda bir Python betiği işletim sisteminde bir Python yorumlayıcısı olduğu sürece çalıştırmayı planladığınız sürece "platformdan bağımsız" olacaktır.

Bir bakıma, komut dosyasının platformu olan Python. Her şeyden önce platformlar, bazı işlevleri özetleyen standart yazılım + donanım yığınlarıdır.

Ne demek istediğimi bilmiyorum.


0

Shekhar_Pro'nun cevabını biraz genişletmek için ,

Platform Independent herhangi bir platformu yürütür. Java, Python uygulamalarını, Windows, Mac ve Linux'ta zorunlu olarak yeniden derlemeye veya yeniden yazmaya gerek kalmadan yürütülebilecek platforma özel şeyler olmadan düşünün.

Çapraz Platform ürünleri tamamen farklı bir balık su ısıtıcısıdır. Bir çapraz platform ürününün bazı yönlerinin ortak gereksinimleri ve hatta kaynak kodunu (örneğin C'de uygulanan bazı matematik işlevleri) paylaşabileceği durumlarda, her ürün sürümü tamamen belirli bir platform için yazılır ve derlenir. Örneğin Mac, Windows, Linux, BeOS, Android ve benzeri sürümlerde çalışan farklı sürümleri olan Mozilla Firefox'u düşünün. Her sürüm benzerdir ve hatta uyumlu veri yapılarına sahip olabilir, ancak her sürüm bağımsız olarak da geliştirilir ve genellikle tamamen farklı programlama dilleri ve API'leri, farklı sürüm numaralandırma vb.


-1

Platform bağımsızlığı, bir platformda veya işletim sisteminde yazılan bir programın, testlerin ve işlevselliğin farklı bir platform / işletim sisteminde değiştirilmeden çalışacağı anlamına gelir. Doğal olarak, farklı bir dizine kopyalanırsa, bazı küçük yapılandırma dosyalarının sabit yollara ihtiyacı olabilir, ancak sadece çalışması gerekir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.