Знаймо

Додати знання

приховати рекламу

Цей текст може містити помилки.

Кроссплатформенной програмне забезпечення



План:


Введення

Кроссплатформенной програмне забезпечення - програмне забезпечення, яке працює більш ніж на одній апаратній платформі і / або операційній системі. Типовим прикладом є програмне забезпечення, призначене для роботи в операційних системах Linux і Windows одночасно.


1. Як домагаються платформ

Swing виглядає однаково на всіх ОС.
Mozilla Firefox, що використовує XUL, оформляє вікна в стилі ОС (в даному випадку - Linux).

1.1. Кросплатформені мови програмування

Кросплатформним можна назвати більшість сучасних високорівневих мов програмування. Наприклад, C, С + +, PureBasic і Free Pascal - Кросплатформені мови на рівні компіляції, тобто для цих мов є компілятори під різні платформи.

Не менш важливі для платформ стандартизовані бібліотеки. Зокрема, стандартом стала Бібліотека мови Сі (див. POSIX). З великих кроссплатформенних бібліотек - STL, Boost, GTK + та OpenGL.


1.2. Кросплатформені середовища виконання

Ще на зорі ПК компанія IBM зробила свій персональний комп'ютер сумісним з CP / M. Це дозволило запускати на ньому вже наявні програми.

PHP, ActionScript, Perl, Python, Tcl і Ruby - Кросплатформені інтерпретовані мови, їх інтерпретатори існують для багатьох платформ.

Середовища виконання Java Virtual Machine і . NET також кросплатформеність, однак на їх вхід подається не вихідний текст, а проміжний код. Тому програми, написані на Java і C #, можна запускати під різними ОС без попередньої перекомпіляції.


1.3. Багатоплатформовий користувальницький інтерфейс

На різних ОС - незалежно від того, як технічно досягнута робота в них - по-різному можуть виглядати елементи інтерфейсу, різна метрика шрифтів. Тому жорстко розташовувати стандартні елементи керування, як у Embarcadero Delphi, неможливо. Існують такі підходи.

  1. Єдиний стиль, загальний для всіх ОС. Програми виглядають однаково під усіма ОС. Так працюють інтерфейсні бібліотеки Java зразок Swing.
    • Плюс: можна розставляти елементи управління на манер Delphi; оригінальний стиль.
    • Мінус: системі доводиться мати свої екранні шрифти; стиль відрізняється від стилю ОС; стандартні елементи Windows все-таки працюють швидше [1].
  2. Самоадаптірующійся інтерфейс, підлаштовуються сітку під реальні розміри елементів управління. Типові приклади - wxWidgets, XUL.
    • Плюс: стандартний стиль ОС, дуже швидкий і " скинемося "під Windows XP, Vista і 7; деяка автоматизація локалізації.
    • Мінус: щоб зібрати самоадаптірующуюся сітку, потрібно кваліфікований програміст; утруднена щільна компонування.
  3. Гібридний підхід реалізований в GTK +.
    • Плюс: шрифти можна брати з системи, а не "тягнути" свої; деяка автоматизація локалізації.
    • Мінус: бере всі недоліки від перших двох підходів. Стиль відрізняється від стилю ОС; стандартні елементи Windows працюють швидше; потрібно кваліфікований програміст; утруднена щільна компонування.

1.4. Умовна компіляція

Навіть незважаючи на широку, в загальному, стандартизацію апаратного та програмного забезпечення, програмісту часто доводиться налагоджувати гілки під різні ОС, включаючи ту або іншу за допомогою умовної компіляції.

Браузер Mozilla Firefox має різні комплекти іконок під різні ОС.

2. Прикладні програми

Велика кількість прикладних програм також є кроссплатформенной. Особливо це якість виражено у програм, спочатку розроблених для UNIX -подібних операційних систем. Важливою умовою їх переносимості на інші платформи є сумісність платформ з рекомендаціями POSIX, а також існування компілятора GCC для платформи, на яку здійснюється перенесення.

Приклади:


3. Операційні системи

Сучасні операційні системи також часто є кроссплатформенной. Наприклад, операційні системи з відкритим вихідним кодом, наприклад, NetBSD, Linux, FreeBSD, AROS можуть працювати на декількох різних платформах, найчастіше це x86, m68k, PowerPC, Alpha, AMD64, SPARC. Microsoft Windows може працювати як на платформі Intel x86, так і на Intel Itanium. Операційна система NetBSD є найбільш стерпної [2], вона працює на більшість існуючих платформ.


4. Емуляція

Якщо програма не призначена для виконання (запуску) на певній платформі, але для цієї платформи існує емулятор платформи, базової для цієї програми, то програма може бути виконана в середовищі емулятора.

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


Примітки

  1. Фундаментальна різниця між графічною оболонкою Windows і X Window System : код відтворення елементів управління в Windows працює в нульовому кільці захисту, в * Nix - в призначеному для користувача.
  2. Portability and supported hardware platforms - netbsd.org / about / portability.html

Цей текст може містити помилки.

Схожі роботи | скачати

Схожі роботи:
Програмне забезпечення
Програмне забезпечення
Вільне програмне забезпечення
Пропрієтарне програмне забезпечення
Документація на програмне забезпечення
Ліцензія на програмне забезпечення
Комерційне програмне забезпечення
Реліз (програмне забезпечення)
Прикладне програмне забезпечення
© Усі права захищені
написати до нас