RhoMobile Suite

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
Rhomobile Suite
Тип фреймворк
Розробник Motorola Solutions
Стабільний випуск 2.2 «SP1» (25 січня 2013; 11 років тому (2013-01-25))
Платформа CentOS / RHEL 5.x & 6.x,Ubuntu 12.x, Mac OS X 10.7/10.8, Windows 7
Операційна система Linux, Mac OS X, Windows
Мова програмування Ruby, HTML5
Доступні мови багатомовна
Ліцензія MIT
Вебсайт rhomobile.com

Rhomobile Suite (раніше відомий як Rhodes Framework) — багатофункціональний крос-платформний фреймворк з відкритим вихідним кодом, що розроблений компанією Motorola у жовтні 2008 року та зараз належить до Motorola Solutions [Архівовано 19 жовтня 2017 у Wayback Machine.]. Rhodes написаний на Ruby та базується на парадигмі «модель-вигляд-контролер» (MVC). Платформа використовується для створення прикладних програм, які можуть працювати на різних пристроях. Це означає, що всі прикладні програми створені на платформі Rhomobile будуть виглядати та працювати однаково на всіх пристроях, не залежачи від операційної системи чи розміру екрану. Дана платформа була створена для задоволення потреб нового покоління бізнес-мобільності. Прикладні програми Rhomobile підтримуються такими операційними системами як Apple iPhone OS, Symbian, Google Android, Microsoft Windows Mobile, RIM BlackBerry OS.

Загальний огляд

[ред. | ред. код]

Даний продукт призначений для написання прикладних програм широкого спектра: від маленьких домашніх розробок, що підпадають під безплатну ліцензію та використовують лише доступ до апаратної частини пристрою (екран, GPS, акселерометр) і до великих багатофункціональних корпоративних проектів. Прикладні програми пишуться мовою програмування Ruby та інтерпретуються в рідний код відповідного пристрою, що дає змогу створювати повноцінні програми легко та швидко, не вдаючись у складності таких мов як Java чи Objective-C. Інтерфейс програм створюється за допомогою HTML5, що дозволяє без складностей розробляти дизайн уже відомими методами. Програми одночасно інтерпретуються під будь-яку платформу, без необхідності переписування коду. Підтримується тестування коду і його налагодження в реальному часі.

Створення прикладних програм

[ред. | ред. код]

Розробник створює MVC-контейнер та набір HTML-шаблонів для графічного інтерфейсу. Середовище Rhodes доповнює базові HTML-теги додатковими можливостями, такими як доступ до GPS-функціоналу смартфонів, даних користувача, фото та відеокамери, push-повідомлень і т.д. Основний код програми пишеться на Ruby. Є можливість підключення сторонніх розширень. Rhodes дозволяє працювати з синхронізованими локальними даними автономно через локальну базу даних, наприклад SQLite або DB40, і може також функціонувати з загальною платформою синхронізації з сервером, таким як RhoSync, що корисно у разі SaaS-служб або інших корпоративних завдань. Передбачена можливість створення прикладних програм безпосередньо в браузері за допомогою компоненту RhoHub (так зване хостингове середовище розробки).

Історія

[ред. | ред. код]
  • 2008—2009: була заснована компанія та створено проект GitHub.
  • 2008—2012: реліз версії 0.1 тільки для iPhone.
  • 2009-01-06: реліз версії 0.2 в якому додано підтримку системи Windows Mobile.
  • 2009-03-24: реліз версії 1.0 в якому додано підтримку Android систем.
  • 2009—2005: перемога на конференції Interop.
  • 2009-11-04: запущено платформу RhoHub.
  • 2010-02-15: реліз версії 1.4
  • 2010—2005: перемога на конференції Web 2.0 Expo.
  • 2010-06-30: реліз версії 2.0
  • 2012-08-29: реліз версії 2.1
  • 2013-01-25: реліз версії 2.2

Нагороди

[ред. | ред. код]

У травні 2009 року Rhomobile визнаний як найкращий «start-up» проект на незалежній конференції Interop[1].

5 травня 2010 року Rhomobile був обраний як переможець у номінації «глядацький вибір» на конференції Web 2.0 Expo LaunchPad у Сан-Франциско[2].

27 березня 2013 року Rhomobile була обрана як фіналіст на сайті About.com у номінації «вибір читача» як найкращий крос-платформний інструмент форматування[3].

Чому Rhomobile?

[ред. | ред. код]

Model View Controller

[ред. | ред. код]

Більшість фреймворків, які існують на ринку, засновані на HTML і JavaScript. Це змушує нас будувати бізнес-логіку в рамках JavaScript. Однак Rhodes базується на платформі Ruby та його структура аналогічна популярному фреймворку Rails, який також підтримує MVC, так що код, написаний з Rhomobile, є більш структурованим і легким для розуміння.

Крос-платформна підтримка всіх пристроїв

