摘要:
Windows 8 RT是Windows runtime的简称,要理解WinRT先要了解一个问题,Windows NT开发时,实际上是支持很多CPU类型的,事实上他的确量产了某些CPU(例如安腾)的版本,只不过他的使用群体太少,很多人不知道而已。 所以Windows 8支持多种ARM Cpu其实是不难的事情,编写一堆的驱动就可以了。真的那么简单吗?当然不是,如果你的程序是本地应用程序,即那些程序直接使用特定CPU指令的程序,是不可以在各种CPU版本的Windows上运行的,很不幸,众多的C、C++编写的程序基本上都是这种。所以你现在玩的魔兽是不可以运行在ARM版的Windows 8上的。但有一 阅读全文
摘要:
我们知道Vistual Studio 2010提供了新的IntelliTrace智能追踪技术,他帮助我们不用单步调试就可快速的查看一段时间里发生的重要事件,关于智能跟踪可以参考《使用 IntelliTrace 调试应用程序》。但内置的事件往往还不够,我们希望扩展这些事件,本文就是介绍如何自定义扩展这些事件。 阅读全文
摘要:
接上篇继续,本文的完整源代码也在上篇文章中。枚举数组和普通枚举性能差异有些人可能知道,.net在处理枚举时,对于数组有特别的优化,所以,当枚举的集合是一个数组时,性能会好些。例如下面的测试代码: 1 class C1 { 2 3 public void Do1() { 4 int[] array = { 1, 2, 3, 4 }; 5 for (int i = 0; i < int.MaxValue/100; i++) { 6 DoIt1(array); 7 } 8... 阅读全文
摘要:
今天,我想跟大家聊一聊C#的性能优化,当然,这里并不谈基本的原则,这些都假设你已经非常精通了,本文聊的是要争取几个毫秒的程序。关于基本的性能优化,可以参考园子里的文章。比如:.NET 性能优化方法总结先说说我的测试环境:一台典型的笔记本电脑,Windows 7中文版,.net Framework用的是4.5版本,VS是现在VS11 beta版。我也是用VS2008这样的环境测试了下面的所有场景,发现没有任何区别,所以就以VS11为基准了。所有测试数据都是编译为Relase,且不包含PDB,直接双击运行而非在VS环境下执行。点击这里下载源代码。言归正传,先测试第一点:静态方法比实例方法快吗?我们 阅读全文
摘要:
测试 现有问题 “测试”这个章节被安排到最后才说,并不是他有多么的难,而是领导给我出了一个难题: 在之前,程序员提交的代码未经过严格测试就提交到TFS服务器,所以我们很难时时刻刻可以获得一个稳定的版本。因此,领导希望程序员提交的代码必须由测试人员测试通过,才能真正提交到TFS。 当前,我们是已经有一套流程来处理这样的需求的,做法是: 程序员通过”项目工具“签出代码,此部分的代码会被锁定,其他人... 阅读全文
摘要:
版本 大版分支 在发布一个稳定的版本后,我们会创建一个分支,这是因为我们的人力还需要马不停蹄的继续开发大量的新版本功能(修改代码),而客户使用的是稳定版本,但很难说不会有BUG,这个时候我们就可以在这个分支修改BUG,立即交付给客户。创建一个分支是TFS和很多源代码管理工具都自带的功能,可惜很多人不知道,我就啰嗦一下。 在TFS的“源代码管理资源管理器”中,找到你的产品单元目录,例如MyProdu... 阅读全文
摘要:
日常工作更新组件每个程序员在开始新的工作前,都应该先更新最新的组件,如果更新所有的源代码其实是非常耗时的动作,所以我们会仅更新最新的成果(即当前产品单元下bin目录文件),以及你当前已经打开的项目源代码。如果通过“项目工具”添加一个现有项目到解决方案,也会询问是否获取最新版本。由于之前做了大量的准备工作,所以更新非常容易,但我们仍然认为此动作太常用,所以在工具栏上包含了此按钮,他会通过TFS强制下载最新的bin目录文件。然后会将所有文件的只读属性去掉,为什么要这么做呢?不然你编译就无法覆盖这些只读文件了,这也是我为什么强调是“强制下载”的原因。有些时候,服务器上发布的版本有些问题,所以你可能希 阅读全文
摘要:
代码项目文件规划这里特别使用“代码项目文件”规划,我怕大家误解成在讲大型项目的项目规划,这里讲的是代码项目文件的规划,例如你使用C#开发,就是指那个*.csproj文件。项目的输出首选,你需要保证project输出到此产品单元的bin目录下,而不是默认的bin\debug这样的目录。打开项目的属性,下图是C#项目的设置:1、选择“Build 生成”;2、选择“All Configurations 所有配置”,保证Debug和Release都使用此配置;3、选择“Output path 输出路径”,指向产品单元的bin目录。4、如果你还有xml帮助输出,可以选择“XML documentatio 阅读全文
摘要:
在大型项目中,Project文件非常的多,如果没有很好的规划,会造成诸如dll版本不一致,打开的Project太多编译缓慢的问题,这都直接影响了工作效率。下面我将简要介绍我们在开发大型项目中,Visual Studio Project是如何规划的,从而规避很多的问题,提高工作效率。(注:此文仅适用适用Visual Studio开发的项目,对于其他项目可能需要修改)下面的所有实践都需要一个小工具,我叫他“项目工具”,这里我没有办法提供此工具,但你们的团队完全可以按照文章中的实践方案编写出自己的软件。规律在任何软件项目的活动中,均遵循下面的规律:这里的产品单元你可以认为是一个较大的,独立管理的单元 阅读全文
摘要:
本人属马,性格当然也就比较像了,昨天突然和老婆聊起住过多少地方,数了一下,哇,怎么住了那么多的地方,真是浪费钱财。先看一副城市迁移图:在安徽宁国,我的老家住过两个地方,就不画图了。下图是广州的。最初住在公司安排的宿舍,条件非常的好,可惜不知天高地厚,没有珍惜离开了公司。就开始了城中村的不断迁徙,算算应该是8个地方。后来跑到上海,也办了很多次家刚开始在浦东,最后跑到昆山花桥,跨度很大,所以不得不搞个放大图,得益于老婆最终决定买个房子,在宏图国际算是稳定了很长一段时间。在后来,我又折腾到深圳。刚到深圳住在公司宿舍桃源村,算是打头阵,老婆来了之后搬到南头,没过几个月就把昆山的房子买了,在龙华买了一个 阅读全文