leaky-abstraction相关内容

我应该为我的不透明对象使用整数 ID 还是指针?

我正在一些图形 API(DirectX9 和 DirectX11)之上编写一个抽象层,我想听听您的意见. 传统上,我会为我想要抽象的每个概念创建一个基类. 因此,在典型的 OO 方式中,我将拥有一个类 Shader 和 2 个子类 DX9Shader 和 DX11Shader. 我会重复纹理等的过程......当我需要实例化它们时,我有一个抽象工厂,它将根据当前的图形 API 返回适 ..
发布时间:2021-11-26 17:31:57 C/C++开发

泄漏抽象的含义?

术语“泄漏抽象"是什么意思?(请举例说明.我经常很难理解单纯的理论.) 解决方案 这里有一个 meatspace 示例: 汽车有司机的抽象.最纯粹的形式是方向盘、油门和刹车.这种抽象隐藏了很多引擎盖下的细节:发动机、凸轮、正时皮带、火花塞、散热器等. 这个抽象的巧妙之处在于,我们可以用改进的部分替换部分实现,而无需重新培训用户.假设我们用电子点火替换了分配器盖,我们用可变凸轮替 ..

clojure.lang真的只是实现细节吗?

在Clojure中,一些任务(例如实例化 PersistentQueue 或使用 deftype 来实现与 clojure.core 函数)需要了解 clojure.lang 。 但是,根据 clojure.lang / package .html : 唯一被认为是公共API一部分的类是 clojure.lang.IFn 。所有其他类都应视为实现细节。 这些语句是否正确或过时?如 ..
发布时间:2020-10-02 21:52:10 其他开发

流利的界面和泄漏的抽象

什么是流畅的界面?我找不到很好的定义,但是我得到的只是用我不太熟悉的语言(例如C ++)编写的长代码示例. 还有,什么是泄漏抽象? 谢谢 解决方案 流利的接口是一种API,使您可以编写与普通英语大致相同的代码.例如: Find.All.Questions(Where.IsAnswered == true); 方法链通常用作实现的一部分,但除此之外,还有更多.引用 Fo ..
发布时间:2020-05-20 01:06:43 其他开发

泄漏抽象的含义?

“泄漏抽象"是什么意思? (请举例说明.我常常很难理解一个纯粹的理论.) 解决方案 这是 meatspace 示例: 汽车具有驾驶员抽象.最纯粹的形式是方向盘,油门和制动器.这种抽象隐藏了引擎盖下的很多细节:引擎,凸轮,同步带,火花塞,散热器等. 关于此抽象的整洁之处在于,我们可以用改进的部分替换实现的某些部分,而无需重新培训用户.假设我们用电子点火装置取代了分配器盖,而用可变 ..

我应该为我的不透明对象使用整数ID还是指针?

我在一些图形API(DirectX9和DirectX11)之上编写一个抽象层,我想要你的意见。 传统上,我会创建一个基类对于我想要抽象的每个概念。 所以在典型的OO时代,我会有一个类Shader和2个子类DX9Shader和DX11Shader。 我会重复纹理的过程等等,当我需要实例化它们时,我有一个抽象工厂,将根据当前的图形API返回适当的子类。 在RAII之后,返回的指 ..
发布时间:2016-10-27 02:58:52 C/C++开发

的N-分层不使用ORM,如何界面中指定它所需要的数据,以显示数据库应用程序?

我要找的指针和信息在这里,因为我怀疑它有没有单一的一个正确答案,我会做这个CW。这是C#,所以我就对下面的LINQ一些参考。我也道歉了长期职位。让我在这里总结一下问题,然后全部问题如下 摘要:在UI / BLL / DAL / DB 4层的应用,怎么能更改为用户界面,显示更多的列(在网格中说的),避免因业务逻辑层,到数据访问层漏水,得到的数据保持显示(假设它已经在数据库中)。 让我们假 ..