博文

软件工程师道德规范 (2005-11-17 23:44:00)

摘要:  软件工程师道德规范
1993年5月,IEEE计算机协会的管理委员会设立了一个指导委员会,其目的是为确立
软件工程作为一个职业而进行评估、计划和协调各种活动。同年,ACM理事会也同意设立
一个关于软件工程的委员会。到1994年1月,两个协会成立了一个联合指导委员会,负责
为软件工程职业实践制定一组适当标准,以此作为工业决策、职业认证和教学课程的基
础。为完成这项工作,他们提出了如下建议:
*采用标准定义;
*定义所需的知识主体和推荐的实践活动;
*定义道德标准;
*定义本科生、研究生(硕士)和继续教育(再培训和转岗)的教学课程
指导委员会决定通过设立一系列的专题组实现这些目标。最初的几个专题组包括:
软件工程知识主体和推荐的实践活动;软件工程道德和职业实践以及软件工程课程体系

软件工程道德和职业实践小组的目标是为软件工程师在道德上和职业上的责任和义
务制定一份文件。本道德规范(草案)由IEEE计算机协会和ACM联合指导委员会的软件工程
道德和职业实践专题组开发,并且已经过该委员会的审查。
任何规范,如果认真制定并正确推行,都会成为推动职业化和建立社会安全保障的
有力工具。它们不应该也不会只开花不结果,但这常常是人们对规范的错觉。本规范草
案是在对多个计算学科和工程学科规范进行广泛研究的基础上做出的,意在教育和激励
采用规范的职业群体和成员。规范也告诉公众,一种职业的职责及其重要性。规范向实
践者指明社会期望他们达到的标准,以及他们同行的追求和相互的期望。规范并不意味
着鼓励讼争,并且它们也不代表立法;但它们的确就影响专业人员及其客户的一些问题
给出了实际的建议,同时也给政策的制订者提供借鉴。
序言
现在,计算机越来越成为商业、工业、政府、医疗、教育、娱乐、社会事务以及人
们日常生活的中心角色。那些直接或通过教学从事设计和开发软件系统的人员,有着极
大的机会既可从事善举也可从事恶行,同时还能影响或使得他人做同样的事情。为尽可
能保证这种力量用于有益的目的,软件工程师必须要求他们自己所进行的软件设计和开
发是有益的,所从......

阅读全文(3468) | 评论:0

VB入门经验之谈(2005-11-15 11:16:00)

摘要:
                                                 VB入门经验之谈     在论坛会员“拓荒者”的要求下,现谈谈我学VB的几点经验。其实我只是入了门而已,在这高手云聚的CFANCLUB.NET中,我还只是一名小学生,许多人、许多东西都有待我去学习。本文只适合学VB还没入门的朋友阅读。     1、找一本标准的VB基础教材,只要一本,并且不要找那些大全、宝典之类的书,因为暂时还不适合你。     2、不要想一步登天,学一门语言没什么捷径,有的人学得快,只是他重视基础,而有的人基础都没打好,就急着去提高,结果学了很久水平都不上不下。请永远牢记,基础是最重要的!基础打好了,当你学其它知识时,就会得心应手,这是我最深刻的体会。     3、重视你的教材,每个知识点、每一道例题、每一种方法你都要深刻理解,不是死记,是要举一反三,有的知识点不要指望能看一两次就看得明白,不懂就看到懂为止。我记得当初看数据文件那一章,我足足看了七次。     4、认真做一次例题,这些题一般都很经典,最好上机运行一下,当然,也得做好每一章后面的习题。     5、再厉害的高手,记忆力都是有限的,所以养成做笔记的习惯是有必要的,你可以将重要的知识点整理一下,将你学到的、你认为有用的东西记录下来,当笔记做多了,你可以将它进行整理和分类,以后这笔记本就是你最好的工具书了,至于作用如何,你以后自然就会知道。 &nbs......

阅读全文(4726) | 评论:5

