返回介绍

洋葱圈模型

发布于 2024-08-15 12:54:36 字数 2513 浏览 0 评论 0 收藏 0

洋葱圈模型

我们把函数从内向外组合,把内层函数的执行控制权包裹成next参数传递给外层函数,让外层函数自行控制内层函数执行时机,我们再一次把控制流暴露出来,第一次是引入continuation,把return决定的控制流暴露到参数中。

于是 我们可以在外层函数 执行next的前后加入自己的逻辑,得到 AOP 的before与after语义,但不仅仅如此,我们甚至可以不执行内层函数,然后我们穿越地心的过程沿着某个半圆绕过了地核。

再或者,我们也可以放弃after,函数成为 前置过滤器,如果我们放弃before,函数成为 后置过滤器。

关于错误处理,我们可以在某层的函数 try-catch next调用,从而阻止内层函数的异常向上传递,想想我们在地底深处包裹了一层可以抵御岩浆外太空物质,岩浆被安全的阻止在地心。

事实上这就是一个极简的洋葱圈结构。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文