阅读随笔

停止思考是一种堕落


被别人指出自己的问题总不是一件会另人感到愉快的事情


同时,由于不愿意进行认真的思考和深入的剖析,我们也提出了许多自不量力、好高骛远和盲目冒进的策略和做法。


评判一个工具的好坏,评判使用一个工具的开发人员的水平高低,永远都只有一个标准--那就是看他能不能很好地解决所需要解决的问题。


现在已不是个人英雄主义时代了,没有合作就不会有进步,没有产业化则不会有真正的成功。


Coder不需要了解完整的软件开发思路,也不需要参与软件开发的全部流程,他只是根据设计人员所设计的非常详细的编码规定,用某种预定的程序设计语言书写出符合规定的源代码。因此,对于Coder的要求并不高,只需要他会使用某种开发工具,具备按设计要求编码的能力即可,而不需要他有软件开发的坚实理论基础,不需要他有很好的编程技巧,甚至不需要他懂得编码以外的任何事情。正因为如此,所以软件工人的收入往往不高(这也是我们的开发人员不愿意做软件工人的重要原因)。(他妈的简直就是在说我,操!!!!看来以后需要和上面列出的反着干)
程序员(Programer)是专业性的软件开发人员,他们的基本工作就是发挥自己的创造性和技术专长,设计和实现符合需求规定的软件实体,因此,程序员的工作既包含了编码,也包含了设计,这就需要程序员不光懂得如何写出程序代码,而且知道为什么要这么写,以及用什么方法去实现所要求的软件功能。因此,对程序员的要求就需要他懂得整个软件的开发流程,懂得软件运行和开发的基本原理,有经验和技巧,同时,为了有创造性地实现需求,需要程序员足够聪明,有软件开发的天赋。 
软件工人和程序员的不同任务,决定了对他们的不同要求,也决定了软件工人和程序员的不同特性。软件工人不需要有天赋,也不需要很聪明,只需要足够的培训就能够胜任编码的工作;而程序员则必须是非常聪明,有较强的逻辑思维能力和创造性的人。 
所以,如果你想做一个程序员,而不想做一个软件工人,你就必须有天赋,有悟性,并且不能仅仅满足于简单的应用型的编码,这也是我为什么说程序员必须懂得C和C++的原因;否则,你就应该安于做一个软件工人,用你的劳动换取收入,来供养你的生活。(真他妈侮辱人!!!!老汉偏不当Coder!) 




关于软件工程的应用: 
认为“不采用软件工程”也能做好软件产业化工作,这正是我们国内软件产业界落后思想的表现,也是软件企业短视、个人自由散漫、高傲自大的表现。如果这样的思想被多数人认可,将是我们软件产业界的一大悲哀。 
问题决不在于“用不用软件工程”上,这是无可置疑的。问题在于怎样去利用软件工程的思想和方法服务于我们的软件开发工作,这才是关键之关键。如果没有真正理解软件工程的根本思想,只是生搬硬套一些规程、文档格式和一些方法,给软件开发工作带来的只会是干扰和破坏,不会产生任何建设性作用。 
所以,我认为,现在首先应该普及的是软件工程的基本思想,把它灌输到每一个软件从业人员的头脑之中,而在具体规程和实施方法上,应该按照软件开发单位自身的特点,要明确地感受到其优点,而不会让大家感到厌烦。 
那么,软件工程的基本思想究竟是什么?我想也会有许多不同的观点,但我认为这样几点应该是共同的: 
(1)软件的开发一定要以产业化的思想来看待,强调合作和规范,杜绝随意性; 
(2)软件的开发过程一定要采用某种方法进行进度和成本的控制; 
(3)软件的质量必须得到保证,保证的措施一是提高开发过程的质量,二是通过严格测试; 
(4)客户的需求永远是软件开发的终极目标,客户的需求一定要准确,并且一丝不苟地满足; 
(5)软件开发的所有成果必须存在于容易理解的书面文件中,而不是仅仅存在于软件开发人员的头脑中。 


但是如果规范是错误的,你又不得不按规范执行,该怎么办呢???


在程序中最好不要用同义词,否则很容易让人出错!(见Status与State那篇文章)


他给我们的忠告很简洁:“好好学数学,好好学计算机,好好学英语。”


我认为学习多种不同的编程语言是非常重要的。
然而,也不能仅仅局限于程序语言,它仅仅是种表达算法和数据结构的工具--并且是种有缺陷的工具。如Niklaus Wirth有句精辟的见解:程序=算法+数据结构。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值