惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 叶小钗
V
Visual Studio Blog
雷峰网
雷峰网
J
Java Code Geeks
博客园 - 三生石上(FineUI控件)
人人都是产品经理
人人都是产品经理
MyScale Blog
MyScale Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
B
Blog RSS Feed
C
Check Point Blog
博客园 - Franky
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 【当耐特】
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
V
V2EX
D
Docker
IT之家
IT之家
博客园 - 聂微东
腾讯CDC
U
Unit 42
Microsoft Security Blog
Microsoft Security Blog
The Cloudflare Blog

博客园 - 三颗纽扣

windows下安装redmine-2.1 try-cache-finally 在线程被杀掉时还有作用吗? 使用InfoBright实现20-100亿条原始话单记录的检索 Hibernate乐观锁真的会抛出异常吗? 并非文学化编程,在VS环境下的折中方案 快速复制NuGet引用 语义版本规范 在 IIS 6 上架设 NuGet Server DotNet开发利器之MyEclipseShortcuts 通过 POI 获取图片在 Excel 表格中的位置 我们是原始生物 没有别的,只有天使 灯是用来照亮的,而不是引路的 戒了,过去完成时 我送给你们的,没有别的——只有天使。 Builder 链——另类一点的Builder模式 多线程JUnit单元测试:GroboUtils and ConTest 控制内存的使用之二:对象缓存 pool and cache 控制内存的使用
基础框架的基础组件
三颗纽扣 · 2012-02-24 · via 博客园 - 三颗纽扣

做了一个星期的基础框架了,结果发现这一个星期数据库访问层基本没怎么动静,基本都在忙活所谓基础框架的基础组件的东东上面了。姑且总结一下,再做基础组件,就该知道先要有些什么了。

因为在单元测试的时候发现不论MSTest还是XUnit,都只是基础测试框架,要高效的写单元测试的代码,还是需要引入很多自己的扩展以及第三方的扩展,因此首先搞了个单元测试的扩展包CommonsTesting,包括神马自动装配、高级断言、复杂对象的比较、DBUnit等等。

然后发现做基础组件不像做项目,一旦发布,就一定要有一个有效的版本管理策略,例如CommonsTesing发布1.0.0后,我这里还在继续改,改着改着人家反馈BUG了,但这时候甚至都找不到发布时对应的源代码版本了,因此又搞了个AutoVersion,每次编译时自动将SVN的版本号编译到DLL里面,这样一看文件就知道它对应的SVN版本号了。

涉及到版本号了,又发现版本号的变更其实不是随意的,啥时候心血来潮了就升级某个版本号,这玩意原来也是有标准的,于是再定一个语义版本规范。

总算该准备的准备得差不多了吧,回过头来继续,结果发现测试时日志的输出看不到,当然简单的配置一下Log4Net也可以,不过总还是不希望每个每个工程都要去关注这些细节问题,于是新起一个工程CommonsLogging,根据约定自动进行日志的配置。

总算是可以再继续了,是不是还会遇到什么,姑且拭目以待 ……