阅读 144

分层架构中回调的使用

分层架构

分层架构将系统分成许多组,每个组都包含解决特定问题领域的代码,这些组称为层。

大多数企业级应用程序具有三层高级应用程序架构。

  • 表示层

  • 业务层

  • 持久层

什么是回调?

回调,有时在计算机编程中称为“调用后”函数,是作为参数提供给其他代码的任何可执行代码,期望其他代码将在特定时间回调(执行)输入. 此执行可以立即执行,如在同步回调中,也可以稍后执行,如在异步回调中。

回调在编程语言中以多种方法实现,其中最常见的是子例程、lambda 表达式、块和函数指针。

分层架构中回调的使用

开发上层是为了使事情更容易使用(如 SDK),而下层是与网络(对于基于网络的项目)或系统级调用(对于基于 OS 的项目)接口的真正层。

因此,我们可以直接从较高层的源文件调用在较低层定义(和声明)的函数,并通过函数参数提供数据。但是,我们不能简单地从下层函数调用上层函数,因为这会导致循环依赖。结果,回调进入了画面。

  • 让我们假设upperlayer.clowerlayer.c分别是上层和下层的源文件。lowerlayer.hlowerlayer.c头文件。

  • 的功能参考notify_observer()被提供给lowerlayer.c为寄存器回调在一个参数upperlayer.c

  • 在底层,这称为注册回调。底层现在知道notify_observer函数引用。

  • registercallback()函数只是将函数引用保存在全局函数指针g_notify_ob 中,允许任何文件函数调用notify_observer()

  • 当下层需要将数据传送到上层时,它只是notify_observer()通过调用来调用g_notify_ob()


文章分类
百科问答
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