Archive for » 十一月 6th, 2008«

这一周比较闲~因为周四周五的时候Troy请假了~所以这两天子明告诉我怎么用iFlip对Inventor的一些Transcript进行测试,因为Team里面现在要准备一份报告,人手不够,所以我要帮忙加入进来~内容非常非常简单,我就不说了~可是因为我这个破电脑…所以周四一天基本上在装Inventor2010了,还没装好~~会有一个Licensing Error从而导致iTest无法在我这台机器上顺利运行~没法子,子明只好给我在服务器上开了个帐号,然后远程登录来跑这个Test了~~

头三天我在干嘛呢~因为Troy对我在C#中以发消息的方式和Provider沟通不是特别满意,所以他希望我能修改一下代码~可是这个挺麻烦的~Provider既要和C++沟通又要和C#互操作而且还要编译进一个Dll里面…难度挺大,至少我找了一天也没有找到什么解决方法~最后新建了一个C++/CLI工程~Provider用传统的C++和dllexport来做,至于C#,就用C++/CLI重新写了一个Proxy类,通过这个类来调用我的Provider.最后,在Provider上我加了一个Singleton模式~这可是我第一次用模式啊!小激动一下~~最近的效果挺好的,不过Troy比较忙,一直没什么时间给我Review,估计这个可以要拖下来了~

在公司的另外一个收获就是短短的7个星期我已经搜集了11本电子书了,而且是我几乎都没看过在.NET上特别新的书~~这个收获还是不小哒~哈,等实习结束以后好好学习~~C++、C++/CLI、C#,我就走C字路线鸟~~

不知不觉来公司正式工作已经到了第6周了~这一周开始,Troy要Review我的代码了,研究了三周也写了三周,是该出点成果的时候了~在Review代码的时候,Troy和我说了大概的方法,和我原先想的差不多,用一个文本比较工具(比如说WinMerge)比较出哪些地方不一样,这些地方就是你写的,然后再理顺一遍~不得不说,学校写的代码和公司要求的就是不一样~在写这个Provider的时候,我还是用了很多学校里面的恶习,比如说能懒则懒,找到了实现这个功能的一个方法就绝对不去想是不是有其他的方法…不过比较可喜的是我现在的注释写的比以前勤快的多~而且也遵循了”一眼就能看出意思的代码绝对不写注释”的原则~这部分代码其实我已经看了三周了,笔记也做了好几张纸,但是因为量比较大,还是挺容易忘记看了些什么写了些什么,这时候以前写的注释就可以让我很清楚了解为什么当时要这么写~~嗯,要保持下去!~转回正题,经过一周的Review,Troy先先后后给我指出了几个问题~

(1) 因为原来的Framework基本上已经CC(注:Code Complete)了,所以我们加的代码尽量不要插在代码中间,这样别人找起来会觉得很不方便~比如说在类定义的时候,用/占据一行并且标明这个的用途,然后重新写好声明~方便阅读

(2) 我们加的代码尽量抽象成为一个类,尽量不要成为我们要修改的类的数据成员或者成员变量~这样可以减少代码的关联度~当代码量比较复杂的时候他的可读性和维护性都会比较好~

(3)尽量一个类一个文件

虽然这些要求基本上都是对格式的要求,但是其实对于我这个还不到100行代码的小改动来说,规范了格式一样是对工程的重视~其实从这些小细节里面可以学到很多~

Category: 日记  Leave a Comment