Древовидная (а не HTML-основанная) веб-платформа?

Любой, кто пишет клиентский JavaScript, знаком с DOM - древовидной структурой, на которую ваш браузер ссылается в памяти, созданной из HTML, полученного с сервера. JavaScript может добавлять, удалять и изменять узлы в дереве DOM, чтобы вносить изменения на страницу. Мне очень приятно работать с ним (не говоря уже об ошибках браузера), и это сильно отличается от того, как мой серверный код должен изначально генерировать страницу.

Мой вопрос: какие серверные фреймворки / языки создают страницу, рассматривая ее как дерево DOM с самого начала - вставляя узлы вместо повторения строк? Я думаю, было бы очень полезно, если бы код на стороне клиента и на стороне сервера видел страницу одинаково. Вы, конечно, можете взломать что-то подобное вместе на любом языке веб-сервера, но фреймворк, предназначенный для создания страницы таким образом, может сделать некоторые очень хорошие оптимизации.

Открытый исходный код, широко распространенный и существующий некоторое время - все это будет плюсом.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
4
0
361
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

Я вижу, где вы и откуда, но это все немного спорный вопрос не так. Вы не можете отправлять в браузер ничего, кроме визуализированного контента, и вы должны делать все это за один раз (кроме AJAX). Нет никакой ценности в том, что вы предлагаете (из того, что я вижу), поскольку даже если вы построите его в виде дерева, вы все равно создаете страницу, которая отправляется оптом клиенту.

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

eyelidlessness 07.12.2008 06:22
Ответ принят как подходящий

Вы описываете Носорог на рельсах, которого еще нет, но скоро будет. Точно так же Аптана Джаксер, однако RnR будет включать реальную структуру (Rails), тогда как Jaxer - это просто серверная технология.

Вам может пригодиться сервер Aptana Jaxer AJAX, поскольку он также использует серверную часть JS.

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

Jaxer - это серверный javascript + DOM. Вы можете интегрировать jaxer с другими языками, постобработав их вывод.

Также в java, php, ... вы можете использовать xpath для управления DOM.

Другие вопросы по теме