自由行

2009-11-29

朝花夕拾

Filed under: 知识 — thomas @ 14:01

这几天考虑了很多细节,涉及到精益思想、敏捷软件开发、XqCap4等等,虽然思绪沸腾,却还是不能形成统一的文章线索。

在开发开发XqCap4的过程中,随手写了一点记录。内容是一定时间段内容开发的内容,如:设计,编码,调试,还有一点心得。既然还没有完整的线索,先整理一些素材也好。于是利用昨天晚上和上午的几个小时,录到文档。
note

软件工程中的思想、过程和方法,公司管理中的技术、项目、人事,涉及那么多的方面,错综复杂,一时难以概括,有待于进一步的总结,先做点的准备也好。

2009-11-26

精益思想的五个原则

Filed under: 知识 — Tags: — thomas @ 09:35

1.正确的定义价值;
2.识别价值流;
3.流动;
4.拉动;
5.尽善尽美;

2009-11-25

防御性设计

Filed under: 知识, 程序员 — Tags: — thomas @ 10:57

除0错误是一个典型的错误类型,也是程序设计时需要处理的问题。下面就介绍一个真实项目的例子。

在HB109R1 Camera项目中,时不时会出现除0错误,导致系统崩溃。后来经过分析发现,在图像缩放裁剪函数中对于尺寸参与了除法运算,如果传递进来的参数,长或宽为0,必然会导致除0错误。

解决这个问题的思路就是避免传递带0的参数,但是作为调用方,可能是嫌麻烦,几乎不做参数检查,结果传递的尺寸中有0,这就会导致除0了,系统也就必然会崩溃。

既然明确了原因,那么我们可以采取一个简单的防御设计。

TBool ValidateSize(TSize aSize);
TBool ValidateSize(TSize aSize)
{
	if (aSize.iWidth * aSize.iHeight == 0)
	{
		return EFalse;
	}

	return ETrue;
}

注意!只要有长或者宽有一个为0,则为无效参数。

在除法运算之前检查参数,如果检查失败,则跳过除法或返回。但是对于有返回值函数的就必须,有一个默认的返回值。当然这个返回值肯定不是调用者期望,不过这正好给调用者一个提醒,他传递了错误的参数。

2009-11-19

破解命运

Filed under: 知识 — Tags: — thomas @ 22:22

命运听起来非常神秘,其实不过是一种自然规律而已。而《易经》所揭示的正是宇宙人生的一种潜在的自然规律,那么如果我们掌握了这种规律,是不是可以在有限的范围内,掌控自己的命运呢?

2009-11-18

百姓日用而不知

Filed under: 知识 — Tags: — thomas @ 22:25

意思是老百姓天天在使用,只是我们不晓得我们在用它而已。

2009-11-07

感冒,忌运动,不宜思考

Filed under: 知识, 随笔 — Tags: — thomas @ 11:37

上周末就有点症状,流鼻涕,头痛,还好没发烧。由于有上次的教训,加上H1N1甲型流感的担忧,这次及早采取措施。

白加黑效果还不错,鼻涕和头痛的症状减轻了,不过有一点咳嗽。表姐提醒我还要配合吃一点消炎药,我没有太在意。但是这两天嗓子老是有一丝丝痰,忍不住要咳嗽,怪有一点难受。

后来买药的时候,药剂师问我买什么药,我首先想到止咳化痰,但是她推荐我吃点消炎药。这时我想起表姐的提醒,看来感冒并没有结束,只是换了一种表示形式,想了想还是决定配合起来吃,应该有两三天就可以恢复了。

从感冒中得到一条启示,应该持续关注病情和症状,不能只是觉得采取了一点措施就行了。另外一个方面是这一周在XqCap4上花费了不少时间,比较疲惫。想起来之前健康、快乐、自由的追求,为了开发软件而忽视健康,是不值得的。

那就休息吧。

Powered by WordPress