Cross-platform

Több platform ( cross-platform ) – a szoftver azon képessége , hogy több hardverplatformmal vagy operációs rendszerrel működjön együtt . Ezt magas szintű programozási nyelvek , fejlesztői és futási környezetek használatával biztosítják, amelyek támogatják a feltételes fordítást, linkelést és kódvégrehajtást különböző platformokon. Tipikus példa a Linux és a Windows operációs rendszereken egyidejű futtatásra tervezett szoftver.

Többplatformos programozási nyelvek

A legtöbb modern magas szintű programozási nyelvet keresztplatformosnak nevezhetjük . Például a C , C ++ , Free Pascal , FreeBASIC , PureBasic  többplatformos nyelvek fordítási szinten, vagyis ezekhez a nyelvekhez léteznek fordítóprogramok különféle platformokhoz. Ez lehetővé teszi, hogy - megfelelő kódminőség mellett - ne írják át a program fő motorját, csak speciális rendszerfüggő részek változnak.

Ugyanilyen fontosak a többplatformos használathoz a szabványos futásidejű könyvtárak . Különösen a C nyelvi könyvtár ( POSIX ) vált szabványossá. A nagy platformfüggetlen könyvtárak közül - Qt , GTK + , FLTK , STL , Boost , OpenGL , SDL , OpenAL , OpenCL .

Léteznek keresztfordítók – olyan fordítók, amelyek végrehajtható kódot generálnak más platformhoz, mint amelyen maga a fordító fut.

Többplatformos futtatókörnyezet

A PHP , a Perl , a Python , a Tcl és a Ruby  több platformon értelmezett nyelvek, és számos platformon léteznek tolmácsaik.

Az ActionScript Virtual Machine , Java Virtual Machine és .NET futtatókörnyezet is többplatformos, de bemenetük nem forráskód , hanem köztes kód . Ezért az ActionScript , Java és C# nyelven írt programok újrafordítás nélkül futtathatók különböző operációs rendszereken.

Többplatformos felhasználói felület

Különböző operációs rendszereken és környezetekben - függetlenül attól, hogy az azokban végzett munka technikailag hogyan történik - a szabványos interfész elemek eltérő méretűek. Ezért az interfészelemek egyszerű merev elhelyezése lehetetlen - egy másik operációs rendszerben (környezetben) „mászhatnak” egymáson, „elmosódnak”, „részegek”. Számos megközelítés létezik:

  1. Az összes operációs rendszerben közös stílus, a programok minden rendszeren ugyanúgy néznek ki. Így működnek a Java interfész-könyvtárak , mint például a Swing .
    • Plusz: az eredeti stílus, a Delphi módjára mereven elrendezheti a kezelőszerveket.
    • Mínusz: a rendszernek saját képernyő-betűkészlettel kell rendelkeznie, és a stílus eltér az operációs rendszer stílusától.
  2. Önadaptív (adaptív) interfész, amely a rácsot a vezérlőelemek tényleges méretéhez igazítja. Tipikus példák a Qt , wxWidgets , XUL .
    • Előnyök: szabványos operációs rendszer stílus, nagyon gyors és összecsukható Windows XP , Vista és Windows 7 alatt , valamint némi lokalizációs automatizálás .
    • Hátrány: Az önadaptáló háló összeszereléséhez szakképzett programozóra van szükség, és a szoros elrendezés nehézkes.
  3. A GTK+ hibrid megközelítést valósít meg .
    • Plusz: a betűtípusokat el lehet venni a rendszerből, és nem lehet "húzni" a sajátját, valamint némileg automatizálható a lokalizáció.
    • Mínusz: átveszi az első két megközelítés összes hátrányát. A stílus eltér az operációs rendszer stílusától, a szűk elrendezés nehézkes.

Mindenesetre más operációs rendszerekben és környezetekben legalább minimális tesztelésre van szükség, mivel linkelési hibák előfordulhatnak ...

Feltételes összeállítás

Annak ellenére, hogy általában a hardver és a szoftver széles körű szabványosítása létezik, a programozónak gyakran különböző operációs rendszerekhez és környezetekhez kell elágaznia, beleértve az egyiket vagy a másikat feltételes fordításon keresztül .

Például a Mozilla Firefox böngésző különböző ikonkészletekkel rendelkezik a különböző operációs rendszerekhez.

Alkalmazási programok

Számos alkalmazási program is többplatformos. Ez a minőség különösen szembetűnő az eredetileg Unix-szerű operációs rendszerekhez kifejlesztett programokban . Más platformokra való hordozhatóságuk fontos feltétele a platformok kompatibilitása a POSIX ajánlásokkal , valamint a GCC fordító megléte ahhoz a platformhoz, amelyre portolják.

Operációs rendszerek

A modern operációs rendszerek gyakran többplatformosak is. Például a nyílt forráskódú operációs rendszerek (különösen: NetBSD , Linux , FreeBSD , AROS ) többféle hardverplatformon futhatnak. A leggyakoribbak: x86 , m68k , PowerPC , Alpha , AMD64 , SPARC . (Az „ Elbrus OS ” nem más, mint egy mélyen módosított Elbrus platformra . De van egy „Elbrus OS” az Elbrus-SPARC platformokhoz is, amely az MCST SPARC platformjának és az x86 platformnak a megvalósítása. ) Első kiadás Az 1996-ban megjelent Microsoft Windows NT 4 négy platformot (x86, Alpha, MIPS és PowerPC) támogatott, a Windows NT későbbi verziói csak az x86 platformot támogatták. A modern Microsoft Windows Intel x86 és Intel Itanium platformokon is futhat . (Pontosabban az Itaniumnak csak Windows 2000/XP, Windows 2003 és Windows 2008 verziói vannak, ami után az Itanium támogatását fokozatosan megszüntették.) A NetBSD operációs rendszert tartják a leginkább többplatformosnak [1] , a legtöbbre portolják. meglévő platformok.

Fejlesztői környezetek

Számos IDE , köztük a Free Pascal, a Lazarus , a Qt Creator , különböző operációs rendszereken fut: Linux, Windows és mások [2] .

Emuláció

Ha a programot nem egy adott platformon kívánjuk végrehajtani (indítani), de ehhez a platformhoz létezik az alapplatform emulátora ehhez a programhoz, akkor a program az emulátor környezetben is végrehajtható.

Jellemzően egy program emulátorkörnyezetben történő végrehajtása teljesítményromlást eredményez a hasonló programokhoz képest, amelyeknek a platform az alapja, mivel a rendszer erőforrásainak jelentős részét emulátor funkciókra fordítják.

Jegyzetek

  1. ↑ Hordozhatóság és támogatott hardverplatformok  . netbsd.org . Letöltve: 2021. október 31. Az eredetiből archiválva : 2021. december 22.
  2. Lazarus IDE és Free Pascal (downlink) . Hozzáférés dátuma: 2013. december 8. Az eredetiből archiválva : 2013. november 26. 

Linkek