Web - Amazon

We provide Linux to the World


We support WINRAR [What is this] - [Download .exe file(s) for Windows]

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
Wieloplatformowość - Wikipedia, wolna encyklopedia

Wieloplatformowość

Z Wikipedii

Wieloplatformowość - termin odnoszący się do aplikacji, języków programowania, systemów operacyjnych oraz innego oprogramowania i jego implementacji, pracujących na różnych plaftormach sprzętowych. Przykładowo, wieloplatformowa aplikacja będzie działać pod kontrolą systemu Microsoft Windows na architekturze x86 oraz systemu Linux na architekturze ARM.

Spis treści

[edytuj] Platformy

Platforma to kombinacja sprzętu i oprogramowania, na którym uruchamiamy aplikacje. Mówiąc najprościej, platforma to system operacyjny lub architektura procesora.

Aplikacja może być napisana dla konkretnej platformy (zarówno w rozumieniu sprzętu, jak i oprogramowania), lub maszyny wirtualnej, na której jest uruchamiana.

[edytuj] Platforma sprzętowa

Platforma sprzętowa to ogólne pojęcie, odnoszące się zarówno, do architektury procesora lub architektury komputera. Kilka najpopularniejszych obecnie architektur procesorów:

[edytuj] Platforma systemowa

Platforma systemowa może być systemem operacyjnym lub maszyną wirtualną, zwykle jednak jest kombinacją obydwu. Najpopularniejsze systemy operacyjne:

oraz maszyny wirtualne:

[edytuj] Wieloplatformowe oprogramowanie

Aplikacja jest wieloplatformowa, gdy działa na więcej niż jednym systemie operacyjnym i architekturze komputera. Rozwój takiego oprogramowania jest zazwyczaj bardzo trudny i czasochłonny, chociażby ze względu na to, że różne systemy operacyjne posiadają odmienne API. Trzeba mieć również na uwadze, że fakt iż system działa na wielu architekturach, nie musi oznaczać, że program napisany dla tego systemy będzie z powodzeniem działał na wszystkich architekturach sprzętowych, obsługiwanych przez ów system. Przykładem jest pakiet biurowy OpenOffice.org, który wciąż nie ma swojego natywnego portu na architekturę x86-64. Podobnie jest z językami programowania. Program napisany w tak popularnych językach jak C lub C++, nie musi działać na wszystkich systemach operacyjnych, które obsługują ten język programowania.

[edytuj] Rozwój aplikacji wieloplatformowych

[edytuj] Wieloplatformowe biblioteki o narzędzia programistyczne

Oto kilka najważniejszych przedstawicieli bibliotek i narzędzi dostępnych na wielu platformach:

  • Simple DirectMedia Layer — biblioteka napisana w C, przeznaczona dla gier komputerowych i aplikacji multimedialnych. Udostępnia niezależne od platformy API, pozwalające kontrolować dżwięk, grafikę czy urządzenia wejścia wyjścia.
  • wxWidgets — biblioteka przeznaczona dla języka C++, udostępniająca jednolite, niezależne od systemu API do tworzenia GUI. Cecha biblioteki jest to, że na każdym systemie korzysta z natywnych elementów jego interfejsu.
  • Qt — biblioteka napisana w języku C++ pozwalająca tworzyć jednolite GUI niezależnie od platformy.
  • GTK+ — kolejna biblioteka umożliwiająca tworzenie aplikacji "okienkowych" napisana w C dostępna dla Linuksa, Microsoft Windowsa i eksperymentalnie dla Mac OS X.
  • Mono (projekt) (dokładniej Microsoft .NET) — wieloplatformowe środowisko do uruchamiania i tworzenia aplikacji w języku C#

[edytuj] Problemy związane z wieloplatformowością

Rozwój aplikacji wieloplatformwowych ma kilka istotnych wad:

  • Programowanie aplikacji wieloplatformowej jest trudne i czasochłonne. Programista musi znać API oferowane przez wszystkie systemy operacyjne, co znacznie utrudnia pracę, ponieważ różnice w implementacjach mogą być bardzo duże.
  • Programista jest ograniczony do używania zestawu funkcji dostępnych na wszystkich docelowych platformach, co w efekcie może nawet uniemożliwić tworzenie zaawansowanych aplikacji.
  • Testowanie wieloplatformowego programu musi być przeprowadzone na każdej obsługiwanej platformie. Jest to kłopotliwe, z tego względu, że na każdej platformie mogą ujawnić się różne błędy, a ponadto ten sam błąd może zachowywać się inaczej na każdej z nich.
  • Tworząc aplikacje z GUI, trzeba mieć na uwadze rozmaite konwencje interfejsów użytkownika. Standard GUI (rozmieszczenie i kolejność przycisków, umiejscowienie menu itd.) jest inna w systemie Microsoft Windows, środowisku GNOME, KDE, czy Aqua (domyślne środowisko graficzne w Mac OS X).
  • Aplikacje napisane w języku skryptowym lub w językach kompilowanych do kodu bajtowego (np. Java lub C#) muszą być za każdym razem tłumaczone na kod wykonywalny na danej platformie. Taka technika, mimo tak istotnej zalety jak niezależność od platformy, negatywnie odbija się na wydajności programu.

Our "Network":

Project Gutenberg
https://gutenberg.classicistranieri.com

Encyclopaedia Britannica 1911
https://encyclopaediabritannica.classicistranieri.com

Librivox Audiobooks
https://librivox.classicistranieri.com

Linux Distributions
https://old.classicistranieri.com

Magnatune (MP3 Music)
https://magnatune.classicistranieri.com

Static Wikipedia (June 2008)
https://wikipedia.classicistranieri.com

Static Wikipedia (March 2008)
https://wikipedia2007.classicistranieri.com/mar2008/

Static Wikipedia (2007)
https://wikipedia2007.classicistranieri.com

Static Wikipedia (2006)
https://wikipedia2006.classicistranieri.com

Liber Liber
https://liberliber.classicistranieri.com

ZIM Files for Kiwix
https://zim.classicistranieri.com


Other Websites:

Bach - Goldberg Variations
https://www.goldbergvariations.org

Lazarillo de Tormes
https://www.lazarillodetormes.org

Madame Bovary
https://www.madamebovary.org

Il Fu Mattia Pascal
https://www.mattiapascal.it

The Voice in the Desert
https://www.thevoiceinthedesert.org

Confessione d'un amore fascista
https://www.amorefascista.it

Malinverno
https://www.malinverno.org

Debito formativo
https://www.debitoformativo.it

Adina Spire
https://www.adinaspire.com