Architecture 软件工程中术语透明性的含义

Architecture 软件工程中术语透明性的含义,architecture,Architecture,在谈到代码透明性时,我经常感到困惑。 我试图澄清的是以下结构: 这对用户来说应该是透明的 缓存应该对应用程序透明 如果有人能用一些小的伪代码片段澄清这件事的实际意义,那就太好了 谢谢这通常意味着用户看不到它。用户可以使用该应用程序,但不知道功能是否存在 因此,为了使缓存“透明”,应用程序不应该知道存在缓存层。最容易用相反的例子来说明这一点,因为非透明缓存层需要应用程序调用方法来检查/终止缓存。这是否意味着如果我有@Cacheable(“users”)user getUser(int user

在谈到代码透明性时,我经常感到困惑。 我试图澄清的是以下结构:

  • 这对用户来说应该是透明的
  • 缓存应该对应用程序透明
如果有人能用一些小的伪代码片段澄清这件事的实际意义,那就太好了


谢谢

这通常意味着用户看不到它。用户可以使用该应用程序,但不知道功能是否存在


因此,为了使缓存“透明”,应用程序不应该知道存在缓存层。最容易用相反的例子来说明这一点,因为非透明缓存层需要应用程序调用方法来检查/终止缓存。

这是否意味着如果我有@Cacheable(“users”)user getUser(int userId)这样的方法,它对用户是透明的{?这对用户来说是透明的,而不是对应用程序。用户不知道有缓存。但是应用程序知道。@Cacheable意味着它知道东西正在被缓存。