Tag Archives: design

Thoughts on SlimDX 2: Object Lifetime

This will likely be my last post on the subject of the major changes coming in SlimDX 2 for a little while. My last few posts have focused on issues we’re fairly certain will be relevant to the new API (as will this post) — but we don’t have everything planned out yet. We have

Hargreaves on Breaking Changes

Shawn Hargreaves has been writing about the upcoming changes in XNA 4.0 (interesting stuff). The topic is obviously one that resonates with me given my own recent posts. I particularly enjoyed this post. Back in 2007, when SlimDX was a young API, we had the luxury of having very few serious users. When we realized

Thoughts on SlimDX 2: Assembly Design

SlimDX 1 is contained in a single, monolithic C++/CLI assembly. SlimDX 2 is structured differently: it is split up into both public and private DLLs. The public DLL, which will be directly referenced by client code, is written in C# and contains the definitions for all the interfaces, enumerations, et cetera. The private DLL, written

Thoughts on SlimDX 2: Interfaces

One of the biggest changes we’re going to make in SlimDX 2 concerns our use of interface types (specifically, our lack thereof). In the current version of SlimDX, the API consists almost entirely of concrete classes. However, there are advantages to exposing interfaces instead — improved testability of the public API and code depending on