编程修养 (2005-11-15 10:39:00)

摘要:
———— 什么是好的程序员?是不是懂得很多技术细节?还是懂底层编程?还是编程速度比较快? 我觉得都不是。对于一些技术细节来说和底层的技术,只要看帮助,查资料就能找到,对 于速度快,只要编得多也就熟能生巧了。 我认为好的程序员应该有以下几方面的素质: 1、有专研精神,勤学善问、举一反三。
2、积极向上的态度,有创造性思维。
3、与人积极交流沟通的能力,有团队精神。
4、谦虚谨慎,戒骄戒燥。
5、写出的代码质量高。包括:代码的稳定、易读、规范、易维护、专业。 这些都是程序员的修养,这里我想谈谈“编程修养”,也就是上述中的第5点。我觉得,

果我要了解一个作者,我会看他所写的小说,如果我要了解一个画家,我会看他所画的图 画,如果我要了解一个工人,我会看他所做出来的产品,同样,如果我要了解一个程序员 ,我想首先我最想看的就是他的程序代码,程序代码可以看出一个程序员的素质和修养, 程序就像一个作品,有素质有修养的程序员的作品必然是一图精美的图画,一首美妙的歌 曲,一本赏心悦目的小说。 我看过许多程序,没有注释,没有缩进,胡乱命名的变量名,等等,等等,我把这种人统 称为没有修养的程序,这种程序员,是在做创造性的工作吗?不,完全就是在搞破坏,他 们与其说是在编程,还不如说是在对源程序进行“加密”,这种程序员,见一个就应该开 除一个,因为他编的程序所创造的价值,远远小于需要在上面进行维护的价值。 程序员应该有程序员的修养,那怕再累,再没时间,也要对自己的程序负责。我宁可要那 种动作慢,技术一般,但有良好的写程序风格的程序员,也不要那种技术强、动作快的“ 搞破坏”的程序员。有句话叫“字如其人”,我想从程序上也能看出一个程序员的优劣。 因为,程序是程序员的作品,作品的好坏直截关系到程序员的声誉和素质。而“修养”好 的程序员一定能做出好的程序和软件。 有个成语叫“独具匠心”,意思是做什么都要做得很专业,很用心,如果你要做一个“匠 ”,也就是造诣高深的人,那么,从一件很简单的作品上就能看出你有没有“匠”的特性 ,我觉得做一个程序员不难,但要做一个“程序匠”就不简单了。编程序很简单,但编出 有质量的程序就难了。 我在这里不讨论过深的技术,我......

阅读全文(4075) | 评论:0

编程入门:学习编程,从何入手(2005-11-15 10:23:00)

摘要:
编程入门:学习编程,从何入手
如果您想学习编程,却又不知从何入手,那么您不妨看看下面的几种学习方案,可能会给您一些启示吧!   方案一 Basic语言 & Visual Basic   优点
  (1)Basic 简单易学,很容易上手。
  (2)Visual Basic 提供了强大的可视化编程能力,可以让你轻松地做出漂亮 的程序。
  (3)众多的控件让编程变得象垒积木一样简单。
  (4)Visual Basic 的全部汉化让我们这些见了English就头大的人喜不自禁。   缺点
  (1)Visual Basic 不是真正的面向对象的开发文具。
  (2)Visual Basic 的数据类型太少,而且不支持指针,这使得它的表达能力很有限。
  (3)Visual Basic 不是真正的编译型语言,它产生的最终代码不是可执行的,是一种伪代码。它需要一个动态链接库去解释执行,这使 得Visual Basic 的编译速度大大变慢。   综述:方案一适合初涉编程的朋友,它对学习者的要求不高,几乎每个人都可以在一个比较短的时间里学会vB编程,并用VB 做出自己的作 品。对于那些把编程当做游戏的朋友来说,VB 是您最佳的选择。   Basic/Visual Basic简介
  方案二 Pascal语言 & Delphi   优点
  (1)Pascal语言结构严谨,可以很好地培养一个人的编程思想。
  (2)Delphi是一门真正的面向对象的开发工具,并且是完全的可视化。
  (3)Delphi使用了真编译,可以让你的代码编译成为可执行的文件,而且编译速度非常快。
  (4)Delphi具有强大的数据库开发能力,可以让你轻松地开发数据库。   缺点
  Delphi几乎可以说是完美的,只是Pascal语言的过于严谨让人感觉有点烦。   综述: 方案二比较适合那些具有一定编程基础并且学过Pascal语言的朋友。......

