TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

What Is Server-Driven UI?

55 点作者 krzyzanowskim超过 3 年前

21 条评论

marstall超过 3 年前
Son, let me tell you bout a little thing called the web
评论 #28383515 未加载
评论 #28384575 未加载
评论 #28383072 未加载
spyspy超过 3 年前
This is how the iOS NYT Crossword app works. We called it the Server View Model (SVM). The server and UI have &quot;card&quot; models that are described as protobufs and assembled and sent by the server when the user opens the app. The UI has tons of personalized data, so a purely native UI would require several fetches anyway. It allowed us to add features like &quot;From The Archive&quot; in a few days without a formal app store release.<p>Admittedly it was a weird DSL and I can&#x27;t say for sure I&#x27;d do it again.
评论 #28383488 未加载
hitekker超过 3 年前
I found this comment to be a thoughtful critique of Server-Driven UI: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=27708631" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=27708631</a>
评论 #28394475 未加载
recursivedoubts超过 3 年前
Hyperview is an open source tool by InstaWork that leverages the hypermedia model for mobile development:<p><a href="https:&#x2F;&#x2F;hyperview.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;hyperview.org&#x2F;</a><p>They created it after seeing how effective the intercoolerjs&#x2F;htmx approach was for their web application.<p>Hypermedia is a neat approach to building applications. We should look into it more.
评论 #28384382 未加载
评论 #28384604 未加载
joshribakoff超过 3 年前
My team is trying (something like) this pattern out. Initially I had the sentiment that many commentators here had, “this feels like re-inventing HTML”.<p>After discussing more the benefits, I am in favor of us using the pattern because it means we’re moving a lot of complex logic about deciding which “tiles” to show off of the front end client(s) where it can be hard to maintain. We’re centralizing it one place in the backend and surfacing higher level decisions to hide or show the tile, rather than surfacing lower level data the clients need to crunch and reduce into a decision about a tiles visibility . Since the server is a single place to determine which tile to show, we can do things like quickly disable a feature for whatever reason.<p>We’re cognizant it <i>could</i> become over complicated if we try to do something like reinventing flex box, but I think that using the pattern tactfully is sensible. We’re specifically only doing SDUI to decide which “tiles” to show, not to try to power things like the layout which we are hard coding on the client. I think of it less as SDUI (buzzword) and instead think of it as a helpful way for my teammates to understand “thin client fat API”
评论 #28394157 未加载
phpnode超过 3 年前
Now we just need a four letter initialism in order to describe this mechanism. Maybe JUDL? (JSON-based User-Interface Description Language), or if we were to switch the representation to something more SGML-like, maybe UIML (pronounced wee-mull)
评论 #28384361 未加载
评论 #28383472 未加载
tootie超过 3 年前
This is a CMS isn&#x27;t it? Haven&#x27;t we been doing this forever? CMS for apps has been a bit behind where it is for the web, but it still exists.
评论 #28383463 未加载
chacham15超过 3 年前
Basically React-Native with the html coming from a server. I dont buy the argument that this will fly with Apple+Google. They like to be in control of what your app experience is and this by definition is contrary to that.
评论 #28384407 未加载
评论 #28384410 未加载
develatio超过 3 年前
This is just plain HTML presented as some JSON-like format. How many times are web developers going to reinvent the wheel instead of using what&#x27;s already there?
评论 #28383676 未加载
评论 #28383867 未加载
thrill超过 3 年前
So, a markup language and style sheet?
traverseda超过 3 年前
What? Why isn&#x27;t it an embedded web app at that point?
评论 #28383453 未加载
评论 #28383044 未加载
kitanata超过 3 年前
everything old is new again
评论 #28383260 未加载
frazbin超过 3 年前
This is probably best understood as an advanced adaptation to the particular difficulties of deploying into a walled garden. That&#x27;s certainly how the author frames it. The similarity with web comes because of shared restrictions (untrusted client application, deep server side data, document based layout). The differences come from the proprietaryness of app ecosystems-- the taint of unfreedom propagating from the platform into an app-specific DSL.
bob1029超过 3 年前
We&#x27;ve been doing something like this since 2014 for an enterprise iOS application.<p>I can&#x27;t imagine us being where we are at today if we had to make a trip through shitty iOS toolchain every time we tweak a UI element. We have very complex &amp; custom views per customer.<p>If I had to do it all again from zero today I&#x27;d use pure HTML solution. The advances in open web capabilities give us what we need now.
handrous超过 3 年前
&gt; Server-driven UI is new<p>Uh, no, not at all.
m33k44超过 3 年前
Whenever this idea is mentioned, I cannot resist posting this project: <a href="https:&#x2F;&#x2F;github.com&#x2F;jasonelle&#x2F;jasonelle" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;jasonelle&#x2F;jasonelle</a>
Gys超过 3 年前
Reminds me of <a href="https:&#x2F;&#x2F;jasonette.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;jasonette.com&#x2F;</a> which also uses serverside generated json to show content in a mobile app.
syysilma超过 3 年前
can&#x27;t imagine this is good for people on slow &#x2F; no connection - the example given is for something that already obviously requires internet, but it&#x27;s no panacea for slow updates
评论 #28384357 未加载
namanaggarwal超过 3 年前
Server driven UI - Fancy name for web browser ?
评论 #28386720 未加载
filipo超过 3 年前
Turbolinks&#x2F;Strada allows this as well…
winrid超过 3 年前
TLDR; Basically a meta data driven engine on the client and a server that sends configuration to render the UI.<p>Kind of like... a browser. :)