繁体   English   中英

在应用程序中使用抽象层时,您是否需要数据库方面的深入知识

[英]Do you need deep knowledge in databases when using an abstract layer in your application

大多数(如果不是全部)MVC框架在数据库上提供抽象层,除了在某些非常特殊的情况下,您无需手动编写SQL代码。 当然,您需要了解设计模型的基本知识,但是我们需要深入了解如何优化查询,创建触发器和其他数据库资料。

阅读Joel Spolsky的“泄漏抽象定律” 在理想的世界中,数据抽象层使您远离复杂性,但是除非您了解复杂性,否则在泄漏的那一天,您将完全陷入tar中。

除非您为数据抽象层编写代码。

这就是重点。 它上面的任何一层都不需要知道数据库的类型或结构是什么,甚至不需要知道。

开始将特定于数据库的东西拖回整个数据层到业务逻辑中是一个常见错误。

严峻的考验是,如果您将数据库从SQL更改为Oracle或MySQL,那么其余代码仍将正常工作。 如果不是,则您的数据层无法正确执行其工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM