博文

论程序设计方法(转载)(2006-02-25 23:19:00)

摘要:   (转载的)其中有些观点你可能不同意,我也不是全部赞同。你不同意的可以提出来我帮你分析分析作者:杨老师如果你是初学者----------------请不要阅读;但有志成为中高级程序员--------请务必阅读;如果你是中级程序员------------请务必阅读;如果你高级程序员--------------请批评指正。  本文是我在“软件工程师班”开学第一节课的讲义,和“计算机软件设计发展”讲座上的内容整理而成。写作本文的目的是引导学生从更高的层次来看待程序设计方法,为将来成为高级程序员而做好理论准备。一、计算机硬件环境对软件设计方法的限制  计算机的发明到现在已经60年了,计算机程序设计方法也伴随着计算机硬件技术的提高而不断发展。硬件环境对软件设计既有严重的制约作用,也有积极的推动作用。  在我的大学母校(此处删除6个字),数学系的一些老师,有幸成为了我国第一代的计算机DIY一族。呵呵,不要以为是组装PC机呦,他们组装的可是小型机。一人多高铁皮柜大小的主机,加上纸带机(后期改进为读卡机),组装好后,除了供学校自己的科研使用外,还在全国各地销售了十几台。当时(七十年代)一台的售价是10几万元人民币,如果换算到今天,相当于价值大约为100多万元,非常高档的小型计算机了。下面大家猜猜,这么高档的计算机,它的内存是多少那?(都把嘴闭好了,我要公布答案了)—— 4K。一块50公分见方的内存板,插入到主机箱中,好了------ 1K;再插一块内存板,好了------ 2K;再插一块内存板,好了------ 3K;再插一块内存板,好了------ 4K;再......不行了,插不起了,太贵了!这就是当时的环境。这样的环境下,用什么写程序那?当然只有机器码了。先用汇编写,然后翻阅手册手工改写为机器码,然后打卡或穿纸带,输入运行。可以想象,在当时的条件下,什么叫好的程序那?什么叫优秀的程序那?—— 技巧!  程序设计的最初始阶段,是讲究技巧的年代。如何能节省一个字节,如何能提高程序运行的效率,这些都是要严肃考虑的问题。而所谓的程序的易读性,程序的可维护性根本不在考虑范围之内。  今天,35岁以上的学习过计算机的朋友可能都使用过一种个人计算机——APPLE-II(中国也生产过这种计算机的类似产品“中华学习机”)。主频1M,内存48K(扩展后,最多可达到64K)。我就......

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

程序员的人生感慨的参考(转载)(2006-02-25 23:00:00)

摘要:   在我觉得我老了以后! 九月十一,是我生日,全世界都在关心拉登杰作周年纪念,也是我做计算机组成试验的第一天。我在面包板上发了几块74LS34,74LS194,74LS74等等,接好线,打开电源,清零,启动,然后就看到上面的指示灯按照我设计的节拍把放在锁存器里面的数据放到自己设计的四位总线上,然后在不同的节拍送到不同的芯片,一丝不苟,跟计算机里面的时钟周期一模一样......我突然觉得,我对软件设计,失去兴趣了. 回想最当初,也就是初中,用edit做一个bat出来,也是很大的乐趣,到了高中,用javascript做html,更是可以给同学大大炫耀一番.进入计算机系,浏览大大小小的网站,两年的大学生活更开阔我的眼界.不过,我的学习热情,都是从问为什么开始的.我记得我的第一个为什么就是"计算机在起动前为什么知道启动区在磁盘的什么地方?",然后就是"为什么字符串组成的代码能够让网页动起来",接着是"既然我的编译器要在操作系统下面才可以工作,那么操作系统又是怎么写出来的呢"甚至是"汇编语言的编译器是用机器语言写的,但是没有现成的程序,怎么让计算机识别键盘的输入呢......这些问题,伴随着我的学习过程,可以说是动力的来源.因为我每次了解了一个知识点,就有新的,而且往往是更基础的知识点冒出来,源源不断.所以就不断地学,不断地深入.但是,当我看到我在实验室做的"计算机的一部分"正常工作的时候,我突然感觉,那些所谓的"为什么"都不重要了,因为计算机大不了就是这么回事.因为我已经可以用基本的三态电路做个很简单的芯片和辅助系统出来了,用手动节拍来控制它的工作.到这里,再也问不下去为什么了.因为不管什么程序不管什么系统,也就是控制这个节拍的规律.突然觉得,虽然我还有很多不懂,但是,也不是我一直在寻找的本源了! 我不知道应该对这种感觉说什么,解脱?我回忆起学程序设计语言的过程,我当初学习的动力,并不是学了要解决什么实际问题,不过是想证明我能过让他动起来而已!但等我了解多一点以后,才发现高级语言没有其他基础的服务,也是不能让我随心所欲操纵的.所以就去看汇编,看操作系统,看进程源语.最开始写dos下的程序,对自己很不满,因为我用的都是在windows下运行的.等我可以写windows程序的时候,我却发现为了支持通配符和灵活的参数我更宁愿他在命令行执行.在我学c语言的时候......

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

