西西河

主题:【原创】乱侃软件工程师的素养 1 -- poorfat

共:💬71 🌺108
全看树展主题 · 分页首页 上页
/ 5
下页 末页
家园 呵呵,这一条深有同感

不过我是写文档,然后被自己骂的那个。。。经常会忘记文档不是用来充数,而是给别人看的。。。

幸好我们公司小,测试和设计都是我做的,所以,经常是2个月之后再翻文档都忘了是什么东西。。。然后自己骂自己。。。呵呵,后来那一批文档,几乎全是重写的

家园 软件工程的大作业,

我们那时候整个学期就两个作业,一个是个人完成的,读取两个位长很大(大约是填满半个9吋屏幕)的自然数,完成加减法,输出结果。另一个是由3-4人的集体完成,读取一个文件,用海明码压缩,生成新文件,再解压缩。最后解压缩的没做完。

90年代初,上机时间少,大部分工作是在纸上完成的,用的PASCAL,加上解释行的语句,简直就是写作文。

家园 这么弱智的程序员都有?

为什么不直接用sdk直接提供的方法呢?

家园 应该经常沟通,明确各人的任务进度,有问题及时提出。
家园 顾客永远是正确的,错的是产家,程序员在这里无辜的顾客
家园 这人已经滚蛋了,

按照他的说法:sdk又不是我写的,我怎么知道里面有什么方法。

由于“工作态度不正确”,试用期一结束就让他走人了,后面来的人给他擦屁股又擦了1个月。

家园 相对来说一些现在的动态语言,如ruby更加接近自然语言

可读性更好,更优雅一点,呵呵。

家园 新手犯这样的错误还是可能的

不至于这就让人滚蛋吧。

这个bug,其实QA的责任一点不比这个Developer小,显然没有边界条件这个test case,或者没测啊。

家园 加一条

如果所有地方都加log,一定会影响程序效率。而且log file会变得庞大无比和饱含太多冗余信息而几乎无用。

通常的做法是

1)log分级,通常是DEBUG, INFO, WARNING, ERROR.

2)关键地方log,而不是所有地方log。

3)其他地方尽量多用assert。

出问题,可以让客户降低log level,或送个debug build过去。

家园 没看懂

用户拿到的是什么东西?如果是已经编译过的机器码,写成一行和写成三行没有区别吧。 如果是源代码,用户自然知道怎么跟踪。

而且,既然这三个函数是你的实现,你当然可以把它们封装起来,用户连到底和几个函数相关都用不着知道。用户知道出错了就可以了。就像你说的,

客户只会给你打电话抱怨说你的产品又坏了

我不认为

如果你把三个函数调用分别放在三个IF语句里,

里有任何好作用。

唯一可能有作用的是

分别用不同的错误代码

可是这个完全是接口设计的责任,而不是程序员的责任。为了便于排错,正规的做法是使用不同级别的log.

家园 建议你search一下 exception safety

如果坚持某个级别的exception safety,你所反对的代码完全是合法的。

感觉你们编程部门水平不成呀,log都不分级?

家园 不见得,讨论一下

这个写法实际上是有performance上的好处的,这是因为C里面对if中条件处理的编译优化决定的,如果这些func123比较expensive的话还是挺不错的。分在三个嵌套的IF里面的话也可以,但是只要返回码一样对你还是没什么帮助。

当然你说到可测试性等等确实是一个很好的点,我只是说事情的因素有很多,最后的实现是一个综合考虑的事情。

其实QA和程序员之间的误解和战斗在过去,现在,将来都是一个永恒的话题。你的帖子给我的印象是带了一个预设的前提就是可测试性是对你来说最重要的,但是显然程序员有别的因素要考量,因此不见得同意你的观点。

家园 中肯,花一个
家园 他在试用期的工作态度和技术水平让他走人,不光是因为这个
家园 我觉得此人有这个"sdk又不是我开发的"观念就完全不能用

推卸责任,熟悉sdk是从事该工作的基本素质.自己不具备还不虚心接受,这会让愿意帮他的人也泄气的.

全看树展主题 · 分页首页 上页
/ 5
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河