给希望做程序员的应届毕业生的一些建议

  这几个月,不断的看到网站上关于计算机专业的应届毕业生的就业、未来和工作能力的讨论,有很多的感想,面试了不少的毕业生,简历看了几百份,了解、熟悉、精通等等的副词就不说了,实际编程能力都比较有限,上网聊天玩游戏水平比较高。这些都是事实,然而,如何快速的融入公司的开发工作中?不断的学习和实践。
    最近不断的有应届毕业生到公司实习,对于问题的接受能力,有的快些,有的慢些,学习 新知识的能力也不同,但是有时候给我的印象比较深刻,看书看的很卖力,实际编程却总是不理想。后来跟一个毕业生聊天,他说:看的东西老是记不住。还有的在看VC的书,一边看一遍记笔记,他说这样加深印象,可以记住,将来编程的时候不至于不知道怎么写代码,远远的看过去,给人的感觉好想要考研究生。
    我不知到其人是如何学习新知识的,我个人觉得,上大学与工作之后学习的方式有很大的不同,上大学,为了考试,很多东西需要记住,毕业以后,知道到哪里查找资料就可以了,没有必要刻意记住一些细节。当然,能记住细节固然好,但是不要被细节搞成了苦行僧。
    看程序的代码是一个很好的学习方式,对于同样的代码,初学者关注的可能是一些系统函数的使用方法,数据类型的使用,派生和继承的关系和作用,重载的效果。对于具备了一定的编程经验之后,不再特别关注代码中的函数,变量,类的定义和使用,更多关注的是代码的设计的思路,设计思想,模块之间的关系,模块之间的接口等等。关键是理解,理解之后,自然就会记住。
    MFC中有很多的类和很多的函数,还有很多与标准C++不一样的数据类型,有必要全部记住吗?只需要记住一些基本的常用的就可以了如VC中的CString,CDialog,CDocument,CView,AWinApp,CMDIFrameWnd,CButton,CEdit,CListBox,CComboBox,CTreeCtrl等等,这些类必须知道他们是干什么的,有什么用途,具体的使用可以看帮助,AfxMessageBox,try catch,TRACE,LPCTSTR,UINT,DWORD,WPARAM,LPARAM,SendMessage等等也是需要记住的,这些都是编写VC程序经常用到的。没有必要记住太多,关键是学会使用MSDN,将主要的精力放在代码的设计上,不知道一个函数如何调用没有关系,知道如何使用F1键就够了。MSDN上没有可以到CSDN上搜搜,或者到Codeproject上看看。
    不要一直埋头写代码,抽时间到一些技术网站上看看,知道哪里有什么样的资料,或许有一天,你知道到哪里查找有关的信息,学会利用互联网上的免费资源。
    不要总是加班,不要抽太多的烟,程序员不是吃青春的,除非你自己选择吃青春饭。bill gates比我们的年龄大,单却是微软的首席软件设计师,从事Windows底层设计的人肯定不是20多岁的小伙子。中国软件的发展也不能靠吃青春饭。
    学会与同事交流和协作,是一个优秀的团队成员最基本的素质。JAVA的流行,一个非常重要的原因是java语言可以平台,通过java写的程序,记可以在windows下运行,还可以在Linux或UNIX下运行,java是一个非常优秀的语言。一个优秀的程序员没有必要掌握一种跨平台的语言,然而,他自身必须具备一种“跨平台”的能力,这就是团队精神和合作意识,这一种能力,到任何一个公司,任何一个项目组,任何一个团队,无论他们使用Windows、Linux还是Unix,无论是开发CS结构的程序还是开发BS结构的程序,也无论开发硬件还是软件,都是最重要的最受欢迎的一种能力。我对我们公司的实习生讲,如果谁把自己封闭起来,相互之间不帮助,不团结,首先会出局。
    经常在网上看到关于学习什么语言的讨论,什么样的语言最有前途,什么语言容易学,什么语言工资高等等。个人认为,对于应届毕业生,在公司的产品开发中不起主导作用,基本上没有权力选择语言,除非你离开公司,因为公司的已有的产品或项目决定了使用什么语言,或者是产品的主要的开发人员决定了使用什么语言,所以你只有接受。但是这有什么关系吗?应该使用什么语言,你参与的产品使用什么语言,那你就使用什么语言,具体学习什么语言不是特别重要,最重要的是在实践中学习一种好的设计思想,用计算机语言思考问题,学会对现实问题的抽象和概况,学会用一种计算机的模型来描述现实世界中的东西。经过一段时间之后,你对一门语言非常熟悉了,再看其他的语言,觉得都很相似,都有if else ,for,while,=,>.<,Stirng,class,try catch等等类似的东西,也有很多的差别,你再学习一个新的语言就非常容易了。当然,很多情况下我们会接触几种语言。我和同事一直使用VC,最近使用C#写了个实现事务预约的程序,3个星期,程序测试通过,现蒸现卖,还不错。
 

 

读后感:

现在想想,我的简历好像就是“了解、熟悉、精通等等的副词就不说了”实在的“实际编程能力都比较有限”。主要是就做过一两个工程,没有什么机会去实践,真是的,以后写简历要有所创新突破,不能再向应届毕业生那样写了

    “如何快速的融入公司的开发工作中?不断的学习和实践”,这一点是我严重忽视的,虽说的struts,spring,hubhite(正在学)都是在公司里学的,但是我的简历上一直也也没有重点说明我的学习能力,和融入环境的能力。这是我所忽视的。

    “看程序的代码是一个很好的学习方式”这也是现在的我能够体会到的,学技术就是要从工程上开始,从看代码开始,看看别人的,脑子里就有谱了。自己可以先比猫画虎了。

     “学会与同事交流和协作,是一个优秀的团队成员最基本的素质”这一句话真是深有体会,我们现在的公司好像管理上有问题,项目分的太细了,职责就不好分了,没有充分利用好每个人的资源,整天就知道加班、加班。什么时候老板要是达到“他们经理给他1周时间用C#写个程序,他回答他没用过.net。经理答曰。我知道。否则给你的期限就会是2天,而不是一周。”这种程度的话,我们组都是技术强人了,跳槽公司不会担心没有人替补,跳槽的人也不用担心技术了,肯定有好地方去。(还有日本人就是抠门)我的技术好了,肯定要跳。现在只能委曲求全了。

     网络绝对是个学习的平台,说实在的现在,不是记多少技术,关键的是老板给你个东西,即使你不知道,但是你可以通过各种渠道很快做出来,那才牛比,不过基本的要知道,不然怎么成为技术强人呢……

     工作之余发发牢骚,呵呵!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值