如何使用google解决问题(转)(2006-02-25 22:49:00)

摘要:如何使用google解决问题 redguardtoo著 文章选自2004年《程序员》杂志第8期P56 前面收集了篇如何问问题的文章就是《学会提问》http://blog.programfan.com/article.asp?id=7207,觉得很不错,这里继续有关如何解决问题,安安注 本文介绍了使用google解决难题的一些高级技术,重点讲述了如何选择关键字,如何分析过滤信息等等。 目录 (目录及一些声明还有最后提供的技巧是网上热心读者,安安注) 1. 声明 2. 本文所面向的读者 3. 如何使用google解决各种问题 3.1. 不可能完成的任务 3.2. 如何快速解决具体技术问题 3.3. 如何解决复杂抽象的问题 4. 如何提高自己的搜索能力 4.1. 态度决定一切 4.2. 疯狂搜索法 4.3. 如何提高“搜索素养” 5. 相关的工具、资源 1. 声明 请读者不要使用本文所介绍的技巧从事违法、不道德的事情。我对于本文所导致的任何后果概不负责。 2. 本文所面向的读者 本文介绍了使用google解决难题的一些高级技术,重点讲述了如何选择关键字,如何分析过滤信息等等。通过阅读本文,你会明白在极大的时间压力下快速解决高难度问题的技巧。你也能了解如何对一些复杂的问题进行调查并给方案。 (任何对解决问题有兴趣的人都适合阅读本文,只要: 你不相信“软件蓝领”的说法。你相信解决问题的能力是人的本能。你相信任何问题的本质都是一样的。你相信解决问题需要的能力是想象力和举一反三的能力。 说的明白一点,我希望读者是有职业荣誉感的工程师,或者是能够理解这种荣誉感的人。有些人害怕自己即将被技术的进步所淘汰,于是试图通过贬低技术人员的地位来获得安全感。由于他们不能否认技术所取得的伟大成就,于是使用一些政治手腕来间接地达到目的。最常用的手段就是虽然技术是伟大,但是工程师是分等级的(是不是封建残余思想作怪?),低级的工程师就是蓝领,而中国需要的是大量的蓝领,等等。这种有封建残余思想的人是不可能学习新东西的,当然也不可能理解本文,因为要成为google高手,就必须具备开发的头脑和丰富的想象力。) 上面括弧里面的不是原文内容,可能是网上读者所加,安安注 ......

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

Windows常见快捷键(2006-02-25 22:41:00)

摘要:一、常见用法: F1           显示当前程序或者windows的帮助内容。 F2           当你选中一个文件的话,这意味着“重命名” F3           当你在桌面上的时候是打开“查找:所有文件” 对话框 F10或ALT        激活当前程序的菜单栏 windows键或CTRL+ESC   打开开始菜单 CTRL+ALT+DELETE     在win9x中打开关闭程序对话框 DELETE         删除被选择的选择项目,如果是文件,将被放入回收站 SHIFT+DELETE      删除被选择的选择项目,如果是文件,将被直接删除而不是放入回收站 CTRL+N         新建一个新的文件 CTRL+O         打开“打开文件”对话框 CTRL+P         打开“打印”对话框 CTRL+S         保存当前操作的文件 CTRL+X         剪切被选择的项目到剪贴板 CTRL+INSERT 或 CTRL+C  复制被选择的项目到剪贴板 SHIFT+INSERT 或 CTRL+V 粘贴剪贴板中哪谌莸降鼻拔恢?ALT+BACKSPACE 或 CTRL+Z 撤销上一步的操作 ALT+SHIFT+BACKSPACE   重做上一步被撤销的操作   Windows键+M       最小化所有被打开的窗口。 Windows键+CTRL+M    重新将恢复上一项操作前窗口的大小和位置 Windows键+E       打开资源管理器 Windows键+F       打开“查找:所有文件”对话框 Windows键+R       打开“运行”对话框 Windows键+BREAK     打开“系统属性”对话框 Windows键+CTRL+F    打开“查找:计算机”对话框 SHIFT+F10或鼠标右击   打开当前活动项目的快捷菜单 SHIFT          在放入CD的时候按下不放,可以跳过自动播放CD。在打开word的时候按下不放,可以跳过自启动的宏   ALT+F4         关闭当前应用程序 ALT+SPACEBAR      打开程序最左上角的菜单 ALT+TAB         切换当前程序 ALT+ESC         切换当前程序 ALT+ENTER        将wind......

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

大学BBS十大经典搞笑签名(来自新浪)(2006-02-25 22:36:00)

