博文

带着我的认证上路:五步成为网络专家  (2006-11-21 23:10:00)

摘要:    作者:徐斌  文章来源:搜狐教育社区  更新时间:2006-01-13       参加认证考试是相当多的人寻求职业发展的必经之路。但市场上的证书多如牛毛,你该参加哪一个?本文将为有志于在网络管理与设计方面发展的学员做了一个认证道路五步规划,对各位颇有借鉴意义。     虽然现在社会上有一些关于“认证证书不值钱”的议论,但对于绝大多数人来说,没有证书,还是“万万不能”的。 在国外,每增加一个认证证书都会带来薪水的提高。国内的薪资水平虽然没有国外那么高,但是相比较国内其他行业,也十分可观。因此,如果能够合理地规划好认证证书的学习与考试,就既能学到全面系统的知识,又容易找到适合自己发挥特长的工作环境。     第一步:通过MCSE 网络从此不再陌生     作为迈向认证考试道路的第一步,首先推荐学习并考取微软Win2003的MCSE(微软认证系统工程师)。拥有MCSE证书,就表明你已经能够设计、实现、维护和支持信息系统,能够在各种环境中使用微软Windows Server网络操作系统和BackOffice家庭的集成服务器产品。     如果有一年以上丰富的Win2003 管理、应用及实践经验,那么一般集中复习3~6 个月就能通过考试。虽然微软考试的科目有些多,但是大多数科目涉及的内容都很容易找到实验环境,因此推荐首先考取此认证。     第二步:拿下CCNA展开网络全面接触     准备Cisco 的CCNA(Cisco认证网络支持工程师)认证考试,预计需要使用6~12个月的时间。虽然考试内容只有一门课程,但是较微软的课程有一些深度,并且不太好找实验环境。一般推荐使用模拟路由器的软件先在计算机上进行模拟试验。如果工作中有机会,可以多接触一下Cisco 路由器的具体操作。实在没有把握,可以参加一些实验室环境比较好的培训,多看一些英文资料,在相关论坛上多交流,都有利于准备好这个认证的考试。     第三步:考取CNA/CNE管理网络得心应手     有了两个认证在手,如果工作环境不适应继续学习,就可以找一个和上述技能密切相关的单位来工作。在具体工作中,实践并丰富自己的经验,并且为考取CC......

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

一个大学教授让人发冷汗的讲演(2006-11-21 23:09:00)

摘要:一个大学教授让人发冷汗的讲演  luoricanyang BY - 2006-4-8 13:32:00       地点:浙江图书馆报告厅,时间:2002年x月x日               精彩语录节选:          “在中国这个发展中国家,你能建10所世界一流大学,那美国有多少所?日本有多少 所?现在的实际状况是:世界上前200所大学,中国一所都排不进!在亚洲能排出几所?我到国 外去看了以后,感到要将浙大建成世界一流大学就像共产主义理想.“          “以前说“无知无畏“,现在却是“无知才无畏“,许多企业把浙江省技术监督局 、科委的人请来吃一顿饭,喝一点酒,他就给你签个字,再把我们这些教授胁迫到那里去,给 你盖个章,然后就是“填补国内外空白“、“国际先进水平“,写论文则是“国际领先水平 的研究成果“、“首次科学发现“等等,这都是目前非常严重的问题!作为一个大学教授,我 深深地为此担忧!这不是我们的责任,是我们的领导无知,是他们倡导了这个主流.我知道在 座的处长或老总日子很难过,因为你们不写这样的报表,就拿不到钱,项目就得不到批准.教 授也同样如此,天天写报告,而不是在实验室静下心来好好搞研究,这是很严重的!“          “我们国家的现实和发展就是这样:凡是依赖不成的,我们自己都能搞得像模像样 ,比如二弹一星;凡是能够引进的,就都搞不成.......现在很多合资企业就这样,卖点东西 ,而没有去考虑这些深层次的东西.殊不知,这就是社会的恶性循环!“          “我认为:语言、计算机就是工具.中国的外语教授讲英语还不如美国卖菜的农民 !怎么看待这个问题?日本博士、德国教授说不出英语的多得是!我们怎么能说一个人不会说 英语就是文盲呢?语言就是一个工具!你没有那个环境,他怎么能讲这个语言呢?......如果 我是教育部长,我要改革二件事:第一,取消六级考试,你一个研究生连中文一级都不及格,你 英文考六级干什么呢?看看研究生写得论文,自己的民族文化都没有学好,天天考英语──打 勾:托福打勾,GRE打勾,英文考出很高的分,可哪个写的英文论文在我面前过得了关呢?过 不了关!这样培养出来的人能干什么?自己搞的专业一点都没学好!......说不会计算机就是 文盲,这又是......

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

