特定领域作用域:Web应用中的作用域解析
1. 作用域基础概念
作用域是对象存在的上下文。当一个作用域结束时,绑定到该作用域的对象就会超出作用域;当作用域再次开始时,相同键的新对象会进入作用域。作用域也可以被看作是程序中对象状态保持持久的一段时间,即对象在这段时间内保留其值。
常见的作用域有单例作用域和无作用域。单例作用域的对象会一直存在,而无作用域的对象则只存在一瞬间。在某种意义上,这两种作用域是通用的,任何应用都可能会用到无作用域的对象,而大多数应用可能都需要访问单例上下文提供的一些长期存在的服务。
除了通用作用域,还有特定领域作用域,它们是根据应用的特定行为需求定义的上下文。例如,电影院在放映每部电影时都有特定的上下文。在多厅影院中,几部电影可能同时放映,每部电影都是一个独特的上下文。我们可以将这些上下文建模为注入器中的作用域。
2. Web应用中的作用域特点
Web应用是复杂的文档检索和传输系统,通常处理的是HTML文档。随着Web的发展,高度交互式的Web应用不断涌现,它们越来越接近桌面应用。然而,浏览器和服务器之间的数据传输基本协议变化不大,Web应用的上下文语义就体现在这个协议中。
与桌面应用不同,Web应用通常会有多个用户同时访问,用户可以随意进入和离开与Web应用的通信链。例如,使用谷歌的Gmail服务查看邮件时,用户先登录(请求收件箱文档),然后打开一些未读邮件(请求HTML文档),最后注销。整个过程中,Gmail在谷歌的服务器上持续运行。而像Mozilla Thunderbird这样的桌面客户端,执行相同的三个步骤时,程序会从头开始启动,并在完成后终止。
由于Web应用有大量用户同时使用
超级会员免费看
订阅专栏 解锁全文

1500

被折叠的 条评论
为什么被折叠?