[ред. | ред. код]

Rhodes підтримує набагато більше операційних систем, ніж будь-які інші фреймворки: iPhone, Android, Windows Mobile, BlackBerry і Symbian. Найкраще те, що у вас є єдиний базовий код, з якого можна скомпілювати програми для різних смартфонів.

Автономна синхронізація RhoSync

[ред. | ред. код]

Rhodes підтримує локальну синхронізації даних. Старі сервера синхронізації не підтримують сучасних смартфонів, таких як iPhone і Android. Більшість розробників iPhone повинні писати свій код синхронізації. Можливість синхронізувати дані за допомогою RhoSync забезпечує режим автономної роботи. Ви можете працювати, навіть якщо знаходитесь в оффлайні.

Об'єктно-реляційної менеджер

[ред. | ред. код]

Rhodes надає вбудований об'єктно-реляційний менеджер під назвою Rhom. Він схожий на Active Record в Rails, але тільки з базовою функціональністю. Це допомагає нам писати запити, не думаючи про те, яка база даних використовується на смартфоні.

Швидка розробка

[ред. | ред. код]

Однією з цікавих особливостей є те, що Rhodes накладає деякі досить серйозні обмеження на структуру вашої програми, що допомагає швидкого та зручно розробляти програми. Rhomobile продукти належним чином структуровані і добре організовані. Використовується концепція швидкої розробки програм RAD.

Масштабований сервер синхронізації

[ред. | ред. код]

Сервер синхронізації використовує NoSql базу даних, яка робить його масштабованим. Крім того, RhoSync має кілька переконливих переваг у порівнянні з іншими серверами синхронізації. Зокрема, він є єдиним сервером синхронізації, який має вбудоване "no SQL" Redis сховище ключів, що робить його більш масштабованим, ніж інші сервери синхронізації, які пропонують реляційні бази даних для кешування.

Широке використання згенерованого коду

[ред. | ред. код]

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

Переваги

[ред. | ред. код]
  1. Весь проект має повністю відкритий код, який можна редагувати та змінювати в разі необхідності.
  2. Є можливість розгортання однієї кодової бази на декількох платформах.
  3. Компіляція відбувається за допомогою «рідної» програми, а не за допомогою HTML5 в мобільному браузері.
  4. Можливість взаємодії з такими пристроями як камера, GPS та акселерометр використовуючи JavaScript.
  5. Створений на мові програмування Ruby.
  6. Створення прикладних програм відбувається на браузерній основі з використанням RhoHub.
  7. Проста мультипристрійна та хмарна синхронізація даних за допомогою RhoSync.

Недоліки

[ред. | ред. код]
  1. Немає можливості виводу рідного коду, тільки вивід цільних пакетів.
  2. Використання RubyVM інтерпретатора для запуску прикладних програм.

Коротка інструкція по встановленню

[ред. | ред. код]
  1. Встановіть Ruby
  2. Встановіть GNU (зазвичай необхідно тільки для Windows)
  3. Встановіть Rhomobile Suite
  4. Встановіть Java Development Kit (необхідний для Android та BlackBerry)
  5. Встановіть Android SDK
  6. Встановіть iPhone SDK (необхідний разом з iOS)
  7. Встановіть BlackBerry JDK
  8. Налаштуйте джерела даних в Rhodes.

З повною інструкцією ви можете ознайомитися на офіційному сайті.

Підтримувані платформи

[ред. | ред. код]

Ліцензування

[ред. | ред. код]

Для запуску прикладних програм Motorola Solutions RhoElements потрібна ліцензія. Є кілька варіантів ліцензування, які доступні в залежності від конкретних потреб клієнта. В програмах, які не мають ліцензії буде виведено повідомлення при запуску, проте вони є повністю функціональними в рамках оцінки, розробки і тестування.

Комерційна ліцензія Rhodes обійдеться в $ 500 за одну створену прикладну програму. Вартість використання RhoSync починається з $ 5 тис. Підключення до RhoHub надається безкоштовно або за 20 або 100 доларів на місяць залежно від потреб.

Один і той самий ліцензійний ключ буде працювати на будь-якій операційній системі. Ім'я, пов'язане з ліцензією, зберігається у файлі журналу під час запуску програми. Конкретні функції, які вимагають ліцензії:

  • Mobile APIs
  • Motorola Solutions WebKit
  • Barcode extension
  • NFC extension
  • Database Encryption
  • Inline Signature Capture
  • Windows Desktop

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

Посилання

[ред. | ред. код]
  1. Rhodes smartphone development framework, announced that the company won the Best of Interop 2009 Award for Best Startup
  2. Rhomobile, one of six on-stage presenters, was selected as the People's Choice Winner on Wednesday, May 5 during Web 2.0 Expo San Francisco
  3. Motorola Solutions' RhoMobile wins About.com's 2013 Readers' Choice Award