VC入门的一条路(2006-11-21 23:06:00)

摘要:VC入门的一条路       首先声明,我可不是什么高手,也就是刚脱贫。因为运气很好,买到了几本好书,在学习过程中几乎没走什么弯路,没费什么劲就入门了,现在一般的小程序能搞定了。看到那些因为不知从何下手而苦苦挣扎的朋友,希望我的文章能给他们一些帮助。       学编程急不得,上来就学VC肯定碰一头灰,说VC难就难在这点上了。如果硬上,意志坚强的话也许能挺过来,但也是会缺乏后劲,不得不回过头来补习基础知识。意志不坚强的话,很有可能就此放弃了,并留下一个VC难得不得了的印象。其实,只要踏踏实实一步一步来,VC也就是很简单点事。在这里我说一下,如果你还只是一个初中生,那么你就应当仔细考虑一下了。首先,限于你的知识和思维能力,学学C语言还应该没问题,但要学VC是要下相当大的功夫的。而且,你现在学到的东西将来一定会过时,所以不如把精力放在算法的研究上,毕竟这些东西永远都不会过时。         我觉着如果走对路子,入门VC,一个暑假应该够用了。       虽说学VC并不是传说的那么难,可不下些苦功夫是学不成的。在学VC前,你必须确定,你是因为热爱编程才学VC的,而不是出于炫耀或其他。否则,恐怕你坚持不到胜利的那一天。          对于首次接触编程的同学,我建议最好先学一下Quick BASIC(DOS里就有带,就是那个QBASIC.EXE),不用多学,知道什么是整型什么是浮点,以及DO...LOOP FOR...NEXT 等最基本的知识,能算个阶乘,求个积分就行了,关键要明白计算机是怎么执行命令的,对编程有个感性认识。如果你对自己有自信,也可以直接学C++,应该也不会多费太多事。不过我觉着因为有很多资料是FOR VB的,并且网页编程常用VB Script,以后你也很有可能要用到VB,所以了解一些BASIC对以后也是有帮助的。而且如果只是要算个小题用QB比VC、VB之类方便多了。(找个人教一两天应该就能搞定了吧)       之后我建议找本初高中信息学奥......

阅读全文(2401) | 评论:2

李开复:算法的威力(2006-11-21 23:04:00)

