Кроссплатформенность

Кроссплатформенность (межплатформенность) — способность программного обеспечения работать с несколькими аппаратными платформами или операционными системами. Обеспечивается благодаря использованию высокоуровневых языков программирования, сред разработки и выполнения, поддерживающих условную компиляцию, компоновку и выполнение кода для различных платформ. Типичным примером является программное обеспечение, предназначенное для работы в операционных системах Linux и Windows одновременно.

Swing выглядит одинаково на всех ОС
Mozilla Firefox, использующий XUL, оформляет окна в стиле ОС (в данном случае — Linux).

Кроссплатформенные языки программирования

Кроссплатформенными можно назвать большинство современных высокоуровневых языков программирования. Например, Си, C++, Free Pascal, FreeBASIC, PureBasic — кроссплатформенные языки на уровне компиляции, то есть для этих языков есть компиляторы под различные платформы. Это позволяет — при надлежащем качестве кода — не переписывать основной движок программы, меняются только особые системозависимые части.

Не менее важны для кроссплатформенности стандартизованные библиотеки среды выполнения. В частности, стандартом стала библиотека языка Си (POSIX). Из крупных кроссплатформенных библиотек — Qt, GTK+, FLTK, STL, Boost, OpenGL, SDL, OpenAL, OpenCL.

Существуют кросс-компиляторы — компиляторы, генерирующие исполняемый код для платформы, отличной от той, на которой запущен сам компилятор.

Кроссплатформенные среды исполнения

PHP, Perl, Python, Tcl и Ruby — кроссплатформенные интерпретируемые языки, их интерпретаторы существуют для многих платформ.

Среды исполнения ActionScript Virtual Machine, Java Virtual Machine и .NET также кроссплатформенны, однако на их вход подаётся не исходный текст, а промежуточный код. Поэтому программы, написанные на ActionScript, Java и C#, можно запускать под разными операционными системами без предварительной перекомпиляции.

Кроссплатформенный пользовательский интерфейс

На разных операционных системах и средах — независимо от того, как технически достигнута работа в них — стандартные элементы интерфейса имеют разные размеры. Поэтому простое жёсткое позиционирование элементов интерфейса невозможно — в другой операционной системе (среде) они могут «налезать» друг на друга, «расплываться», «пьянеть». Существует несколько подходов:

  1. Единый стиль, общий для всех операционных систем, программы выглядят одинаково под всеми системами. Так работают интерфейсные библиотеки Java наподобие Swing.
    • Плюс: можно жёстко расставлять элементы управления на манер Delphi, оригинальный стиль.
    • Минус: системе приходится иметь свои экранные шрифты, и стиль отличается от стиля ОС.
  2. Самоадаптирующийся (адаптивный) интерфейс, подстраивающий сетку под реальные размеры элементов управления. Типичные примеры — Qt, wxWidgets, XUL.
    • Плюс: стандартный стиль операционной системы, очень быстрый и «скинующийся» под Windows XP, Vista и Windows 7, и некоторая автоматизация локализации.
    • Минус: чтобы собрать самоадаптирующуюся (адаптивную) сетку, требуется квалифицированный программист, а также затруднена плотная компоновка.
  3. Гибридный подход реализован в GTK+.
    • Плюс: шрифты можно брать из системы, а не «тащить» свои, а также некоторая автоматизация локализации.
    • Минус: берёт все недостатки от первых двух подходов. Стиль отличается от стиля операционной системы, затруднена плотная компоновка.

В любом случае, в других операционных системах и средах требуется хотя бы минимальное тестирование, так как возможны ошибки компоновки.

Условная компиляция

Даже несмотря на широкую, в общем, стандартизацию аппаратного и программного обеспечения, программисту часто приходится налаживать ветви под разные операционные системы и среды, включая ту или другую посредством условной компиляции.

Например, браузер Mozilla Firefox имеет разные комплекты значков под разные операционные системы.

Прикладные программы

Большое количество прикладных программ также являются кроссплатформенными. Особенно это качество выражено у программ, изначально разработанных для Unix-подобных операционных систем. Важным условием их переносимости на другие платформы является совместимость платформ с рекомендациями POSIX, а также существование компилятора GCC для платформы, на которую осуществляется перенос.

