Re[23]: За счет чего выстреливают языки?
От: alex_public  
Дата: 20.07.15 16:49
Оценка: :)
Здравствуйте, Гест, Вы писали:

_>> UI надо писать отдельно под каждую платформу

Г>— так, как оно должно быть (по крайней мере в современном мире). У каждой платформы свои метафоры и способы взаимодействия, а UI, который «одинаково работает на всех платформах» работает на всех одинаково погано (см. Tk)

Нет, это зависит от используемой архитектуры взаимодействия с платформой. Возможны 3 основных варианта:

1. Приложение использует нативные контролы (ну и всё остальное) платформы — выглядит везде идеально. Как хороший пример тут wxWidgets. Но из-за такого подхода могут возникать трудности в реализации. К примеру у них до сих пор нет порта под Android...

Xamarin формально тоже относится к этой области, но при этом у них не вышло создать кроссплатформенный api — приходится писать заново под каждую платформу.

2. Приложение рисует контролы само, но маскируется под нативные под каждой платформой. При хорошей реализации невозможно отличить от родного приложения, так что выглядит (и работает) всё идеально. Как пример Qt.

3. Приложение рисует само некий оригинальный интерфейс, одинаковый на всех платформах. Как пример вот тот же Tk, или некоторые Java решения. Действительно не очень естественно выглядит. Но есть одно исключение! Это HTML интерфейсы — пользователи уже в принципе привыкли к ним (никто же не требует, чтобы сайт выглядел по разному на разных устройствах) и воспринимают нормально на любых платформах. И вот Cordova как раз и реализует такое.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.