abstraction相关内容

我应该如何正确实现核心 Clojure 接口?

如果我使用 deftype 在 Clojure 中实现一些数据结构,我应该如何决定 核心Clojure接口要实现吗? 我无法找到各种 Clojure 界面的综合指南;事实上,我能够找到的唯一相关信息是这个问题,范围非常有限. 我正在寻找的是每个核心 Clojure 接口的列表,简要说明它是什么以及何时应该实现它(或者你是否应该实现它!),以及clojure.core 中使用它的所有常用 ..
发布时间:2021-11-26 17:33:01 其他开发

在这个简单的例子中展示一流的功能

请使用这两个重叠的 Clojure 函数为初学者演示代码重用的一流函数(或其他一些函数式编程概念).基本上,使用函数式编程方法简化下面的代码块. 作为比较,你会如何用你选择的其他函数式语言来做到这一点? insertR 和 insertL 是简单的首次出现插入函数.如您所见,它们仅相差一行. ;测试用例(定义新键:蛋糕)(定义旧键:和)(def lat '(:培根:生菜:和:番茄:和 ..

调整包含 ref 参数的 C# 事件

我遇到的情况是,我必须使用包含大量事件的 3rd 方库,而且恕我直言写得不是很好.它触发了我必须在我的代码中处理的事件,但我试图将它抽象出来(以便能够对依赖于该库的其余代码进行单元测试),所以我需要一个适配器.问题是某些事件是采用 ref 参数的委托类型.以下是第 3 方库的外观示例: delegate void AdapteeEventHandler1(SpecificAdaptee send ..
发布时间:2021-11-26 17:32:38 C#/.NET

抽象/虚拟方法的通用返回类型

我有两个基类之间的关系: 公共抽象类RecruiterBase{//属性在这里声明//此处声明的构造函数公共抽象 IQueryable获取候选人();}公共抽象类 CandidateBase{//属性在这里声明//此处声明的构造函数} 以及它们的具体实现: public class CandidateA : CandidateBase{//此处声明的构造函数}公共类 Recruiter ..
发布时间:2021-11-26 17:32:26 C#/.NET

使用抽象类型的反射从表中获取实体

好的,所以我有一个名为 Product 的抽象类.我有 3 个表,称为 Items、Kits 和 Packages,它们实现了 Product.产品具有公开对象的主键的公共属性. 也就是说我有一个表格,我可以在其中传递产品.我想将该产品从新的数据上下文中提取出来,而不必编写反映其类型的大开关来获取其正确的表. 我想做这样的事情,但演员表不接受 foo. public BuilderI ..
发布时间:2021-11-26 17:32:17 C#/.NET

Objective-C:如何防止抽象泄漏

我认为在 Objective-C 中,我必须将实例变量声明为我的类的接口的一部分,即使这些变量是实现细节并具有私有访问权限. 在“主观"C 中,我可以在我的 .c 文件中声明一个变量,并且它在该编译单元之外不可见.我可以在相应的.h文件中声明它,然后任何在该编译单元中链接的人都可以看到该变量. 我想知道在 Objective-C 中是否有等效的选择,或者我是否确实必须在 .h 中为我的 ..
发布时间:2021-11-26 17:32:08 移动开发

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

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

在 WinForms MDI 中使用具有存储库模式的实体框架

我们即将启动一个与之前的项目类似的新项目.我可以复制旧设计,但我对旧设计不太满意. 它是一个“标准"业务系统(销售、库存盘点、仓储等),构建在 .Net 3.5(Winforms MDI)之上,后端带有实体框架. 所有表单都继承自一个基本表单(它继承了 Windows.Form).该表单公开了一个名为 ObjectContext 的属性,它在第一次调用时实例化一个新的 ObjectCo ..

函数式编程和依赖倒置:如何抽象存储?

我正在尝试创建一个具有较低级别库的解决方案,该库将知道在调用某些命令时需要保存和加载数据,但保存和加载功能的实现将在平台中提供- 引用低级库的特定项目. 我有一些模型,例如: type User = { UserID: UserID情况:SituationID 列表 }type Situation = { SituationID: SituationID } 而我想要做的是能够定义和调用 ..
发布时间:2021-11-26 17:31:35 其他开发

使用枚举选择要实例化的类

我有一个枚举,我试图将它与 dto 关联: 公共枚举 DtoSelection{dto1,dto2,dto3,} 这个枚举中有 108 个和值. 对于这些 dto 中的每一个,我都有一个 dto 对象: 公共类 dto1 : AbstractDto{公共 int Id { 获取;放;}//一些特定于此dto的东西} 我正在尝试创建一个方法(最终是一个服务),它将返回一个新的 dt ..
发布时间:2021-11-26 17:31:26 C#/.NET

是否可以在 Angular 2 上创建组件抽象?

我想创建一个具有初始行为的 AbstractComponent,同时能够在需要时在 child 上覆盖它,这可能吗?这是一个好习惯吗? 应该看起来或多或少像这样: 导出抽象类 AbstractComponent 实现 OnInit {构造函数(authService:AuthService,路由器:路由器){}ngOnInit() {如果(authService.userNotLogged ..
发布时间:2021-11-26 17:31:17 其他开发

抽象出 Matrix 库依赖项

我正在编写一个玩具线性代数库,用于学习和用于玩具神经网络库.我想使用不同的 Java 线性代数库来测试效率,但我被困在抽象中. 假设我希望我自己的矩阵抽象像这样: //我更愿意这样强制实现类是不可变的...//M是实现矩阵的类型公共接口 Matrix{M加(M进);//返回这个矩阵 + in//重载 add(T)//默认减法 = 加法 (-1 * T ..
发布时间:2021-11-26 17:31:10 Java开发

什么是相当于 glBegin/glEnd 的现代 OpenGL

我正在为 OpenGL 构建一个图形 API,它基于基本的调用绘制图形样式.基本上,不是将数据存储到 GPU 中,并使用它的句柄调用它,而是提供信息来绘制它应该绘制的每次更新的内容.我知道它很慢,但它很简单,而且适用于非性能关键应用程序.无论如何,是否有任何现代的 glBegin/glEnd 等价物?它不必调用每个顶点,而是一种我可以在每次更新时发送数据的方式,而无需将顶点存储在 gpu 中? ..
发布时间:2021-11-26 17:30:52 C/C++开发

Smalltalk 中的消息转发

所以我正在编写一个应用程序,其中一个对象有一堆将消息转发到的委托对象.这个想法是我可以说 someObject sendMessage:aMessage 并且 aMessage 将被发送到所有 someObject 的委托(对于 aMessage 的任何值).我能够做到这一点的唯一方法是: sendMessage:aMessage|sel chunks kwords arglist msg ..
发布时间:2021-11-26 17:30:41 其他开发

Cakephp:将 AppController 抽象到另一个层次,可能吗?

我想知道是否可以在 AppController 和我应用的其他控制器之间添加另一个抽象控制器? 这样我的控制器,例如UsersController 扩展了 SecureController和 SecureController 扩展了 AppController. 我还希望能够让其他控制器直接扩展 AppController:SomeNonSecureController 扩展了 App ..

如何用开放式类型在 Julia 中编写 Trait?

这是为了简化我问的问题的一部分 此处: 我想编写一些代码,保证在满足特定条件的类型上工作.假设今天我写了一些代码: 不可变示例随便::ASCIIString结尾功能 step_one(x::示例)长度(x.随便)结尾函数 step_two(x::Int64)(x * 2.5)::Float64结尾函数 combine_two_steps{X}(x::X)中间 = step_one(x)结果 ..
发布时间:2021-11-26 17:30:24 其他开发

接口抽象设计

目前,我尝试编写一个小游戏程序(Skat)作为业余项目.Skat 是一种花招游戏,由两名玩家对战一名玩家.由于有不同类型的播放器(本地播放器、网络播放器、计算机等),我想将播放器的界面抽象化. 我的基本想法是使用类型类 Player,它定义了所有类型的事情,玩家必须做和知道的事情(打牌,通知谁赢了,等等).然后,整个游戏只是通过一个函数playSkat :: (Player a, Playe ..
发布时间:2021-11-26 17:30:13 其他开发

枚举抽象问题

我目前正在努力解决 Java 抽象问题.我有这样的事情: 公共接口状态{};公共接口动态{getObservationChance(状态状态,观察观察);};class SpecialState 实现 State {};枚举 SpecialObservation() {免费、墙等.}class SpecialDynamics 实现 Dynamics {getObservationChance(状 ..
发布时间:2021-11-26 17:29:53 Java开发