Операционные системы

Современные операционные системы также часто являются кроссплатформенными. Например, операционные системы с открытым исходным кодом (в частности: NetBSD, Linux, FreeBSD, AROS) могут работать на нескольких различных аппаратных платформах. Наиболее часто это: x86, m68k, PowerPC, Alpha, AMD64, SPARC. («Эльбрус ОС» есть не что иное как глубоко доработанный для платформы «Эльбрус». Но существует «Эльбрус ОС» также доступна и для платформ «Эльбрус-SPARC», представляющей собой реализацию платформы SPARC от МЦСТ, и платформы х86.) Первый выпуск Microsoft Windows NT 4, вышедший в 1996 году, поддерживал четыре платформы (x86, Alpha, MIPS и PowerPC), в дальнейших версиях Windows NT осталась только поддержка платформы х86. Современная Microsoft Windows может работать как на платформе Intel x86, так и на Intel Itanium. (Точнее, для Itanium есть только версии Windows 2000/XP, Windows 2003 и Windows 2008, после чего поддержка Itanium была свёрнута.) Операционная система NetBSD считается самой наиболее многоплатформенной[1], — она портирована на большинство ныне существующих платформ.

Среды разработки

Ряд IDE, в том числе Free Pascal, Lazarus, Qt Creator, работают на разных операционных системах: Linux, Windows и других[2].

Эмуляция

Если программа не предназначена для исполнения (запуска) на определённой платформе, но для этой платформы существует эмулятор платформы, базовой для данной программы, то программа может быть исполнена в среде эмулятора.

Обычно исполнение программы в среде эмулятора приводит к снижению производительности по сравнению с аналогичными программами, для которых платформа является базовой, так как значительная часть ресурсов системы расходуется на выполнение функций эмулятора.

Примечания

  1. Portability and supported hardware platforms (англ.). netbsd.org. Дата обращения: 31 октября 2021. Архивировано 22 декабря 2021 года.
  2. IDE Lazarus и Free Pascal. Дата обращения: 8 декабря 2013. Архивировано из оригинала 26 ноября 2013 года.

Ссылки

Read other articles:

本條目存在以下問題,請協助改善本條目或在討論頁針對議題發表看法。 此條目需要补充更多来源。 (2018年3月17日)请协助補充多方面可靠来源以改善这篇条目,无法查证的内容可能會因為异议提出而被移除。致使用者:请搜索一下条目的标题(来源搜索:羅生門 (電影) — 网页、新闻、书籍、学术、图像),以检查网络上是否存在该主题的更多可靠来源(判定指引)。 �...

 

В статье не хватает ссылок на источники (см. рекомендации по поиску). Информация должна быть проверяема, иначе она может быть удалена. Вы можете отредактировать статью, добавив ссылки на авторитетные источники в виде сносок. (7 мая 2021) Российский еврейский конгресс (РЕК)ивр...

 

American politician Brian AsheMember of theMassachusetts House of Representativesfrom the 2nd Hampden districtIncumbentAssumed office 2009Preceded byMary Rogeness Personal detailsBorn (1963-04-23) April 23, 1963 (age 60)Political partyDemocraticSpouseSonja M. AsheResidenceLongmeadow, MassachusettsAlma materWestfield State CollegeOccupationPolitician Brian M. Ashe (born April 23, 1963) is an American politician who represents the 2nd Hampden District in the Massachusetts House of Repr...

Charles Antoine MorandComte de l'EmpireBorn4 June 1771 (1771-06-04)Pontarlier, DoubsDied2 December 1835 (1835-12-03) (aged 64)ParisBuriedMontbenoît, Doubs[1]Allegiance FranceService/branchInfantryYears of service1792–1815RankGeneral of DivisionBattles/warsFrench Revolutionary WarsNapoleonic WarsAwardsGrand Commander of the Legion of HonourGrand Cross of the Order of the ReunionCommander of the Military Order of St. HenryKnight of St. LouisPeer of France Charles...

 