阅读全文(4220) | 评论:1

[强烈推荐]各种语言+SQL Server视频教程(2005-11-13 13:31:00)

摘要: 请大家右键点击地址下载 找了很久的 大家马上下吧 我也不知道 这个 可以免费下载多久!~ 以下是从网上获得的数个多媒体视频教程,经测试,可以下载(请尽快下载),希望正在学习以下内容的朋友支持一下。如果不能观看,请下载:http://bbs.cfanclub.net/viewfile.asp?ID=24637
VC:
http://www.edu.fp.net.cn/resource/program/y_vc/T101.avi
http://www.edu.fp.net.cn/resource/program/y_vc/T201.avi~
中间自己加
http://www.edu.fp.net.cn/resource/program/y_vc/T208.avi
http://www.edu.fp.net.cn/resource/program/y_vc/T301.avi~
中间自己加
http://www.edu.fp.net.cn/resource/program/y_vc/T307.avi
http://www.edu.fp.net.cn/resource/program/y_vc/T401.avi~
中间自己加
http://www.edu.fp.net.cn/resource/program/y_vc/T404.avi
VB:
http://www.edu.fp.net.cn/resource/program/y_vb/T101.avi
http://www.edu.fp.net.cn/resource/program/y_vb/T201.avi
http://www.edu.fp.net.cn/resource/program/y_vb/T202.avi
http://www.edu.fp.net.cn/resource/program/y_vb/T203.avi
http://www.edu.fp.net.cn/resource/program/y_vb/T204.avi
http://www.edu.fp.net.cn/resource/program/y_vb/T205.avi
http:......

阅读全文(4357) | 评论:3

【给年轻工程师的十大忠告】(2005-11-13 11:49:00)

摘要:

一个美国老工程师的心理话: 给年轻工程师的十大忠告

[1]好好规划自己的路,不要跟着感觉走!根据个人的理想决策安排,绝大部分人并不指望成为什么院士或教授,而是希望活得滋润一些,爽一些。那么,就需要慎重安排自己的轨迹。从哪个行业入手,逐渐对该行业深入了解,不要频繁跳槽,特别是不要为了一点工资而转移阵地,从长远看,这点钱根本不算什么,当你对一个行业有那么几年的体会,以后钱根本不是问题。频繁地动荡不是上策,最后你对哪个行业都没有摸透,永远是新手!   

[2]可以做技术,切不可沉湎于技术。千万不可一门心思钻研技术!给自己很大压力,如果你的心思全部放在这上面,那么注定你将成为孔乙己一类的人物!适可而止为之,因为技术只不过是你今后前途的支柱之一,而且还不是最大的支柱,除非你只愿意到老还是个工程师!   

[3]不要去做技术高手,只去做综合素质高手!在企业里混,我们时常瞧不起某人,说他“什么都不懂,凭啥拿那么多钱,凭啥升官!”这是普遍的典型的工程师的迂腐之言。8051很牛吗?人家能上去必然有他的本事,而且是你没有的本事。你想想,老板搞经营那么多年,难道见识不如你这个新兵?人家或许善于管理,善于领会老板意图,善于部门协调等等。因此务必培养自己多方面的能力,包括管理,亲和力,察言观色能力,攻关能力等,要成为综合素质的高手,则前途无量,否则只能躲在角落看示波器!技术以外的技能才是更重要的本事!!从古到今,美国日本,一律如此!   