摘要:大学BBS十大经典搞笑签名来自新浪作者:淘气太郎007  发表日期:2005-07-22 10:45:29  希望大家开开心心no1:大学这四年里,我一直认为自己是个人才,可是我错了,我不是!我tmd竟然是一个天才!!! no2:1949年9月28日,我被捕了。第一天,敌人严刑拷打我,我没招。第二天,敌人用辣椒水泼我,我还是没招。第三天,敌人用美人计,我招了。第四天,我还想招,可tmd的解放了! no3:俺用筷子把刚刚打的米饭里的一根“头发”高高举在食堂窗口,看着食堂师傅脸上青一阵白一阵那狼狈样,俺心里一阵狂得意:嘿,今儿中午吃饭又可以不花钱了。旁边盛菜的小伙抬头看见了,一拍大师傅的肩膀:“老刘,刚才小便又没洗手?” no4:我把硬币抛向空中——如果正面朝上,就上bbs ;如果背面朝上,就上qq ;如果硬币立起来,我就去自习~ no5:你:每个女孩都曾是无泪的天使,当遇到自己喜欢的男孩时,便会流泪——于是坠落凡间,变为女孩。所以男孩一定不要辜负女孩,因为女孩为你放弃了整个天堂! 我:虽然我不是把你从天使变成女孩的那个人,但希望我是把你从女孩变成女人的那个人~(汗ing) no6:一只狗去山里创业,农夫给了它一把镰刀,木匠给了它一把锤子。狗来到山里突然遇到一只老虎,吓得它赶忙把镰刀锤子举了起来,老虎见了哈哈大笑说:“哟,小样儿,还是个党员哩!” no7:我用心变成大树为你挡风遮雨,你却将它砍成一片片来生火;我用爱做成翅膀带你去天堂,你却用刚才的火把它做成了肯德鸡香辣鸡翅~ -_-! no8:a:“你到浙大来做什么?” b:“混。” a:“离开浙大后你想成为什么样的人?”b:“混混。” no9:说几万年后,一群考古系的学生在某大学遗址发现一块化石,但只能断定是雌性动物,遂问其教授这到底是哪个物种的化石,教授认真研究了一番,突然激动的泪流满面说:“同学们啊,这就是传说中的‘恐龙’啊!!!”(我倒~) no10:(电子科大)绝不让一个处女走出校园!!  ......

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

软微学院生涯(大结局篇)----三朝元老经验谈终结版(2006-02-25 22:32:00)

摘要: 软微学院生涯(大结局篇)----三朝元老经验谈终结版    最近工作比较忙,实在没时间,最后要说点什么呢?好象已经该说的都说得差不多了,人生规划还是要及早做来,我看到我们BBS上有一个这方面的文档,大家可以看一下http://bbs.ss.pku.edu.cn/cgi-bin/topic.cgi?forum=143&topic=75&show=0 (内部论坛外网可能看不了)希望大家都能够早日成为这种有独立思考和判断能力的人.   终极版写点什么好呢?就写点我个人和我听到其他软微学院老生的悲惨经历,希望大家看清楚前面的路.其实也不一定算是弯路了,条条大道通罗马,也许有了这些经历后也会闯出一片更好的天地也说不定,但愿给大家带来点启示就好了.李敖前几天在清华演讲说到,现代人挺可怜,通过电脑和网络可以获得太多的知识,但如何分析判断这些知识的价值和如何使用却很让人头痛,所以我会尽量举些不同的例子,希望大家自己好好分析判断.   首先说说一年理论学习与实习的关系,以及对未来的作用.我们学院比较有特色的就是学习期间就比较重视与实际工作的不脱节,大家在上课时会模拟一些项目,会成立小组做项目,基本上和实际工作中的环境相似.所以我们在一年中要认真的对待这些项目,将来实习时很有可能会因为你这个项目做得好与实习项目相关而被实习公司相中.已经实习和正在找实习单位的同学都有这样的体会,实习单位面试时一般会问你做过和这些项目,以及你在项目中的角色和体会.你至少要有一二个非常典型代表你实力的项目写在简历里,因为面试时先是看你技术功底,如果你把这二个项目讲得很透,人家就会开始问你体会和对工作的看法,这就是看你的人格魅力了,主要靠你的性格和人品了.因为一个好的实习单位其实就是来招新人的,他们会培养你一年,如果你性格和人品非常令他们相信,他们才会花时间和金钱培养你,这样你直接就有了就业的机会.但我发现许多同学直到实习时也没想清楚到底要找个什么样的实习单位,投简历就是来一个投一个,没什么原则.写的简历一看你也看不出来他将来到底想做什么,你自己都不知道想做什么,用人单位怎么敢用你?当然,如果是什么比较强的牛人可能会不太一样,但牛归牛,除非碰到能欣赏并且敢欣赏这种牛人的单位才行.因为现在有许多......

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

[转贴]色情图片害了我 组图(纯属娱乐呵呵) (2006-02-25 22:10:00)

摘要: 1   和往常一样,偶在工作空闲下来的时候,就去上网 ~         2   再打开我的QQ...          3   向往常一样,在网上收看新闻         4   然而,一则新闻吸引了我的注意;   此人的帖子是旷世奇闻,偶打开此人的介绍,看见....          5   并且该网友申明:          6   偶按捺不住好奇心,点开网页,映入眼帘的是...          7   我于是把它复制         8   真的是~~         9   可,我的杀毒软件却传来...   帖子相关图片:        10   紧接着...          11   没有办法~我只有          12   操作开机命令,却出现我意想不到的......          ......

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