Independent film company The topic of this article may not meet Wikipedia's notability guidelines for companies and organizations. Please help to demonstrate the notability of the topic by citing reliable secondary sources that are independent of the topic and provide significant coverage of it beyond a mere trivial mention. If notability cannot be shown, the article is likely to be merged, redirected, or deleted.Find sources: Gold Circle Films – news · newspapers ...

 

Ne doit pas être confondu avec Cap-Nord ou CAP Nord. Cap Nord Le cap Nord lors d'un Soleil de minuit. Localisation Pays Norvège Landsdel Nord-Norge Coordonnées 71° 10′ 16″ nord, 25° 46′ 56″ est Mer Mer de Norvège et mer de Barents (océan Arctique) Géographie Altitude 307 m Géolocalisation sur la carte : Europe Cap Nord Géolocalisation sur la carte : Norvège Cap Nord Géolocalisation sur la carte : Finnmark Cap Nord modifier...

Railway Station in Maharashtra, India Netaji Subhash Chandra Bose Itwari (Nagpur)Indian Railways stationNetaji Subhash Chandra Bose ItwariGeneral informationLocationShantinagar Colony, Itwari, Nagpur, Pin-440002, Maharashtra, IndiaCoordinates21°09′00″N 79°08′00″E / 21.15000°N 79.13333°E / 21.15000; 79.13333Elevation304 metres (997 ft)Owned byIndian RailwaysOperated bySouth East Central Railway (SECR)Platforms6Tracks10ConstructionStructure typeStandard ...

 

Presidenza John Quincy AdamsIl presidente John Quincy Adams in un ritratto di Charles Robert Leslie Stato Stati Uniti Capo del governoJohn Quincy Adams(Partito Democratico-Repubblicano) Giuramento4 marzo 1825 Governo successivo4 marzo 1829 Presidenza Monroe Presidenza Jackson La presidenza di John Quincy Adams ebbe inizio il 4 marzo del 1825 con la cerimonia d'insediamento e terminò il 4 marzo del 1829. Adams, il sesto presidente degli Stati Uniti d'America entrò in carica dopo le elez...

 

Swedish guitarist Christopher AmottAmott in 2010Background informationAlso known asChris AmottBorn (1977-11-23) 23 November 1977 (age 46)Halmstad, SwedenGenresMelodic death metal, power metal, thrash metalOccupation(s)GuitaristYears active1996–presentLabelsCentury MediaMusical artist Christopher Amott (born 23 November 1977) is a Swedish guitarist, younger brother of Michael Amott and founding member of the metal bands Arch Enemy and Armageddon. He is most recently the former guitarist...

本條目存在以下問題,請協助改善本條目或在討論頁針對議題發表看法。 此條目需要編修,以確保文法、用詞、语气、格式、標點等使用恰当。 (2013年8月6日)請按照校對指引,幫助编辑這個條目。(幫助、討論) 此條目剧情、虛構用語或人物介紹过长过细,需清理无关故事主轴的细节、用語和角色介紹。 (2020年10月6日)劇情、用語和人物介紹都只是用於了解故事主軸,輔助�...

 

