Кросплатформавае (міжплатформавае) праграмнае забеспячэнне — праграмнае забеспячэнне, якое працуе больш чым на адной апаратнай платформе і/ці аперацыйнай сістэме. Тыповым прыкладам з’яўляецца праграмнае забеспячэнне, прызначанае для работы ў аперацыйных сістэмах Linux і Windows.
Як дабіваюцца кросплатформавасці
Кросплатформавыя мовы праграмавання
Кросплатформавымі можна назваць большасць сучасных высокаўзроўневых моў праграмавання. Напрыклад, C, C++, Free Pascal — кросплатформавыя мовы на ўзроўні кампіляцыі, гэта значыць для гэтых моў ёсць кампілятары пад розныя платформы.
Не менш важныя для кросплатформавасці стандартызаваныя (англ.: runtime library). У прыватнасці, стандартам стала бібліятэка мовы С (гл. POSIX). З буйных кросплатформавых бібліятэк — Qt, GTK+, FLTK, стандартная бібліятэка шаблонаў, Boost, OpenGL, SDL, OpenAL, OpenCL.
Кросплатформавыя асяроддзі выканання
Яшчэ на пачатку эпохі ПК кампанія IBM зрабіла свой персанальны камп’ютар сумяшчальным з . Гэта дазволіла запускаць на ім ужо існуючыя праграмы.
PHP, ActionScript, Perl, Python, і Ruby — кросплатформавыя інтэрпрэтавальныя мовы, іх інтэрпрэтатары існуюць для многіх платформ.
Асяроддзі выканання (Java Virtual Machine) і .NET таксама кросплатформавыя, аднак на іх уваход падаецца не зыходны код, а . Таму праграмы, напісаныя на Java і C#, можна запускаць пад разнастайнымі АС без папярэдняй перакампіляцыі.
Кросплатформавы інтэрфейс карыстальніка
На розных АС — незалежна ад таго, як тэхнічна дасягнута работа ў іх — стандартныя элементы інтэрфейса маюць розныя памеры. Таму простае жорсткае размяшчэнне элементаў інтэрфейса немагчыма — пад іншай АС яны могуць налазіць адзін на другі. Існуе некалькі падыходаў.
- Адзіны стыль, агульны для ўсіх АС. Праграмы выглядаюць аднолькава на ўсіх АС. Так працуюць інтэрфейсныя бібліятэкі Java падобныя да .
- Плюс: можна жорстка расстаўляць элементы кіравання на манер Delphi; арыгінальны стыль.
- Мінус: сістэме даводзіцца мець свае экранныя шрыфты; стыль адрозніваецца ад стылю АС.
- Інтэрфейс з самапрыстасавальнасцю, які падстройвае сетку пад сапраўдныя памеры элементаў кіравання. Тыповыя прыклады — , .
- Плюс: стандартны стыль АС, вельмі хуткі і наладжвальны пад Windows XP, Vista і 7; некаторая аўтаматызацыя .
- Мінус: каб збудаваць самапрыстасавальную сетку, патрабуецца кваліфікаваны праграміст; ускладнена шчыльная кампаноўка.
- Гібрыдны падыход рэалізаваны ў .
- Плюс: можна браць з сістэмы, а не «цягнуць» свае; некаторая аўтаматызацыя .
- Мінус: атрымлівае ўсе недахопы ад першых двух падыходаў. Стыль адрозніваецца ад стылю АС; ускладнена шчыльная кампаноўка.
У любым выпадку, пад іншымі АС патрабуецца хаця б мінімальнае тэсціраванне, таму што магчымы памылкі кампаноўкі.
Умоўная кампіляцыя
Нават нягледзячы на шырокую стандартызацыю апаратнага і праграмнага забеспячэння, праграмісту часта даводзіцца наладжваць галіны пад розныя АС, уключаючы тую ці іншую з дапамогай .
Браўзер Mozilla Firefox мае розныя наборы іконак пад розныя АС.
Прыкладныя праграмы
Вялікая колькасць прыкладных праграм таксама з’яўляюцца кросплатформавымі. Асабліва гэтая якасць уласціва праграмам, першапачаткова распрацаваным для UNIX-падобных аперацыйных сістэм. Важнай умовай іх пераноснасці на іншыя платформы з’яўляецца сумяшчальнасць платформ з рэкамендацыямі POSIX, а таксама існаванне кампілятара для платформы, на якую ажыццяўляецца перанос.
Аперацыйныя сістэмы
Сучасныя аперацыйныя сістэмы таксама часта з’яўляюцца кросплатформавымі. Напрыклад, аперацыйныя сістэмы з адкрытым зыходным кодам, напрыклад, NetBSD, Linux, FreeBSD, могуць працаваць на некалькіх розных платформах, часцей за ўсё гэта x86, , , , , . Microsoft Windows можа працаваць як на платформе Intel x86, так і на Intel (дакладней, для Itanium ёсць толькі версіі Windows 2000/XP, Windows 2003 і Windows 2008, пасля чаго падтрымка была згорнута). Аперацыйная сістэма NetBSD з’яўляецца самай пераноснай, яна перанесена на большасць існуючых платформ.
Эмуляцыя
Калі праграма не прызначана для выканання (запуску) на азначанай платформе, але для гэтай платформы існуе эмулятар платформы, асноўнай для праграмы, то праграма можа быць выканана ў асяроддзі эмулятара.
Звычайна выкананне праграмы ў асяроддзі эмулятара прыводзіць да зніжэння прадукцыйнасці ў параўнанні з аналагічнымі праграмамі, для якіх платформа з’яўлялася базавай, таму што значная частка рэсурсаў сістэмы спажываецца на выкананне функцый эмулятара.
Гл. таксама
- Камп’ютарная платформа
Зноскі
- Portability and supported hardware platforms
Спасылкі
- Усё аб кросплатформавым праграмаванні
Вікіпедыя, Вікі, кніга, кнігі, бібліятэка, артыкул, чытаць, спампоўваць, бясплатна, бясплатна спампаваць, mp3, відэа, mp4, 3gp, jpg, jpeg, gif, png, малюнак, музыка, песня, фільм, кніга, гульня, гульні, мабільны, тэлефон, Android, iOS, Apple, мабільны тэлефон, Samsung, iPhone, Xiomi, Xiaomi, Redmi, Honor, Oppo, Nokia, Sonya, MI, ПК, Інтэрнэт, кампутар
U getaj staronki nyama praveranyh versij hutchej za ysyo yae yakasc ne acenvalasya na adpavednasc standartam Krosplatformavae mizhplatformavae pragramnae zabespyachenne pragramnae zabespyachenne yakoe pracue bolsh chym na adnoj aparatnaj platforme i ci aperacyjnaj sisteme Typovym prykladam z yaylyaecca pragramnae zabespyachenne pryznachanae dlya raboty y aperacyjnyh sistemah Linux i Windows Yak dabivayucca krosplatformavascivyglyadae adnolkava na ysih AS Mozilla Firefox uzhyvae afarmlyae vokny y styli AS u getym prykladze Linux Krosplatformavyya movy pragramavannya Krosplatformavymi mozhna nazvac bolshasc suchasnyh vysokayzroynevyh moy pragramavannya Napryklad C C Free Pascal krosplatformavyya movy na yzroyni kampilyacyi geta znachyc dlya getyh moy yosc kampilyatary pad roznyya platformy Ne mensh vazhnyya dlya krosplatformavasci standartyzavanyya angl runtime library U pryvatnasci standartam stala bibliyateka movy S gl POSIX Z bujnyh krosplatformavyh bibliyatek Qt GTK FLTK standartnaya bibliyateka shablonay Boost OpenGL SDL OpenAL OpenCL Krosplatformavyya asyaroddzi vykanannya Yashche na pachatku epohi PK kampaniya IBM zrabila svoj persanalny kamp yutar sumyashchalnym z Geta dazvolila zapuskac na im uzho isnuyuchyya pragramy PHP ActionScript Perl Python i Ruby krosplatformavyya interpretavalnyya movy ih interpretatary isnuyuc dlya mnogih platform Asyaroddzi vykanannya Java Virtual Machine i NET taksama krosplatformavyya adnak na ih uvahod padaecca ne zyhodny kod a Tamu pragramy napisanyya na Java i C mozhna zapuskac pad raznastajnymi AS bez papyarednyaj perakampilyacyi Krosplatformavy interfejs karystalnika Na roznyh AS nezalezhna ad tago yak tehnichna dasyagnuta rabota y ih standartnyya elementy interfejsa mayuc roznyya pamery Tamu prostae zhorstkae razmyashchenne elementay interfejsa nemagchyma pad inshaj AS yany moguc nalazic adzin na drugi Isnue nekalki padyhoday Adziny styl agulny dlya ysih AS Pragramy vyglyadayuc adnolkava na ysih AS Tak pracuyuc interfejsnyya bibliyateki Java padobnyya da Plyus mozhna zhorstka rasstaylyac elementy kiravannya na maner Delphi aryginalny styl Minus sisteme davodzicca mec svae ekrannyya shryfty styl adroznivaecca ad stylyu AS Interfejs z samaprystasavalnascyu yaki padstrojvae setku pad sapraydnyya pamery elementay kiravannya Typovyya pryklady Plyus standartny styl AS velmi hutki i naladzhvalny pad Windows XP Vista i 7 nekatoraya aytamatyzacyya Minus kab zbudavac samaprystasavalnuyu setku patrabuecca kvalifikavany pragramist uskladnena shchylnaya kampanoyka Gibrydny padyhod realizavany y Plyus mozhna brac z sistemy a ne cyagnuc svae nekatoraya aytamatyzacyya Minus atrymlivae yse nedahopy ad pershyh dvuh padyhoday Styl adroznivaecca ad stylyu AS uskladnena shchylnaya kampanoyka U lyubym vypadku pad inshymi AS patrabuecca hacya b minimalnae tesciravanne tamu shto magchymy pamylki kampanoyki Umoynaya kampilyacyya Navat nyagledzyachy na shyrokuyu standartyzacyyu aparatnaga i pragramnaga zabespyachennya pragramistu chasta davodzicca naladzhvac galiny pad roznyya AS uklyuchayuchy tuyu ci inshuyu z dapamogaj Brayzer Mozilla Firefox mae roznyya nabory ikonak pad roznyya AS Prykladnyya pragramyVyalikaya kolkasc prykladnyh pragram taksama z yaylyayucca krosplatformavymi Asabliva getaya yakasc ulasciva pragramam pershapachatkova raspracavanym dlya UNIX padobnyh aperacyjnyh sistem Vazhnaj umovaj ih peranosnasci na inshyya platformy z yaylyaecca sumyashchalnasc platform z rekamendacyyami POSIX a taksama isnavanne kampilyatara dlya platformy na yakuyu azhyccyaylyaecca peranos Aperacyjnyya sistemySuchasnyya aperacyjnyya sistemy taksama chasta z yaylyayucca krosplatformavymi Napryklad aperacyjnyya sistemy z adkrytym zyhodnym kodam napryklad NetBSD Linux FreeBSD moguc pracavac na nekalkih roznyh platformah chascej za ysyo geta x86 Microsoft Windows mozha pracavac yak na platforme Intel x86 tak i na Intel dakladnej dlya Itanium yosc tolki versii Windows 2000 XP Windows 2003 i Windows 2008 paslya chago padtrymka byla zgornuta Aperacyjnaya sistema NetBSD z yaylyaecca samaj peranosnaj yana peranesena na bolshasc isnuyuchyh platform EmulyacyyaKali pragrama ne pryznachana dlya vykanannya zapusku na aznachanaj platforme ale dlya getaj platformy isnue emulyatar platformy asnoynaj dlya pragramy to pragrama mozha byc vykanana y asyaroddzi emulyatara Zvychajna vykananne pragramy y asyaroddzi emulyatara pryvodzic da znizhennya pradukcyjnasci y paraynanni z analagichnymi pragramami dlya yakih platforma z yaylyalasya bazavaj tamu shto znachnaya chastka resursay sistemy spazhyvaecca na vykananne funkcyj emulyatara Gl taksamaKamp yutarnaya platformaZnoskiPortability and supported hardware platformsSpasylkiUsyo ab krosplatformavym pragramavanni