摘要:算法是计算机科学领域最重要的基石之一,但却受到了国内一些程序员的冷落。许多学生看到一些公司在招聘时要求的编程语言五花八门就产生了一种误解,认为学计算机就是学各种编程语言,或者认为,学习最新的语言、技术、标准就是最好的铺路方法。其实大家都被这些公司误导了。编程语言虽然该学,但是学习计算机算法和理论更重要,因为计算机算法和理论更重要,因为计算机语言和开发平台日新月异,但万变不离其宗的是那些算法和理论,例如数据结构、算法、编译原理、计算机体系结构、关系型数据库原理等等。在“开复学生网”上,有位同学生动地把这些基础课程比拟为“内功”,把新的语言、技术、标准比拟为“外功”。整天赶时髦的人最后只懂得招式,没有功力,是不可能成为高手的。 算法与我 当我在1980年转入计算机科学系时,还没有多少人的专业方向是计算机科学。有许多其他系的人嘲笑我们说:“知道为什么只有你们系要加一个‘科学 ’,而没有‘物理科学系’或‘化学科学系’吗?因为人家是真的科学,不需要画蛇添足,而你们自己心虚,生怕不‘科学’,才这样欲盖弥彰。”其实,这点他们彻底弄错了。真正学懂计算机的人(不只是“编程匠”)都对数学有相当的造诣,既能用科学家的严谨思维来求证,也能用工程师的务实手段来解决问题——而这种思维和手段的最佳演绎就是“算法”。 记得我读博时写的Othello对弈软件获得了世界冠军。当时,得第二名的人认为我是靠侥幸才打赢他,不服气地问我的程序平均每秒能搜索多少步棋,当他发现我的软件在搜索效率上比他快60多倍时,才彻底服输。为什么在同样的机器上,我可以多做60倍的工作呢?这是因为我用了一个最新的算法,能够把一个指数函数转换成四个近似的表,只要用常数时间就可得到近似的答案。在这个例子中,是否用对算法才是能否赢得世界冠军的关键。 还记得1988年贝尔实验室副总裁亲自来访问我的学校,目的就是为了想了解为什么他们的语音识别系统比我开发的慢几十倍,而且,在扩大至大词汇系统后,速度差异更有几百倍之多。他们虽然买了几台超级计算机,勉强让系统跑了起来,但这么贵的计算资源让他们的产品部门很反感,因为“昂贵”的技术是没有应用前景的。在与他们探讨的过程中,我惊讶地发现一个O(n*m)的动态规划(dynamic programming)居然被他们做成了O (n*n*m)。更惊讶的是,他们还为此发表了不少文章,甚至为......

阅读全文(1952) | 评论:2

编程经验谈:如何正确使用内存(2006-11-01 22:50:00)

摘要:编程经验谈:如何正确使用内存 对于初学者来说,内存是个神秘的空间。程序的绝大部分错误,也是在于内存的使用不当造成的,而且这些错误有些都是隐藏很深的。所以,如何掌握内存的使用,通晓系统对内存的管理手段,将是软件成功的一个非常关键的因素。    首先我们要了解内存的分配方式。一般来说,内存的分配方式有三种:    1.从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。    2.在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。  3.从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生存期由我们决定,使用非常灵活,但问题也最多。    以上三种分配方式,我们要注意内存生命期的问题:    1.静态分配的区域的生命期是整个软件运行期,就是说从软件运行开始到软件终止退出。只有软件终止运行后,这块内存才会被系统回收     2.在栈中分配的空间的生命期与这个变量所在的函数和类相关。如果是函数中定义的局部变量,那么它的生命期就是函数被调用时,如果函数运行结束,那么这块内存就会被回收。如果是类中的成员变量,则它的生命期与类实例的生命期相同    3.在堆上分配的内存,生命期是从调用new或者malloc开始,到调用delete或者free结束。如果不掉用delete或者free。则这块空间必须到软件运行结束后才能被系统回收。  下面我们再看看,在使用内存的过程中,我们经常发生一些什么样的错误。以及我们应该采取哪些对策。      发生内存错误是件非常麻烦的事情。编译器不能自动发现这些错误,通常是在程序运行时才能捕捉到。而这些错误大多没有明显的症状,时隐时现,增加了改错的难度。有时用户怒气冲冲地把你找来,程序却没有发生任何问题,你一走,错误又发作了。    常见的内存错误及其对策如下:    1 内存分配未成功,却使用了它。    编程新手常犯这种错误,因为他们没有意识到内存分配会不成功。常用解决办法是,在使用内存之前检查指针是否为NULL。如果指针p是函数的参数,那么在函数的......

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

面向对象编程,我的思想(下)(2006-11-01 22:46:00)