No One Killed JessicaPoster rilis teatrikalSutradaraRaj Kumar GuptaProduserRonnie ScrewvalaDitulis olehRaj Kumar GuptaBerdasarkanPembunuhan Jessica LalPemeranRani MukerjiVidya BalanPenata musikAmit TrivediSinematograferAnay GoswamyPenyuntingAarti BajajPerusahaanproduksiUTV SpotboyTanggal rilis 7 Januari 2011 (2011-01-07) Durasi134 menit[1]NegaraIndiaBahasaHindiAnggaran₹190 jutaPendapatankotor₹457,2 juta No One Killed Jessica (bahasa Indonesia: Tidak Ada yang Membunuh Je...

 

طاعون لندن العظيم   المكان لندن  الوفيات 75,000   تعديل مصدري - تعديل   جنع الموتى خلال طاعون لندن العظيم. الطاعون الكبير أو العظيم (1665-1666) كان آخر طاعون دبلي حدث في مملكة إنجلترا (والتي كانت جزء من المملكة المتحدة في العصر الحالي). حدث ذلك في بعد عدة قرون من زمن الوباء ا�...

Area yang berwarna menunjukkan korteks singulat anterior, area dalam otak yang teraktivasi selama meditasi. Meditasi dan efeknya pada sistem saraf pusat menjadi fokus penelitian kolaboratif dalam ilmu saraf, psikologi dan neurobiologi selama abad ke-20 terakhir. Penelitian tentang meditasi berusaha untuk mendefinisikan dan mencirikan berbagai praktik. Efek meditasi pada otak dapat dipecah menjadi dua kategori: perubahan keadaan dan perubahan sifat, masing-masing perubahan dalam kegiatan otak ...

 

جوليانا عواضة معلومات شخصية الميلاد 3 أبريل 1974 (العمر 50 سنة)بوينس آيرس الجنسية أرجنتينية الديانة مسيحية كاثوليكية (مسلمة سابقًا)[1] الزوج ماوريسيو ماكري الحياة العملية المدرسة الأم جامعة أوكسفورد المهنة شخصيات من عالم الأعمال اللغات الإسبانية  تعديل مصدري - تعديل ...

 

Cet article est une ébauche concernant une actrice américaine. Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les conventions filmographiques. Pour les articles homonymes, voir Alden. Mary Alden En 1924 Données clés Nom de naissance Mary Maguire Alden Naissance 18 juin 1883New York, État de New YorkÉtats-Unis Nationalité  Américaine Décès 2 juillet 1946 (à 63 ans)Woodland Hills, Los Angeles Profession Actrice modifier Mary Alden est une ...

2019 American film by Greta Gerwig Little WomenTheatrical release posterDirected byGreta GerwigScreenplay byGreta GerwigBased onLittle Women1868 novelby Louisa May AlcottProduced by Amy Pascal Denise Di Novi Robin Swicord Starring Saoirse Ronan Emma Watson Florence Pugh Eliza Scanlen Laura Dern Timothée Chalamet Meryl Streep Tracy Letts Bob Odenkirk James Norton Louis Garrel Chris Cooper CinematographyYorick Le SauxEdited byNick HouyMusic byAlexandre DesplatProductioncompanies Columbia Pictu...

 

2020 film One SecondFilm posterDirected byZhang YimouWritten byZhang YimouBased onOne Secondby Geling YanProduced byPing DongWilliam KongLiwei PangShaokun XiangStarringZhang YiLiu HaocunCinematographyZhao XiaodingEdited byYuan DuMusic byLoudboyProductioncompaniesHuanxi Media GroupEdko FilmsRelease date 27 November 2020 (2020-11-27) Running time104 minutesCountryChinaLanguageMandarinBox officeUS$20.3 million[1] One Second (Chinese: 一秒钟) is a 2020 Chinese drama ...

 

Turkiet i olympiska spelen IOK-landskodTUR KommittéTurkiets Olympiska KommittéOlympiska vinterspelen 1992 i AlbertvilleDeltagare8 deltagare i 2 grenar Medaljsummering Guld0 Silver0 Brons0 Totalt0 Turkiet i olympiska sommarspelen1908 • 1912 • 1920 • 1924 • 1928 • 1932 • 1936 • 1948 • 1952 • 1956 • 1960 • 1964 • 1968 • 1972 • 1976 • 1980 • 1984 • 1988 ...

SheamusSheamus en février 2020.Données généralesNom de naissance Stephen FarrellyNom de ring Sheamus O'ShaunessySheamusKing SheamusNationalité IrlandaisNaissance 28 janvier 1978 (46 ans)DublinTaille 6′ 4″ (1,93 m)Poids entre 250 lb (114 kg)[1] et 267 lb (121 kg)[2]Catcheur en activitéFédération Irish Whip WrestlingAll-Star WrestlingWorld Wrestling EntertainmentEntraîneur Larry SharpeCarrière pro. Avril 2002 - aujourd'huiAnnoncé de Dublin, Irla...

 

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Murder on Lenox Avenue – news · newspapers · books · scholar · JSTOR (April 2019) (Learn how and when to remove this message) 1941 American filmMurder on Lenox AvenueDirected byArthur DreifussWritten byFrank Wilson (story)Vincent Valentini (writer) andBryna Ive...