提问人:user981165 提问时间:12/5/2014 最后编辑:Pedro Montoto Garcíauser981165 更新时间:12/5/2014 访问量:60
如果全球数据如此糟糕,为什么它不适用于数据库(从技术上讲只是全球数据)
If global data is so bad, why doesn't that apply to databases (being technically just global data)
答:
0赞
Pedro Montoto García
12/5/2014
#1
如果您有全局数据库访问器,则数据库只是全局数据,这是错误的。
从技术上讲,数据库是用于持久保存应用程序数据的数据存储,也就是说,在执行相同代码(而不是内存中数据)之间保留数据。数据库中的数据并不意味着代码的每个部分都可以访问,而只能访问特定部分。
1赞
Neville Kuyt
12/5/2014
#2
全球数据还不错。全局变量是坏的。
一些使全局变量变得糟糕的事情也适用于数据库。
全局变量引入了紧密耦合,这使得应用程序变得脆弱。数据库也执行相同的操作 - 除非您采取措施降低该风险,否则数据更改可能会破坏应用程序。ORM 框架所做的许多工作都与此相关——检查数据类型等。
全局变量使理解代码变得困难 - 您必须了解当前正在阅读的代码,以及该变量可能更改的所有其他实例。这也适用于数据库 - 同样,ORM 系统试图通过将数据库数据重新表述为应用程序数据来减少这个问题。
全局变量可能会引入并发问题。数据库通过事务来缓解这种情况。
所以,是的,使用数据库也有缺点。但对于大多数主流开发项目来说,没有太多选择......
评论