摘要:面向对象编程,我的思想(下) 2.3深入探讨函数:    2.3.1构造函数、默认构造函数、 缺省构造函数 对于上面的实例,它已经能完成绝大部分工作了,但它还是不完善的,还有许许多多的细节等到我们去完善!也许有的同学已经注意到了,当我创建完“jingwei”这个对象时,这个对象的所有的属性都是空的,也就是说:这个对象的姓名是未定的、年龄是未定的、性别是未定的、薪水是未定的、午餐也是未定的。而我们想把这些属性都添加上去,就还要用对象调用相应的方法,去一个个修改!天啊,这简直是太麻烦了!有没有什么好方法能够在我们创建对象的同时就完成了对属性赋值的操作呢?哦不,应该说是对属性的初始化呢?当然没问题了,这就需要所谓的构造函数!    构造函数是类中最特殊的函数,它与析构函数的功能正好相反!    从特征上来说:1.它是编程语言中唯一没有返回值类型的函数。    2.它的名称与类的名称必须要完全相同。    3.它必须被声明为公共(public)的类型    4,可以对构造函数进行重载。    5.它在创建对象是自动被调用。    从功能上来说:1.它是对类中的属性进行初始化。    其实,对于上面的程序来说我们没有自己定义构造函数。但是,在这种情况下,系统会自动为我们定义一个“默认构造函数”。他会把数值变量自动赋值为0,把布尔行变量赋值为false等等(但在C++中,默认构造函数不初始化其成员)。如果程序员定义了构造函数,那么系统就不会再为你的程序添加一个缺默认造函数了。(在这里,我们提倡的是自己定义构造函数,而不是用系统的默认构造函数)    还是看个实例吧!这样比较清楚一些!   //employee.java    public class employee{    private String name; //员工姓名    private int age; //员工年龄    private char sex; //员工性别    private float emolument; //员工薪水    private boolean lunch; //员工午餐    //……等等    public employee(){ //这个就是“默认”构造函数    name = “jw”; //设置员工姓名    age = 20; //设置......

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

经典:面向对象编程,我的思想(上部)(2006-11-01 22:23:00)

摘要:经典:面向对象编程,我的思想(上部) 前言:整理这份资料的目的是为了帮助我的同学能够更直观的理解面向对象的编程。让后来者能够少走一些弯路。但其中不免有许多漏洞及错误,也还请前辈提出宝贵的更改意见,毕竟交流会让我们不断的进步。 技术是日新月异的,他不会等待你的成长。技术要拿出来于别人交流,自己学是自己主观意识上的理解,有对有错!交流会让进步变得更快。我认为如果计算机的体系结构不发生革命性的变化,我们现在所应用的程序语言也就百变不离奇踪了!学编程学的是什么?思想!精通一门编程语言(最好是面向对象的语言)后再去搞其他的编程语言,你会发现过程是如此的行云流水!为什么?你已经把编程的思想掌握了,再去学其他的,无非是学习一种新的语法格式了。 我在这里并不是和你讨论怎么去用C++或JAVA,也不是和你讨论怎么去学他们,我要和你讨论的是怎么去理解面向对象。其中主要会涉及到“类、对象、继承、属性、方法、静态、重载、隐藏、重构、声明、定义、初始化、赋值等”其中有许多相关技术我只会一代而过,让你有一种到此一游的意味我就达到目的了,而更详细的技术内幕,就请参考其他相关书籍而深入研究吧!因为我只是在和你探讨如何去更好的理解面向对象! 如何去提高效率?重复使用资源,把别人的东西拿来就用。这是很不错的主意!而对于你来说,最大的资源就是信心以及积极性!好,打起精神来,让我们一同到面向对象的编程中去寻幽访胜吧! 注:文章中所有程序实例我都使用JAVA写的,当然在C++中也就大同小异了了,不同的地方我会指出! 注:文章中的正文文字用黑色,说明文字用蓝色,强调文字用橙色,批改文字用红色!正文: 1.基本概念: 1.1 类与对象的初探 要我说,无论是面向过程的语言也好,面向对象的语言也罢,我首先要给他讲的都是类和对象!--------“这个世界是由什么组成的?”这个问题如果让不同的人来回答会得到不同的答案。如果是一个化学家,他也许会告诉你“还用问嘛?这个世界是由分子、原子、离子等等的化学物质组成的”。如果是一个画家呢?他也许会告诉你,“这个世界是由不同的颜色所组成的”。……呵呵,众说纷纭吧!但如果让一个分类学家来考虑问题就有趣的多了,他会告诉你“这个世界是由不同类型的物与事所构成的”好!作为面向对象的程序员来说,我们要站在分类学家的角度去考虑问题!是的,这个世界是由动物、植物等组成的......