[4]多交社会三教九流的朋友!不要只和工程师交往,认为有共同语言,其实更重要的是和其他类人物交往,如果你希望有朝一日当老板或高层管理,那么你整日面对的就是这些人。了解他们的经历,思维习惯,爱好,学习他们处理问题的模式,了解社会各个角落的现象和问题,这是以后发展的巨大的本钱,没有这些以后就会笨手笨脚,跌跌撞撞,遇到重重困难,交不少学费,成功的概率大大降低!

 [5]知识涉猎不一定专,但一定要广!多看看其他方面的书,金融,财会,进出口,税务,法律等等,为以后做一些积累,以后的用处会更大!会少交许多学费!!   

[6]抓住时机向技术管理或市场销售方面的转变!要想有前途就不能一直搞开发,适当时候要转变为管理或销售,前途会更大,以前搞技术也没有白搞,以后......

阅读全文(2922) | 评论:0

从初学者到编程高手,几种必学的编程语言[转帖] (2005-11-13 11:46:00)

摘要: 

对于初学者,我建议从 python 开始学。因为它在语言设计上很整洁,帮助文件也很全面。而且也是 object-oriented (O-O),尽管我把它作为一个初学者开始的语言,并不代表它的用处和功能不强大。实际上它是个功能强大,可以用来做大的编程工程的语言。
我知道国内对 python 可能还不了解,因为它相对来说也比较新(1990),到现在有12年的历史了,但是它在国外已经被广泛接受和认同,快速发展。不过我知道邮电出版社最近刚出了一本介绍 python 编程的书,大家可以查询。python 的主页 www.python.org

Java 也是个很好的语言来开始学编程。不过它比 python 复杂。国外的大学现在都采用 java 作为电脑专业的凯时语言。总之我觉得除了 python 之外,它也可以作为一个极好的初学者语言。

不过,会了这两种语言,并不代表你就是一个编程员了。学会编程的关键就是 -- “ 编程思想“ 。 学会怎样用一种很“ 广泛的思维“ 去考虑“ 编程问题 “,也就是这种思维是可以放之于任何一种编程语言都可以解决问题的,而不是局限于单纯的一种语言。这样当你需要学习一种新的语言时,你只要学习他的语法等等就可以了,至于怎样用这种语言解决编程问题不是早就在你的脑子里了吗。所以,这也就是为什么很多程序员可以拿到一种语言,一两个星期就可以使用的很熟练了。这,也同样要求你去学几种完全不同的语言。

C 语言是非常有效率的,很多时候你都需要考虑内存的管理等底层的东西。很可惜这些都需要你去花很多的时间去做,问每一个 C/C++ 的程序员,用 C/C++ 编程是不是一个很头疼的事。好消息是,现在的机器都已经很高级,运算的很快,在很多时候我们是不用考虑用 C/C++ 去做,忽略它所带来的好处,当然除非这个工程真的很需要处理底层的东西(象 内核的编辑,3-D 图形等)。很多时候 python, java 等都可以实现。另外在现在很多工程所要求的时间都不是足够充裕来用 C/C++ 去做,所以在商业上时间就是金钱,这个代价谁也付不起。

我这里并没有说 C/C++ 不好,你不应该学。相反我觉得我们应该学,但不是作为一个初学者的语言来学。在 C 和 C++ 之间,我推荐先学 C 。.......

阅读全文(3420) | 评论:0

程序员的10种级别(2005-11-13 11:40:00)

摘要:



第一级:神人,天资过人而又是技术狂热者同时还拥有过人的商业头脑,高瞻远瞩,技术过人,大器也。如丁磊,求伯君。

第二级:高人,有天赋,技术过人但没有过人的商业头脑,通常此类人不是顶尖黑客就是技术总监之流。

第三级:牛人,技术精湛,熟悉行业知识,敢于创新,有自己的公司和软件产品。

第四级:工头,技术精湛,有领导团队的能力,此类人大公司项目经理居多。

