探索Web领域特定作用域:从概念到实践
1. 作用域基础概念
作用域是对象存在的上下文。当一个作用域结束时,绑定到该作用域的对象就会超出作用域范围;当作用域再次开始时,相同键的新对象会进入作用域。作用域也可以被看作是程序中对象状态保持持久的一段时间,即对象在这段时间内保留其值。
常见的作用域有单例作用域和无作用域。单例作用域的对象会一直存在,而无作用域的对象则只存在一瞬间。这两种作用域具有普遍性,任何应用程序都可能会用到无作用域的对象,而大多数应用程序可能需要访问单例上下文提供的一些长期存在的服务。
除了这两种普遍的作用域,还有特定于某个问题领域的领域特定作用域。这些作用域是根据应用程序的特定行为要求定义的上下文。例如,电影院在放映每部电影时都有特定的上下文。在多厅影院中,几部电影可能同时放映,每部电影都是一个独特的上下文。我们可以将这些上下文建模为注入器中的作用域。观看《公主新娘》的观众与在另一个影厅观看《哥斯拉》的观众处于不同的上下文。
2. Web应用中的作用域
Web应用是一种复杂的文档检索和传输系统,通常处理的是HTML文档。随着Web的发展,高度交互式的Web应用已经出现,它们现在与桌面应用非常相似。然而,浏览器和服务器之间的数据传输基本协议仍然保持不变,Web应用的上下文语义就体现在这个协议中。
与桌面应用不同,Web应用通常会有许多用户同时访问。这些用户可以随意进入和离开与Web应用的通信链。例如,使用谷歌的Gmail服务查看电子邮件时,用户首先登录(相当于请求收件箱文档),然后打开一些未读邮件(相当于请求HTML文档),最后注销。整个过程中,Gmail一直在谷歌的服务器上运行。而像Mozilla T
超级会员免费看
订阅专栏 解锁全文
7718

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