阅读全文(1954) | 评论:2

入门训练:写程序应注意的事项(2006-11-01 22:19:00)

摘要:入门训练:写程序应注意的事项 1.对于文本编辑框,一定要判断是否含有非法字符。对于数字型一定要判断是否含有非数字。对于字符型,一定要判断是否在允许的字符内。2.对于在某一个期间,一定要判断前面一个日期是否大于后面一个日期。还要判断2月份的日期。(www.chinaren.com中的出生日期就没有判断这一点)。不要告我诽谤:)  3.对于路径选择,一定要判断路径是否合法,是否可以访问。输入的路径长度是否超过了最大字符长度。  4.对于要写进数据库的值,一定要判断是否超过了字段定义的长度。  5.在往网络的某一个文件夹写数据时,要判断是否可写。  6.对于在界面中的默认数据,一定要显示默认值,哪怕是0也应该显示,因为软件不是一个人用,其他的人可能不知道。  7.在做批量删除时,最好提供一个取消的按钮,让别人有一个后悔的机会。  8.在做长时间的操作时,一定要使鼠标变成漏斗型,让别人知道你的程序还在运行。最好用一个进度条来显示进度。给用户继续等下去的信心。  9.对于菜单条中的菜单项,最好在工具条上做一个快捷方式,用户都很懒,巴不得坐在那里,不动键盘和鼠标,你的程序都能工作。  10.操作系统中的文件夹和文件是不区分大小写的,但写在程序中的代码是区分大小写。特别是判断某一文件是否存在时。  11.在一个界面中,功能集中的按钮尽量放在一起,不要到处天女散花。  12.在多线程调用DLL时,要注意并发访问的问题。  13.在往硬盘或数据库写数据时,最好先写往缓冲区,然后一次性写入,这样可以加快速度。  14.参数在命名时,尽量取的要有意义,不要到处是a,b什么的。。一个函数不要写的太长,要多写注释。你走了,为后面来的人做点好事。  希望大家把自己觉得应该注意的地方也写下来,供新手参考。 ......

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

微软副总裁给中国大学生的一封信(2006-11-01 21:54:00)

