LINUX.ORG.RU

Как оформить веб-приложение без веба? Принципиально ново и модно?

 , ,


0

1

Допустим, у меня есть какое-то веб-приложение. Допустим, я осознал тленность бытия, ненужность веб-технологий и решил удалить из него все похожее на HTML/CSS/JS(ON), равно как и web-специфику, вроде как Куков и Спамов. Что останется в итоге?

Мысли:

Если от веб-приложения отодрать HTML, то отображать UI уже нечем. Значит надо изобрести свое, скорее cli-based, чтобы сохранить принцип «один запуск - один запрос». Если делать полноценный GUI (или TUI), то надо изобретать уже сессии, этим можно закрыть вопрос с Cookie. В принципе, можно было бы сделать некий бинарник, который как-то запускать локально.

Так как большинство «контента» в веб-сайтах и веб-приложениях должно быть проиндексировано поисковиками, то веб-приложения оптимизируют «для чтения». Как минимум, это ваше REST API напрямую декларирует возможность чтения тех или иных URI, половина модных фреймверков начинается с описания роутинга для чтения тех или иных разделов. А нельзя ли как-то так сделать, чтобы не писать это? Тогда может быть и не нужен бинарник, который запускать локально? Каждый URI разложить по каталогам на файловой системе, внутри просто положить txt/pdf-файлы с контентом «для чтения». Но как постить новый контент?

А может быть можно порезать наше приложение как-то иначе? К примеру, в Android приложения порезаны на кучу компонетов, которые в свою очередь, порезаны на 4 класса: Активити (что видит пользователь), Сервисы (что работает в фоне), Бродкаст-Ресиверы (что принимает какие-то события и быстро завершается) и Контент-Провайдеры (то, что предоставляет свой контент и не занимается его отрисовкой). Последние - отличные претенденты на то, чтобы заменить вьюшки и при этом не писать код для отрисовки. Сервисы - для постинга нового контента. Активити - если сильно надо нарисовать вьюшку или страницу настроек.

А может быть какие-то интересные подходы из области VR или блокчейна?

В общем, как бы выглядело веб-приложение без веба?

Дисклеймер:

Тред предназначен для мозгового онанизма с целью создания принципиально нового языка программирования, принципиально нового нескучного дистрибутива и принциально нового нескучного политического строя. Готовые решения на общеизвестных языках или библиотеках не интересны в принципе, зато очень интересны принципы в крутых библиотеках или языках. Особенно интересны те, которые вызывают вопрос «что курили авторы».

Если ты можешь сделать wasm безопасным значит ты можешь сделать и жабу безопасной. Шо то ВМ это это ВМ. Загрузка и запуск программ это тоже в свое время решенная задача.

@ya-betmen, я далёк от знакомства с деталями, но с самого начала при проектировании wasm приоритетными целями были минимизация размера бинарника, безопасное выполнение недоверенного кода, плюс, по-моему, выполение по мере загрузки из сети. Что из этого справедливо для java машины? Кроме того, сам набор команд / поведение подбирались исходя из возможности оптимизации на современном железе, по каждой из архитектур был профильный специалист. Не могу оценить результат, но подозреваю, что один фактор 20-лет, что прошло с момента создания java, должен был сыграть на руку wasm.

KolyaKirgiz
()
Ответ на: комментарий от KolyaKirgiz

Легко решается соглашениями

Веб обязывает отдавать html, поэтому есть возможность его парсить. Всякие facebook препятствуют парсингу, но это всё ещё возможно. Соглашение же подразумевает желательность, а не обязательность. Многие станут чёрными ящиками, парсить которые дорого и сложно. Это очень плохая замена вебу, но для приложений — в самый раз.

Есть риск, что wasm приколотят к конкретным реализациям с drm, из-за чего пользователи потеряют контроль над wasm-браузером. Сама по себе идея интересная, но её возможная реализация вызывает опасения.

InterVi ★★★★★
()

Значит надо изобрести свое, скорее cli-based, чтобы сохранить принцип «один запуск - один запрос». Если делать полноценный GUI (или TUI), то надо изобретать уже сессии, этим можно закрыть вопрос с Cookie

https://github.com/charmbracelet/wish например, предлагают делать приложения с TUI-интерфейсом и запускать их по ssh

Lrrr ★★★★★
()
Ответ на: комментарий от InterVi

Веб обязывает отдавать html, поэтому есть возможность его парсить. Всякие facebook препятствуют парсингу, но это всё ещё возможно. Соглашение же подразумевает желательность, а не обязательность. Многие станут чёрными ящиками, парсить которые дорого и сложно. Это очень плохая замена вебу, но для приложений — в самый раз.

Для html ведь тоже никто никогда не запрещал использовать картинки для отображения текста, чтобы «защититься от копирования». Можно отрисовывать элементы на webgl канвасе, делать многие другие мазохистские штуки вплоть до рисования с помощью CSS. Тут вопрос только в экономике. Владельцы сайтов, как правило, заинтересованы в посетителях с поисковых систем. И в минимально-допустимой юзабильности.

А ещё, если делать новый браузер маркап разметки без необходимости запускать приложения (на базе, например, того же «wasm браузера»), можно выкинуть легаси в виде тысяч свойств CSS в одном глобальной неймспейсе и COMEFROM парадигмы, родить что-то более изящное и менее многословное, чем HTML, с поддержкой из коробки матем. и пр. научных символов, например, и с учётом несколько-векового опыта типографики.

KolyaKirgiz
()
Ответ на: комментарий от KolyaKirgiz

А я тоже так думаю, но в тему подходит)

goingUp ★★★★★
()

Перепиши влоб на дельфи 7. Удивишься как много мусора из статей дипломированных индусов валится

DumLemming ★★★
()

в твоем городе уже за +40C?

seiken ★★★★★
()
Ответ на: комментарий от ruzisufaka

Зачем? Например, локальная википедия или локальный OSM для себя любимого. Сеть вообще не нужна.

Тогда, я вообще не понимаю, чего ты хочешь. Подними на локальной машине Apache HTTP Server, загрузи (скопируй) туда своё приложение - и пользуйся им на здоровье, по адресу 127.0.0.1. При правильной настройке, можешь его и по локалке раздавать, и по wi-fi, чисто себе любимому.

Может, я не понимаю чего-то, конечно...

cadaber ★★
()
Последнее исправление: cadaber (всего исправлений: 1)
Ответ на: комментарий от cadaber

Может, я не понимаю чего-то, конечно…

Это поможет избавиться от зависимости от внешнего сервиса, но не позволит убрать зависимость от петушиных «веб-технологий»

ruzisufaka
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.