设想这样一个问题,即用户登录问题。在一个系统中,可能会有多种角色进行登录操作。可能有普通用户,VIP用户,后台管理员等等。这些角色的用户信息可能被分别储存在不不同的用户数据表中。但仔细问题,我们会发现,无论什么角色,在进行登录时,
基本上的操作流程都是:输入用户名、密码 -> 提交输入的信息 -> 服务器端进行数据验证 -> 返回验证信息(TRUE:进入相应的后台,FLASE:进入相应的错误处理流程.)
在普通的实现中,这些登陆可能是完全分开的,相互独立的模块。我们并没有从整体上进行控制。如果把这些登陆操作当做一个整体来看,我们就会发现这些登陆操 作存在着大量的,重复或者相似的代码。根据模板模式的定义,我们应该把这些重复或者相似的代码从各自独立的模块中抽取出来,做成公共的功能,而不同角色的 登陆控制就可以去扩展这些公共功能了。