摘要: 微软副总裁给中国大学生的一封信 导语:李开复博士现任微软公司全球副总裁,是微软亚洲研究院的首任院长。在学术领域,他是攻坚挫锐的科研天才;在管理层面,他又是运筹帷幄的领军人物。作为一位天资卓越的华裔学者,他正在创造着一个又一个奇迹。同时,李开复博士极为关注中国教育,先后给中国学生写了三封饱含关切之情的来信,在国内青年学生中产生了巨大影响。他还为中国学生开通了“开复学生网(www.kaifulee.com)”。近日,李开复博士又撰写了“给中国大学生的第四封信”...给中国学生的第四封信:大学四年应是这样度过  今天,我回复了“开复学生网”开通以来的第1000个问题。关掉电脑后,始终有一封学生来信萦绕在我的脑海里,挥之不去:  开复老师:  就要毕业了。  回头看自己所谓的大学生活,  我想哭,不是因为离别,而是因为什么都没学到。  我不知,简历该怎么写,若是以往我会让它空白。  最大的收获也许是……对什么都没有的忍耐和适应……  这封来信道出了不少大三、大四学生的心声。大学期间,有许多学生放任自己、虚度光阴,还有许多学生始终也找不到正确的学习方向。当他们被第一次补考通知唤醒时,当他们收到第一封来自应聘企业的婉拒信时,这些学生才惊讶地发现,自己的前途是那么渺茫,一切努力似乎都为时已晚…… 这“第四封信”是写给那些希望早些从懵懂中清醒过来的大学生,那些从未贪睡并希望把握自己的前途和命运的大学生以及那些即将迈进大学门槛的未来大学生们的。在这封信中,我想对所有同学说:   大学是人一生中最为关键的阶段。从入学的第一天起,你就应当对大学四年有一个正确的认识和规划。为了在学习中享受到最大的快乐,为了在毕业时找到自己最喜爱的工作,每一个刚进入大学校园的人都应当掌握七项学习:学习自修之道、基础知识、实践贯通、兴趣培养、积极主动、掌控时间、为人处事。只要做好了这七点,大学生临到毕业时的最大收获就绝不会是“对什么都没有的忍耐和适应”,而应当是“对什么都可以有的自信和渴望”。只要做好了这七点,你就能成为一个有潜力、有思想、有价值、有前途的快乐的毕业生。大学:人生的关键  大学是人生的关键阶段。这是因为,进入大学是你终于放下高考的重担,第一次开始追逐自己的理想、兴趣。这是你离开家庭生活,第一次独立参与团体和社会生活。这是你不再单纯地学习或背诵书本上的理论知识,第一次有机会在学习理论的同......

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

国外与国内,数学与计算机(2006-11-01 21:44:00)

摘要:国外与国内,数学与计算机 其实很早就想写这遍文章了,趁有点时间,想把自己的感受说一下。我的写作水平just so so,写english还好一点,因为不用象中文那样,要注意那么多的修辞方式和文采,只需平铺直叙就行了。 可能我天生就是要注定学Computer的,因为从小学到现在,只有两堂课是可以的——数学,英语。我那股凡事都要问个为什么的牛脾气,更在学数学中体现得淋漓尽致。整天地查书,追问着同学,老师每一条算式,定理的推算和证明,直到最后得知那是一条公理,才心有不甘地停止了穷追猛打,甚至还想弄一些鬼点子来推翻公理。以至同学、老师一见到我就觉得烦。可惜我学艺不精,小中大学都被选拔参加过不少数学竞赛,却没有拿过一次理想的成绩。我那牛脾气也延续都到写program中,几乎什么都喜欢自己implementation。所以我不太喜欢VB,DELPHI,CBC,什么都用别人的Component。觉得有一种压抑感,由于是从SDK学起的,所以Windows的机理也比较清晰,以前还打算把MFC source codes改写成为自己的classes,可惜MFC实在庞大,而且还在不断updated,以我一个人的能力完成了约1/3,已经精疲力尽了。以前在国内一直梦想着能到Symantec 这样的公司做developer,因为很想弄清楚为什么Norton能把Windows control 起来。   以前总觉得国外的programmer很厉害,若不是的话,为什么能开发出这么多改变人类生活Software,但出来见识过了,才知道在技术上,他们也不过如此,反而觉得国内的高手还多一些。也许这与教育制度有关,国内普遍都认为只要数学学好了,计算机也就没问题了,君不见国产的教科书都是以那些枯燥的数学问题来教导初学者。诚然,数学思维对写code有莫大的帮助,我也是受益者,所以中国人写程序在同等外界条件下(硬件,资料等)绝对比鬼佬强。但同时也带来了严重的错误观念——“编程研究到一定程度,归根结底是数学问题”。 刚出来的时候,我也是这样认为。   我哥也是Master of Computer Science出身,由于他自己的努力,还没到30岁,已经在3com总部担任Project manager了。他以前在silion valley 多间公司做过,包括Symantec。兄弟俩经常就computer......

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