Alan's profile一叶轻舟PhotosBlogListsMore ![]() | Help |
|
July 22 Assertions versus exceptions不看书“很久”了,不看杂志也“很久”了,希望有空能静下来看看书。下面转一篇Andrew Koenig大师的新近的一篇文章: Thinking about how to deal with incorrect input reminded me of a
place where I used to work. We were building C++ class libraries to
distribute to other developers in the company, and our managers imposed
a rule: No code delivered to customers could contain an
assert statment.The reasoning was simple, at least in theory: Our customers might use our code in high-reliability systems. An Interestingly, this took place before C++ had exceptions, which meant that there was no way of dealing with "impossible" conditions: All a program could do under such circumstances was return an error indication to its caller--an indication that the caller would probably ignore. Today, of course, we have exceptions; a fact that gives us the
opportunity to decide when we should use an exception and when we
should use an So the question comes down to this: Is it ever right to terminate a program unconditionally? The people in charge of the organization in which I worked at the time said no--total termination was something that we could never afford. But I thought then, and I still think, that this view was naive. For one thing, if you think you can prevent a C++ program from terminating by removing the Moreover, removing Not only that, but it is sometimes right to use an For example, consider a program that implements a doubly-linked
list. Such a list might be represented as a collection of nodes, each
of which has pointers to its prececessor and successor. In such a
program, one can reasonably expect that if
If this I believe, therefore, that when a program discovers something that is irrefutably wrong with its internal state, it is better off terminating at once, rather than giving its caller the opportunity to pretend that nothing is wrong. If you like, I think that exceptions should be reserved for
situations in which it is possible to do something sensible after
catching the exception. When you discover a condition that you thought
was impossible, it's hard to say much about what might happen
afterward.
July 18 怒!出离愤怒!居然能够0:3输给乌兹别克斯坦。赛前打死也不会相信这样的结局呀,27年首度小组没出线。心在滴血,太让人伤心了。我曾笃信中国队能够出线的,甚至希望下组第一出线,把棒子给打死,报20多年的仇。0:2那一刻水木上球迷终于忍不住开骂了,其中包括我!没想到亚洲杯我都还盯着看,有时真的“气”大眼的预测,咋那么的神准呢?难道骨灰级人物这么“巫”?怒其不争!!!为啥总是站着接球,为啥不会跑动中传接球,被棒子欺负了20多年了,还没有学会,小日本学的多好呀,真XXX!从战术和人员搭配,都错!老朱终于该下课了,事实证明中国足球变强大纯属自己yy。 写在比赛之前马上就要进行亚洲杯中国vs乌兹别克斯坦的比赛了,不管上场下半场打的多难看,还是希望这场比赛中国队能漂亮的赢下来。
祝中国队胜利! July 17 咋感觉就是隐隐的不爽呢?似乎浮在半空中的事情太多了,还带点漂!可以想象一下,有种感觉叫做郁闷,不是火山一样的爆发,却如细水一般长流。咋感觉就是那么隐隐的不爽呢?空虚的人在“动荡”的环境趋于更加的浮躁;浮躁的人在“漂”的空间释放更虚的空虚。难道这就是传说中的“更年提前期”?生活中需要点什么,异常宁静的湖面需要一颗小石子来打破那窒息的沉寂。勿论好与坏,应该来点变化的元素。疑似想的太多,束缚的越紧;看来踩踩雷炸掉点条条框框会好一些。释放也好,放纵也罢,要不咱来一个! July 15 国家队还是只能踢半场球主教练的临场指挥水平太菜了,起码削弱本队30%的实力。还有就是继海确实是老迈了;大头依然是无可争议的后方核心人选,近10多年来国内最好的中后卫,也许是历史上最好的;毛剑卿应该赢得更多的上场时间。
PS:西亚裁判真是黑,看来足球政治比想象中严重的多。 July 14 流水帐之远去的悠哉终于要结束“悠闲时光”了,前2个来月杂七杂八的事凑在一起,居然没有开始实质性的工作,虽然这种方式我感觉不太适合自己,但还是按mentor的计划安排来做。这样做的结果就是2个来月了,代码基本没看,本来就很复杂的系统,也很容易让人望而却步,嘿嘿,那些混杂代码实在引不起我看的兴趣。
终于自己也觉得这样下去有点不妥。客观上,成为闲杂人等,原因一是计划安排,二是division在英国裁员导致division的一些计划和项目处于不确定期,该transfer的一些东西还在协调当中,可是,这样下去对我很不利,万一某天被激活了,该上阵了,结果自己却还没准备好,那会是很糟糕的事情。自己该去做点什么了,于是去找manager要求是不是换种方式,让我去试一试一些Minor级别的东东。manager很爽快,立马让tech leader分配一个Minor CR,接到任务后心想终于可以“脱离”“闲杂”人等了。可是稍一了解才发现这个玩意没有想象中那么简单:曾经在我的mentor和另一位员工手上转手3次以上,说是Minor CR,其实是个enhancement,要做出来的前提是你对系统整个结构比较了解,熟悉里面的通信机制,消息流,控制逻辑,和好些库的接口,再在此基础上自己拿出设计并实现它,sigh,对于才开始看代码的我来说,短期内太为难我了(好几十w代码呀,顶)。这就是task,只有硬着头皮上,慢慢的“啃”代码,头晕呀,不过,还好暂时还没有deadline。
谁知道前天下午另外一个M team居然直接给我派一个所谓hot的Minor CR,这可把我整的满头雾水,咋会那边直接给我派活呢?不过,一看CC了manager,我也就只有认了,慌是因为俺还不熟呀,咋就上阵了呢,万一没有即时搞定,被劈那就惨了。一到inquest系统里面一看,运营商还催的紧,而且前面1月份就提交的问题,前面2个人做过investigation,大概问题域是搞清楚了,但最终还没有解决,又因其他高优先级的task取代,最终丢给我了。当天接到任务后,仔细的研究一下所谓的问题和前面他们做的工作,想想怎么去搞个lab来测试一下,谁知道我们team的lab都被占用了。第二天,也就是昨天开始看代码,爷爷的,涉及界面的那部分代码真难看,还有部分自动生成代码,看的云里雾里,看的很有挫折感,看着看着就放弃了,这样下去牛年马月才能解决问题呀。遂想该去找M team的人看看能否给借我个环境测测,否则,没法玩了。今天下午终于环境弄好了,开始把自己的想法付诸实践,写代码,编译,调错(好久不写发现功力减弱了不少),编译,然后到lab上运行,没想到第一个case的结果居然make sense,这时感觉真的很兴奋。不过,就在我认为问题临近解决的时候,M的tech leader要求立马征用该lab,因为很urgent的issue来了。sigh,只有让我歇歇了,不过,起码前面的思路应该是个方向,应该离解决就很近很近了,这次的奏效是基于前面2个人的成果上的,起码他们的尝试给我启发了。下周有环境了继续测试,最终pass的话,我又要回归代码海了(其实看着看着有时会想,做啥程序员呀,郁闷!),头晕现象又该回归了。
看来悠哉是暂时不可能了,希望我能早点再次悠哉。下次悠哉高度可不一样了。 July 10 我心依旧虽然我不踢球“很多天”,足球依然是俺的最爱!
今天晚上还是忍不住看了亚洲杯的比赛:马来西亚vs中国队,最终比赛定格在1:5。0:4后居然让马来西亚这样的队进球了,呵呵,中国队的“特点(弱点)”依然很明显,希望下场打伊朗能够挣点分吧。感觉继海和孙祥保留了很多实力,边路特点完全没有展现出来。不过,伊朗可是“试金石”。哈哈,看中国队打弱队心里好受些!这个是大实话呀!!! July 04 有一种声明叫做叫板今天在office里,听到一位jj用很“清晰”的声音在接听着一个电话--非常明显是个猎头或者上海的公司打过来的面试电话。很有“性格”的jj在接听时,选择在office里来回走动,而不去quiet room或空的会议室,这只能理解为向boss的一种叫板:俺可以炒掉你的!如果想要留住我,赶快给我加薪升职。呵呵,夸张吧,说嚣张其实也不为过! |
|
|