Website development
Open source
JavaScript
.NET
Development of mobile applications
Comments 9
+2
Как-то раз участвовал в проекте, где надо было разобрать и задокументировать сложное Web приложение (онлайн-казино) написаное на Bridge.NET. Одной из целей проекта было покапаться и выдать фидбэк начальнику и коллегам об адекватности изучения и использования bridge.net в следующих проектах. Вывод был отрицательный — не понравилось что слишком много тащит кода в JS. Куча System библиотек, переведенных на JS, просто вставляется в один файл с логикой приложения. Полностью от разработки на JS избавиться сложно и получается этакий Франкенштейн с гигантским объемом сиситемного кода на JS.
Честно говоря, для нового проекта можно уже смотреть на Blazor — решение такой-же проблемы, но системные dll нет необходимости конвертироввать в JS.
0
Blazor — решение такой-же проблемы, но системные dll нет необходимости конвертироввать в JS.

При этом тащится еще и рантайм.
-1
Согласен, это один из основных недостатков Bridge.NET. При этом, трудно представить как можно реализовать функции .NET в JS по-другому. Возможно единственное решение проблемы — это разбивка bridge.js на модули. Это позволило бы подключать только те системные классы/библиотеки, которые по факту используются в проекте. Данная функциональность уже давно обсуждается на GitHub.
0
На мой взгляд, пропустили вариант — это сделать асинхронный callback-запрос на сервер для валидации полей на сервере. Подобно тому, как это делают формы регистрации с проверкой занят ли указанный логин.

А так я тоже соглашусь с тем, что сейчас Blazor выглядит очень интересным вариантом при решении таких задач.
0
Верно, асинхронные вызовы часто используются для подобных задач. Правда, эта идея не столь показательна, если говорить про снижение нагрузки на сервер, однако, в некоторых задачах без нее никуда (та же проверка занятости логина). Для тех, кому интересно как подобное может быть реализовано с помощью Bridge.NET — в этом примере продемонстрировано выполнение Ajax запроса.

По поводу Blazor — безусловно, это интересный фреймворк, и как только Microsoft выведет его из Preview, я думаю, он найдет много последователей. В то же время, и Bridge.NET может занять свою нишу, например, в частности применения binding'ов для существующих JS библиотек, здесь можно посмотреть несколько демок: demos.retyped.com

Проекту Retyped явно есть куда развиваться. Однако уже сейчас для некоторых библиотек предоставлен достаточно годный API. Например, интересно, насколько похожими получились реализация на C# и оригинальный код на JS в данном демо.
0

Я для этого изделия городил реализацию React-компонентов на Razor. Получаются вот такие вот монстрики. И даже в райдере нормально работает автокомплит.


Но в прод это дело не потащил просто потому, что BCL там свой и порезаный (нет и не будет вещей типа WeakReference, например), а потому любые библиотеки под него надо перекомпилировать. Опять же нет аналога IL Linker, так что размер JS-кода выходит неприлично большой, тот же блазор можно ужать до меньших размеров.

0
нет и не будет вещей типа WeakReference, например

А в JS они вообще существуют?

Only those users with full accounts are able to leave comments. , please.