zoukankan      html  css  js  c++  java
  • 【转载】软件开发方向的大学生应该学什么

    今天看到两篇文章,都是谈软件开发方向的大学生应该学什么的。总是在网上看到大面积的在吹嘘“计算机专业高校教的已经过时了,企业要求掌握开发经验的大学生,培训机构异常火爆”之类的话,我突然意识到这些其实都是那些培训机构的本位主义的炒作而已。其实大部分企业招聘应届生的时候并不是要求学生有太多的所谓项目经历,但是要求最高的是应届生对专业课的掌握程度,企业的笔试题也是以专业课的题目为主。这是企业的校园招聘和社会招聘不同的地方。有人可能会举出反例,我只能说那样要求应届生有这样那样项目经历的公司都是草台班子小公司,不在我们考虑的范围之内。有的公司招聘应届生的时候如果看到你有太多项目经验的时候甚至怀疑你在校期间是否有认真学习专业课。不能忽视的一个事实是很多高校的任课教师并没有很丰富的开发经验,因此也不能教给学生关于“这门课有什么实际用途”之类的问题,这一直困惑着我们。可以看到像jsj321.com这样的网站已经开始在向这方面努力了,搞了很多针对在校计算机专业大学生的免费在线课程,请了很多有项目经验以及扎实理论基础的工程师来讲课,这样与学校的课程同步学习,“白天听大学老师讲理论,晚上听网上老师讲实战”,两者相结合就能培养出有实战经验,同时又不失理论基础的软件精英。 

    下面是这两篇文章的摘录: 


    写给还在大学的兄弟姐妹 
    FROM:http://www.cnblogs.com/hanxianlong/archive/2008/09/17/1292446.html 

    基础很重要 
    许多企业招聘,要求大学本科毕业生有一定的工作经验。而现实是,当今的大学教育使得有工作经验的本科生少之又少。从大学过来的人都应该清楚大学生活是什么样子:要么很努力的学习——这是考研一族,要么外出找兼职——这是工作一族,要么就过一天少一天——这是混日子一族。其他的情况当然也有,在此暂且只分为这几类学生。考研的学生,若是考研成功便进一步的去深造,若失败则面临着求职。而他们学习是如此的刻苦,何来工作经验?兼职的学生,有些同学可能做的很好,能够很好的处理兼职与学习的关系,而某些认为兼职就是“赚钱”的学生可能处理的并不是那么好,认为“能让我毕业就行”,殊不知毕业时找工作别人对于兼职所带来的工作经验向来是不太认可的。混日子一族就不说了,天天要么游戏要么网吧要么睡觉,习没学好,更别提什么经验。 

    那么,我们大学毕业生就果然不能找到工作了么?答案当然是否定的!虽说每年的毕业生都在增加,每年的就业压力都在加大,但是我们应该看到,为什么就业压力会加大,应从我们自身多找一些原因。试问,哪个IT公司愿意招一个连冒泡排序都不知道的人?你可能抱怨毕业生真的太多竞争真的太激烈,并且自己也一点经验都没有,但是也应该看到,每年的招聘会上签约的同学还是很多的。仔细分析一下那些能够成功把自己“卖”出去同学的“卖”出自己的原因——他们的基础一定很不错,至少在求职那段时间内他们把课堂上学习的知识又一次巩固了——这一点是毫无疑问的。校园招聘毕竟与社会招聘有很大的区别,企业也对当前大学教育状况有一定的了解,因此招聘的流程是先笔试,当然一般是一些和书本上学习过的知识相关的笔试题目,比如排序算法,数据的类型等等,笔试通过你才有机会去面试。既然笔试的题目是基础,那么一个连基础都不明白的大学生还有什么理由有机会进入面试,还有什么理由进入公司呢? 

    所以说,重视基础!不要说大学中的课本没用,打算毕业后走技术方向的你一定要重视几门基础课的学习,其中包括C语言、数据库、数据结构,至少这三门应该是能够掌握的非常熟练。要是问,什么叫“熟练”呢?去到网上找一些笔试题做一下去,看看自己能够得多少分然后就知道什么叫“熟练”了。 

    应届生求职最重要的一点,就是需要有扎实的基础。 

    有了经验,还需要什么 

    我提到,有些同学是“兼职”,当然也可能是“全职”。比如我自己,从大三开始便到一家软件公司5×8的工作,所以到毕业之后也就有两年的实际开发经验。求职之时底气也足,简历上也不仅仅是空虚的“掌握某某语言”,而是一些自己负责开发的一些项目。 

    当然,经验并不等于全部。求职之前先仔细的审核一下“有经验的自己”的基础是否牢固。一个有经验的应届生去应聘当然会比没有经验的同届学生有优势,但是如果你基础不牢固的话,那么这所谓的“优势”会成为你求职路上的绊脚石。 

    举个例子说,你做了两年的开发,当面试官问你引用类型与值类型的区别时你若不知道,那么面试官心中肯定会想,这基础的知识都不懂这两年是如何开发的?进而可能会想到你仅仅是做一些非常简单的编码工作或者认为你的经验是捏造的……这时候你就处于被动了,虽然实际开发中你不知道引用类型和值类型的区别一样可能开发出能够运行的程序来,但面试官的面试往往是从理论开始。一旦你理论上不行,那么面试官对你的耐心就会大打折扣。 

    我此次求职过程中就遇到了这样的问题。因为开始时并没有注重基础的学习而认为仅仅是能够实现某项功能即可,结果导致笔者在理论上很是欠缺。在求职某家公司时因基础知识不牢固而被pass 之后就利用一周的时间狠补以前就应该掌握的理论知识,再在其后的无论是笔试还是面试过程中就一路绿灯了。 

    其实就算不为了求职,我们也应该把理论知识掌握牢固。如果说经验是躯体的话,那么理论便是灵魂。躯体总是在灵魂的支配下活动的,没有灵魂的躯体只能说是……行尸走肉。也就是说,一个不懂理论的程序员永远只能是代码编写者,不可能成为优秀的软件设计师。 

    一句话,有了经验,还需要有理论的护航才能走得更高更远。 

    有了经验,也有了能力,求职一定会成功么? 

    如果你前两点都已经具备,那么就一定会在求职的过程中很顺利么?答案显然也是否定的。面试有一定的技巧,虽然说面试仅仅那短短的几分钟,或者时间长的能达到半个小时,你需要在这短短的几分钟到半个小时之间把自己的优点和拥有的经验全面的推销给你的面试者,让他真正相信你是一个经验和能力具备的人。 

    大四上学期,我曾经作为所在的软件公司的技术面试官到一些大学去招聘,我很奇怪有些学生会在面试的时候显得非常紧张,可能和个人性格或者其他什么方面有关。这一点请你记住:面试官也是人,或许说不定和你同龄也不一定,不要对他产生畏惧的心理。尽可能详尽地介绍你自己的优点,当然当面试官问到你的缺点时,你应该能够用一种积极的态度去评价自己的缺点,而不是说“我怎么怎么不行”,应该让面试官知道你能够正确地认识自身的缺点并努力的改正也是增加自己面试分的一种途径。 

    有了经验和能力的你,在求职时应多注意自己在面试时的表现,包括你的衣着,你的言行,还有你对某些问题的看法等等。 

    题外话 

    其实一个真正优秀的毕业生,他从刚入大学时就会去考虑自己毕业之后如何找工作,会考虑到找工作时需要哪些知识并以此为动力在自己的大学生活中朝着自己的方向努力。 

    看到那些成天只知道玩的学弟学妹,有时笔者会感到一丝的难过与凄凉。他们或许还体会不到就业的压力,或者还体会不到大四毕业时找工作的艰难与无奈。嗨,只希望读到本篇文章的大校大学生们能够珍惜自己的时光,多做一些有意义的事情,而不要每天在魔兽中生活。不能让自己在毕业之后后悔。 


    软件专业毕业生之一个月攻略 
    from:http://www.cnblogs.com/wsgpd/archive/2008/09/17/1292428.html 

    因为毕业生本来没有什么开发经验,所以我们很少考毕业生什么具体的技术例如aspx、Ajax、Hibernate、ADO什么的,考了也做不出来,做出来也是垃圾。这些具体的技术可以在工作中学习。如果面试官一上来就问你会不会Ajax什么的,肯定是个烂公司,没打算长期培训你。 

    我们要的人最基本的要求是态度好+逻辑清晰,否则写出来的代码是垃圾,以后没人敢维护。 

    计算机逻辑不清楚的人最好不要做计算机,宁可去坐坐小生意好了,否则越做越累,真是耽误自己的前途。 

    给毕业生的建议如下,估计狂补课一个月应该能大大提高自己的能力: 


    1. 多学学数据结构和算法。 

         把书上的练习题全部用C/C#/Java做一遍,保证自己逻辑清楚。
     

    2.数据库基本原理。
     

         把微软SQL Server的教材的练习做一遍,SQL的基本概念就很清楚了。 

    3.HTML 

        做做一个网上商店的例子,过一遍HTML就行了。不见得一定是PetShop这种级别的,PetShop对于新毕业生估计理解不透,还是做好基本功再说。 
    4.不要天天跟技术潮流
     

         
    技术潮流会天天变的,你跟不过来,看看就行了。把以上几门课学学好已经能够混饭吃了。等基础打好了,再去看潮流。 

       
    所以不建议毕业生天天追着CSDN、CNBlogs看,还是多做练习。dudu不会骂我吧。[这段话很多人不满,解释下,我很希望大家都去学习框架和新技术,但是前提是你的数据结构和算法要学好是吧. 


    5. 态度和责任感 

        如果工作态度不够好,到哪里都会做不好。不要骂公司,优秀的人长期下来大家都看得到,会越来越多机会和名声。以后年纪大了,都是靠名声吃饭的。名声臭了,必定没啥前途的。 

    “计算机321”评论:永远不能忽视专业课的学习,大学书本上的东西永远不过时。
  • 相关阅读:
    MVC模式-----struts2框架(2)
    MVC模式-----struts2框架
    html的<h>标签
    jsp脚本元素
    LeetCode "Paint House"
    LeetCode "Longest Substring with At Most Two Distinct Characters"
    LeetCode "Graph Valid Tree"
    LeetCode "Shortest Word Distance"
    LeetCode "Verify Preorder Sequence in Binary Search Tree"
    LeetCode "Binary Tree Upside Down"
  • 原文地址:https://www.cnblogs.com/feisky/p/1586364.html
Copyright © 2011-2022 走看看