第五级:技术工人,技术精湛,熟悉行业知识但领导能力欠加,此类人大多为系分人员或资深程序员,基本上桀骜不逊,自视清高,不愿于一般技术人员为伍,在论坛上基本以高手面目出现。

第六级:熟练工人,技术有广度无深度,喜欢钻研但浅尝辄止。此类人大多为老程序员,其中一部分喜欢利用工具去查找网上有漏洞的服务器,干点坏事以获取成绩感。如果心情好,在论坛上他们会回答菜鸟的大部分问题。此级别为软件业苦力的重要组成部分。

第七级:工人,某些技术较熟练但缺乏深度和广度,此类人大多为程序员级别,经常在论坛上提问偶尔也回答菜鸟的问题。为软件产业苦力的主要组成部分。

第八级:菜鸟,入门时间不长,在论坛上会反复提问很初级的问题,有一种唐僧的精神。虽然招人烦但基本很可爱。只要认真钻研,一两年后就能升级到上一层。

第九级:大忽悠,利用中国教育的弊病,顶着一顶高学历的帽子,在小公司里混个软件部经理,设计不行,代码不行,只会胡乱支配下属,拍领导马屁,在领导面前胡吹海侃,把自己打扮成技术高手的模样。把勾心斗角的办公室文化引入技术部门,实在龌龊!

第十级:驴或傻X,会写SELECT语句就说自己精通ORALCE,连寄存器有几种都不知道就说自己懂汇编,建议全部送到日本当IT产业工人,挣了日本人的钱还严重打击日本的软件业!
......

阅读全文(2900) | 评论:0

一个假程序员的心里话[转](2005-11-13 11:17:00)

摘要: 
       我从事程序开发三年了,不算长,也不算短。在别人眼里或许可以认为高手,但我自己明白,我什么也算不了。

  记得还没毕业时,会用tc写几个cai软件,过了语言关,就以为自己是程序员了,很自喜,但毕业后去单位才发现,自己对于程序员这个行当来说仅是一个没入门的newbie.

  很幸运的是遇到了张哥等校友,教了我很多,其间学会了web开发,数据库,也略懂了一些tcp/ip协议,以为自己懂很多了。其间到一家小公司作了一年技术总监,感觉不错。后来公司破产,换到一家外企。

  在这里又有一番天地,发现自己什么也不是。编程? PHp方面我比他们走得早,会一些。说实话,语言这东西就象英语,很容易过去,关键是思维方式和经验(当然包括算法)。网络方面?在这里才开眼,我先前的那点功底只能算入门级,这个公司ccie就有4个,ccnp一堆。

  接触了一些unix,专用服务器,大型数据库。

  后来跳到一家网安公司,作了一些驱动。

  现在在一家公司负责产品研发管理,同时也兼作开发人员。时常也有自己感觉不明白的东西,计算机这东西,需要学的太多,而且你不能学会了再用,一边学,一边用,用完了就扔掉。
  以前在和luo谈话时有一些共识,现在的所谓程序好多根本不懂算法,数据结构一塌糊涂。我真的不敢叫他们是程序员,以为会点vb,能拖一些控件在上面就能叫程序?如果这样想,真的完了!

  首先声明: 我本人学历不高,只能算是半个本科,也就是比专科高点,比本科差点。 但现在的教育好象真的是“教育”,面试了不少研究生,真的不敢恭维,水平不如好多专科生。

  我并不是贬低学历,我本人也为学历吃了很多苦,现在还很辛苦地为了成为真正的本科,以至master而努力。但我觉得,好多人对不起头上的硕士帽。怪不得在新浪上看到,现在的硕士生只能相当于十年前的本科生,现在的doctor只能当二十年前的master. 特别是那些不入流的学校,大部分人简直在混时间。偶然看过几场master毕业答辩,真的是欲哭无泪。青春无价,为什么要混?

  当然,水平高的 bachelor,master,doctor也......

阅读全文(3255) | 评论:0