· 大約16小時 ago
从空白的 Xcode 项目到可运行的 Hotwire Native 原型。
昨天我开了直播回答一个简单的问题:
我们能在不到一小时内完成多少关于原生 Fizzy 应用的开发工作?
如果您错过了,完整录音就在上方。感谢 Ivan Kuznetsov 、 Kamal Oguda 以及所有收听节目的朋友们!
最初只是想做个简单的实验,结果却演变成了一次有趣的演示,完整地展示了一个全新的 Hotwire Native #iOS 应用的整个设置流程。我们从一个空的 Xcode 项目最终开发出了一个可用的 MVP(最小可行产品)。我们甚至还实现了让应用记住你上次打开的是哪个 Fizzy 账户的功能。
以下是事件经过的简要回顾。
我首先简要介绍了 #Fizzy Web 应用,这是 Basecamp 对问题跟踪和看板管理的新诠释。它本身就支持移动设备,因此非常适合封装成原生应用。
接下来,我们直接进入了 #Xcode 的开发阶段。我们:
仅此一项就足以完成 80% 的功能完善,打造一款完整的移动应用。Hotwire Native 处理了大量的导航和渲染工作, 即使在最基本的状态下, 这款应用也已经拥有了原生应用的体验。
剩下的部分变成了一次小型建筑设计练习。
Fizzy 支持多账户,在网页版上,您可以访问网站时选择要打开的账户。但在移动设备上,点击应用图标应该会直接带您回到上次使用的账户。
因此,我们为设备上的帐户别名添加了持久化功能 。这样,每次应用启动时,它都能自动构建正确的 URL,并将您直接带回正确的工作区。
Fizzy 底层使用中间件来实现基于 URL 的多租户功能。当选择一个帐户时,中间件会为每个 URL 添加一个路径。
例如,当我在我的账户中查看卡号为 11 的条目时,URL 中加粗的部分就是我的账户别名:
https://app.fizzy.do/6100621/cards/11
我的实现成功了!但是上线运行之后,我和你们中的许多人一样,都想到了这个问题……
这就是流媒体的好处:你可以听到自己思考过程的声音。
将 slug 存储在本地是可行的,但几乎总可以通过让服务器来做出决策来简化业务逻辑。例如,使用 cookie 来跟踪您最近使用的帐户,这意味着客户端每次启动时都会访问同一个端点,服务器会将您重定向到所需位置。
这意味着更少的本地代码和更少的状态需要管理。如果我要继续开发这个应用,这就是我接下来会探索的方法。
作者 Joe Masilotti
來源 https://newsletter.masilotti.com/p/missed-the-fizzy-livestream-heres
與您的關注者分享。
回覆