对计算机专业的感想和建议(转的,看完感触很深。。迷茫了)javabean是干嘛的
现今社会是注重时间和效率的.企业收纳新人也是从新人能否第一时间接手公司业务来来考虑的,很少会从培养新人的角度去思考.一个刚毕业的大学生,对于实战经验几乎都是为0,而从学校所学来的知识又只是片面和皮毛的.甚至很多都是已然被淘汰的知识,跟不上快节奏的时代发展.又或者是学的根本就不是社会主流所认同的,所以就业前景非常茫然.作为一个web开发实习生,我想说说我所见到的现象,以及建议. 回顾我的大学,至今还能让我想起的专业课程名字无所谓是那些:计算机组装与维护、计算机应用基础、数据库技术、C、java、JavaScript、linux、windows server、JSP、网页三剑客、当然还有还有数据结构、UML、电子商务、java轻量级框架.但由于后三门是最后一年才开设的,而几乎那一年我们都已经出去实习了,所以连老师面都没见过.这得说说我的专业名称”计算机网络技术”.对于这名称咋看之下会以为是网络工程,其实不然.按照我的理解以及课程的安排.学校应当是希望我们以后能做web开发,类似建站一类的工作.初看之下好像没什么问题,但是结合实际却存在非常大的问题.课程的开设完全没有丝毫的合理性. 我们都知道java是一种纯OOP语言,其市场在开发者当中的使用率也是稳坐第一,学校开设这门课程没有问题,毕竟掌握主流的语言对于一个开发者而言是必须的.而当学校是将java的哪一部分知识传授给学生这却是个非常值得慎重考虑的事情.我记得还在学校上课的时候主讲java的老师曾跟我们说过我们学习java是用来建动态网站的.当时的我们不懂市场需求,也就盲目的去相信老师所说的没一句话,但是现在想想,这是一个很大的弊端.就现在网络市场而言主流的建站语言应当是PHP,其次就是.
net平台,很少有人会去适用java建站.这也就表示对于Php人才的需求远远要大于java.当然这仅仅是在web开发网站建设这一块.而java真正应用的地方应当是基于B/s结构的软件开发.而对于这样的开发,就单凭我们在学校所学的java皮毛是远远不够的.涉及到的java高级特性是我们所从未在学校接触过的.而且对于企业级的开发,框架的应用也就自然而然的成了必须具备的.或许我们是学过框架的,但是看看课程安排,那是和数据结构一起被安排在最后一学期.对于那时的我们,课程已经不重要.能否到一个好的实习单位才是首要考虑的.这样一来这两门重要的课程也等于是荒废了. 说起数据结构,这又是学校开设课程的一个大败笔.但凡是计算机专业的人都知道数据机构这门知识对于一个开发人员而言有着多大的重要性.不懂数据结
构就无法设计出高效率的算法,就无法开发出高品质的软件.或许你们会说对于中国软件而言谈高效率就是在装X.软件的弊端我们可以用硬件来弥补.确实这也是中国软件开发的一大奇观,不求最好但求最快.而且对于写出高效率代码还有另一个必须掌握的知识,那即使微机原理.倘若是一个连内存分配机制都不懂的人,那他还写个P代码.做一辈子ctir+c和Ctir+V的底层代码工人吧. 唯一让我庆幸的是我学过Linux.虽然我学的不是特别好.但是我学过,那些基础命令我都没忘记.而对于现在社会而言,会Linux的人还是少数的.大家都还沉浸在win之中.所以这也是我认为学校做过的唯一一件正确的事情.虽然很皮毛,但至少入门了.至少有了自我学习的捷径了. 还有很多很多混账的地方,比如javascript.比如网页三剑客,比如UML 等等.要说的话,指不定得敲多少字才能敲完.学校教研组是改好好反省下了.别以为有
了”软件工程”专业就可以随便糊弄”计算机网络”专业.这样的行为是在害人.我不知道我写的这些对于我的学弟学妹们有没有帮助,但是既然我老师有这样的信心去改变腐烂的教研组,那我就没理由不帮忙.建议: 对于计算机网络专业而言首先得让同学们了解这专业到底是干嘛的,我记得以前我们班几乎所有的人都把重点放在了java上.除了我和另一个同学报考的软件设计师,其它人都去报考网络工程师.这真是一傻蛋.假如你想做网络工程师.那linux ,windows server,网络架设,网络维护,大型路由器配置,通信协议才是你们必须掌握的,而不是愣头愣脑的去专攻java.l 假如你想做网站开发. javascript+Html+css这三项技术是网站建设着而言所必须的掌握的,网站的前段开发永远都离不开这三种技术.并且javacript不是单纯的像课本上那样做几个图片切换的效果就完事的.得去深入了解它.掌握它的主流框架应用.否则你还不如不学.纯粹是丢人现眼. PHP或者至少学会一种.别在去用Java建站了.不是所有的企业都是中石化或者中石油.没人会出那么多的钱要求你用最好的技术去做一个小网站.而且不光是掌握技术,他们相对应的框架也是必须要掌握的. 数据库就不多说了.要是连数据库都不会.那你回家种田去吧.别说自个是做开发的.myslq ,oracle.db2至少要会一种.SQL语句那是必须必须得熟练的.3范式以上 假如你想做软件开发,桌面也好b/s结构也好 Java这东西你就不能只是会皮毛了.必须得熟悉它的高级特性.别连个简单的基于多线程的聊天软件都写不出.Swing 多线程 I/O 事件监听.等等..对了还有反射机制.曾经我面试的时候就被问到过反射机制.那是很悲剧的一段回忆.jsp+severlt+javabean的经典mvc模式得了
解,但是更需要注重的是他们儿子:struts 2框架.这才是最好的MVC诠释. 数据结构这可也是必须开设的,而且要趁早.别等到大家都散了你再开这门课程.而且这门课程必须严格的要求学生,否则出来就是一废人. 微机原理.等大家都有了一定的基础再开设.那样会有意想不到的效果 同样的还是数据库,同样的要熟练.没要求你精通到DBA大牛的水平,但是至少你设计出来的数据库写出的SQL语句不会让程序死机好几年. 基于java的框架.EJB可以不学.但是struts2 hibernate spring之类的.你还真得好好学..不会框架的人,根本没有录用的意义.难道公司聘你去写hello word么 开设一门脚本语言.ruby python pear 之类的都可以.这会有很大的用处.不管是将来工作还是提高自己对于编程语言的认识 网络维护与架设,这是我最不喜欢的方向,但也学校最误导人的方向 网络原理,这是网络的基础.包括网络的结构,布局.以及各种通信协议. 服务器应用, 不管是windows server或者unix linux你都得会.而且得是字符界面.命令都得背熟了.玩网络的人不会服务器那就不叫玩网络的了.不是叫那玩的跟PC操作系统一样.而是了解作为服务器它特有的机制和性能,作用 网络架设 作为网络工程师.这也是必备的.从小型的公司局域网.到大型的企业局域网设置城域网.都得懂得如何架设才是最优的.别倒是需要用网状拓扑你给用星型拓扑 路由器,交换机配置 不是说简单的24孔路由器.那是傻瓜式配置不需要你学.而是大型路由器配置,包括路由表的设置,防火墙的配置. 网络安全 这是网络工程师的天生责任.没什么说的. 而且需要注意的就是开课的时间,相同或者有关联的技术得一块开,或者相邻着开.别跟我们一样.等到开设java框架的时候j2se早就忘的一干二净了
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论