Информация об изменениях

Сообщение Re[9]: Пора уходить из .NET? от 01.10.2018 16:27

Изменено 01.10.2018 16:35 Serginio1

Re[9]: Пора уходить из .NET?
Здравствуйте, Cyberax, Вы писали:

C>Здравствуйте, Serginio1, Вы писали:


C>>>Он есть в JS, что автоматически делает его доступным в языках, которые просто транспилируют в JS. Например: Dart, Type Script, Kotlin.

S>> Но в WebAssembly то его нет.
C>Вот потому и не надо делать фреймворк на WebAssembly.
Угу. Хороший ответ.
C>>>Нету там ничего интересного. GWT v2.0 — версия для лузеров.
S>> А вот при чем тут GWT v2.0 и Blazor. В блазоре то Mono. Для шарпа это аналог http://www.cshtml5.com/
S>>https://metanit.com/sharp/articles/csharp/1.php
C>Та же идеология, видом в профиль.
Абсолютно другая. Одно дело делать Html страницу, другое встраивать приложение в браузер.

S>> У гибридного приложения на первом месте браузер у которого есть порт к нативным функциям

S>>у которых нет ограничений в песочнице.
C>Так Electron работает ровно так же. Только он может нативные модули подключать напрямую в JS-движок, и делать их доступными без сетевого вызова.

Так я и говорю про электрон как гибридное приложение. Со всеми его недостатками
https://habr.com/post/421227/

Основные минусы

Невысокая производительность

Сам по себе современный JavaScript использует JIT-компиляцию, хорошо оптимизирован и работает быстро, но построение интерфейса на основе DOM-дерева — не очень эффективный процесс. Использование современных JS-фреймворков даёт дополнительный уровень нагрузки. Для слабых телефонов и/или при активном использовании интерактивных элементов, это может быть проблемой.

“Ненативное ощущение”

Это довольно неформальный, но очень важный пункт. Сайт в браузере реагирует на жесты и отображается немного не так, как мобильное приложение. Наиболее заметный элемент этого ощущения, задержку 300ms при нажатиях, Cordova решает, но многие другие детали остаются.

Проблема браузерной совместимости

На старых версиях Android (до версии 5), WebView был частью платформы и не обновлялся автоматически. Соответственно, использовать современные возможности браузеров в гибридных приложениях на этих устройствах не получится.

Как следствие, гибридные приложения либо ограничивают минимальную версию Android (оставляя за бортом около 13% устройств на данный момент), либо включают WebView в код приложения (проект CrossWalk), увеличивая размер приложения на несколько десятков мегабайт.

Предназначение

Быстрое создание одноразовых приложений. При наличии существенного бюджета на разработку, гибридным подходом, как правило, брезгуют.

Re[9]: Пора уходить из .NET?
Здравствуйте, Cyberax, Вы писали:

C>Здравствуйте, Serginio1, Вы писали:


C>>>Он есть в JS, что автоматически делает его доступным в языках, которые просто транспилируют в JS. Например: Dart, Type Script, Kotlin.

S>> Но в WebAssembly то его нет.
C>Вот потому и не надо делать фреймворк на WebAssembly.
Угу. Хороший ответ.
C>>>Нету там ничего интересного. GWT v2.0 — версия для лузеров.
S>> А вот при чем тут GWT v2.0 и Blazor. В блазоре то Mono. Для шарпа это аналог http://www.cshtml5.com/
S>>https://metanit.com/sharp/articles/csharp/1.php
C>Та же идеология, видом в профиль.
Абсолютно другая. Одно дело делать Html страницу, другое встраивать приложение в браузер.

S>> У гибридного приложения на первом месте браузер у которого есть порт к нативным функциям

S>>у которых нет ограничений в песочнице.
C>Так Electron работает ровно так же. Только он может нативные модули подключать напрямую в JS-движок, и делать их доступными без сетевого вызова.

Так я и говорю про электрон как гибридное приложение. Со всеми его недостатками
https://habr.com/post/421227/

Основные минусы

Невысокая производительность

Сам по себе современный JavaScript использует JIT-компиляцию, хорошо оптимизирован и работает быстро, но построение интерфейса на основе DOM-дерева — не очень эффективный процесс. Использование современных JS-фреймворков даёт дополнительный уровень нагрузки. Для слабых телефонов и/или при активном использовании интерактивных элементов, это может быть проблемой.

“Ненативное ощущение”

Это довольно неформальный, но очень важный пункт. Сайт в браузере реагирует на жесты и отображается немного не так, как мобильное приложение. Наиболее заметный элемент этого ощущения, задержку 300ms при нажатиях, Cordova решает, но многие другие детали остаются.

Проблема браузерной совместимости

На старых версиях Android (до версии 5), WebView был частью платформы и не обновлялся автоматически. Соответственно, использовать современные возможности браузеров в гибридных приложениях на этих устройствах не получится.

Как следствие, гибридные приложения либо ограничивают минимальную версию Android (оставляя за бортом около 13% устройств на данный момент), либо включают WebView в код приложения (проект CrossWalk), увеличивая размер приложения на несколько десятков мегабайт.

Предназначение

Быстрое создание одноразовых приложений. При наличии существенного бюджета на разработку, гибридным подходом, как правило, брезгуют.


Все таки пока реальный подход это общий код, а UI отдельный для каждой платформы.
А здесь у Xamarin а есть преимущество в том числе и Mono в WebAssembly