- 博客(4)
- 收藏
- 关注
原创 .NET 剖析4.0上ExpandoObject动态扩展对象原理
在.NET/4.0它主打动态编程这应该是它的一大特性 但既然作为一个.NET技术平台的开发人员那么有必要去了解其运行原理 我不太清楚有没有人写过这方面的东西 但显然这对我而言并不重要下方通过一个动态字典的底层实现阐述 在blog上写的内容 建议读众应好好读过C#高级编程(入门)、.NET本质论、深入理解.NET、Win32核心编程上图是一张标准的动态对象扩展 我为它扩展一个Sa
2017-02-25 19:17:59 2339
原创 RFDBs 一款轻量级的文件型Key-Value大容量存储的数据库
RFDBs是一款文件型的Kv数据库它的应用场景主要被集中在我们的桌面客户端程序的中 一般桌面客户端应用数据库这块基本是自己设计自己做 用第三方?回到正题我并不是很欣赏这个Kv数据库的设计 虽然它是我亲手研发的 一种不是令我足够满意的方案 当然既然在我们客户端的基础设施中我已经添加进了对此数据库的支持 不过在这里需要注明在blog提出的文件数据库不会做任何的日志库俗称备库(假设如果程序挂掉时
2017-02-25 12:29:43 1838 3
原创 .NET 虚拟框架(Mock Framework)原理剖析
什么是虚拟框架?它实际上是一种用于方便单元测试用途的测试框架 在Nuget上面这类虚拟框架挺多的 推荐一些流行的虚拟框架如Moq、NMock2、Typemock等。那么虚拟框架听上去似乎很复杂 但从原理上它并不复杂 当然它的确可以阻碍大量开发人员 写这类的东西门槛会稍微高一些虚拟框架在单元测试中主要用于虚拟一个被测试或用于关注依赖处理的对象 它实际上是仿冒对象(fake object)的一
2017-02-22 22:21:46 3617
原创 .NET 内链钩子技术(inline-hook)
以前在别处写过类似的东西 什么是内联钩子技术?它到底有什么用 我们大概尽可能的授人以渔而不是鱼那么先稍微了解这个技术到底有什么用 1、如果我想对消息框窗体进行美化(重绘)而不是使用系统默认的消息对话框 但很多时候你可能无法管理这些消息对话框窗体的弹出(管理泄露) 它可能是介于某个被调用第三方模块内部的行为 也可能是由于开发人员想快速的实现偷功减料2、如果我需要去截获或修改自身程序网络层
2017-02-21 12:53:14 3057
Intel Smart Sound Technology (ISST) Driver
2024-08-01
serverspeeder 锐速
2022-09-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人