我正在设计一个 .NET API 以允许开发人员为3D 模拟足球联赛创建 RoboCup 代理。
我对 API 如何与 C# 代码一起工作感到非常满意,但是我想使用这个项目来提高我的 F# 技能(目前基于阅读而不是练习)。
所以我想问一下,在设计一个供 C# 和 F# 代码使用的 API 时,我应该考虑哪些事情。
一些点。
- 我相当大量地使用矩阵和向量数学。这些是当前不可变的类/结构。
- API 目前定义了一些与消费者实现的接口(例如:)
IAgent
,使用它们的实现实例(例如:)MyAgent
来构造其他 API 类(例如:)new Client(myAgent)
。 - API 触发事件。
- API 公开了一些委托类型。
- API 包括几个枚举。
我想尽快发布 API 的一个版本,并且如果我意识到从 F# 使用它太难的话,我不想在以后对其进行重大更改。任何建议表示赞赏。