大三了,我究竟干了点啥
网络工程,这是我的专业。
什么叫做网络工程?百度的定义如下:
本专业培养掌握网络工程的基本理论与方法以及计算机技术和网络技术等方面的知识,能运用所学知识与技能去分析和解决相关的实际问题,可在信息产业以及其他国民经济部门从事各类网络系统和计算机通信系统研究、教学、设计、开发等工作的高级科技人才。
可是我们学的又是什么?C#,java,C++,数据库,和网络有关的只有综合布线,路由器配置这两门。。。
我经常自嘲说:“和软件工程比布线,和通信工程比软件”。可是胡子眉毛一把抓的情况就造成了现在是啥都学过啥都不精。。。
大一
新的学校,新的朋友,新的住处,一切的一切都是那么不一样。我的学校在河北省来说还算可以,但是专业就让人蛋疼了,总是给人一种后娘养的感觉,我们存在的价值好像就是为了扩充学校的规模。
大一的时候学的是基础课(网络工程挂在物理学院的下面,其结果就是我们必须要去学习大学物理。。。种种奇葩情况,不胜枚举。。)在这个时候学习了C语言,这是学习的第一门计算机语言。肿么说呢,应该是说我很好的考过了,但是真心没有好好的钻研,结果现在用C编一个小程序都困难的要命。还有网页设计,那个时候应该把这门课好好的学习学习,Ps等等工具也应该学会了。但是当时实在是新入学,各种活动看了不少,各种事情层出不穷,导致了真正用于学习的时间实际上是非常少的。
现在回想一下,实际上大一应该是打基础的时候,应该对计算机相关专业有一个大概的了解,这样才能够找到自己的方向。
大二
大二了,每个新学期的开始我们都是踌躇满志,意气昂扬的,往往也会立下豪言壮语,伟大目标。这个学期的开始我就是如此,但是到了期中我却发现在这开学的一段时间中开头的两周我所做的工作和我所学的比之后的七八周都多,所以说大学里首要的一点就是要学会如何把一件事情坚持下来,不能仅凭一股冲劲,还要有后劲,学习这个东西不是一天两天就能收到效果的,这是一场持久战。大二开始学习各种专业课(计算机专业现在学的基本上都是差不多的,讲几门语言,讲讲计算机网络,操作系统,数据结构,计算机组成原理,再讲讲几门“特色专业课”,大学四年也就这么给你糊弄过来了)。在大二参加了学校的一个组织,也就是管理维护一个网站。虽然说学到的东西不多,但是在这里可以认识很多的人,当然耗费时间也是肯定的了,不过我不后悔,因为我在这里认识了我的对象,哈哈,并且把她成功的骗到了手。现在想想其实在大学里应该参加一个组织,这样你就会认识很多的人,对于计算机专业的学生而言可以扩大生活的宽度,以免最后成为宅男一个。(但是千万不要是学生会,社联这种举办活动多如牛毛的组织,大一只是干活,占用了大量的时间,累死累活的学习还落下了。)
大三
大三往往是一个分水岭,这个时候厉害的人们已经开始自己做项目了,不厉害的人们还在玩游戏,看电影,偶尔他们也会抬起头看看牛人的背影,自愧不如一下,学几天,再继续玩游戏,看电影。我想,我应该算是后者的一员,大三的寒假我申请了微软的msp(微软学生精英),这里面的人才是真正的牛人,大二的就已经开始做win8应用,wp8应用了(我呢?我连win8的应用商店都没转过)。
学习如逆水行舟,不进则退。时间给每个人都是公平的,24小时,一秒不多一秒不少。人家大二就开始搞开发,我现在已经大三了,却是连一个成品网站都没有。
不能再堕落了,我现在应该开始着手改变自己的现状了。
我选择的是.net方向,我希望现在开始还不算太晚。
.net程序员应该掌握什么?
在《工作经验到底是个什么东东?工作经验从哪里来?》<http://blog.csdn.net/zhoufoxcn/article/details/5652166>这篇文章中我学到了很多。
对于现在的我而言下面这个十分有用:
对于ASP.NET 开发大部分可能会有这么一个过程:
首先是觉得服务器控件挺好用的,在开发中大量使用服务器控件;
经过一段时间的开发之后(也可能是听别人说),会发现服务器控件并不是想象中完美无缺,在VS2010 之前很多 ASP.NET 控件默认会启用 ViewState 来保存控件状态,这样在最终生成的 HTML 页面的源代码中生成了大段的隐藏域字段,影响了网页的传输速度,慢慢地我们会发现其实 ASP.NET 服务器控件最终到客户端时会被转换 HTML 代码,那么使用 HTML 服务器控件也是可以的,并且还省去了转换这个过程,所以在开发时尽量不处处使用服务器控件;
再经过一段时间之后,我们会发现有些复杂的效果与其去层层嵌套服务器控件,还不如直接将这部分特殊效果的HTML 代码输出,这样更方便快捷,然后我们也会想到有些操作其实用 JavaScript 也可以在客户端实现而不是必须要提交到服务器端才能处理,这样又提高了效率;
再过一阵子之后,我们会觉得SELECT * FROM Table 尽管什么时候都不会出错,但是并不是最高效的,在某些时候我们只 SELECT 要显示的字段,除此之外当数据库中的记录一多时每次都将数据库中的记录全部查出来再取出需要显示的部分不显示的数据被弃之不用很浪费资源,所以会想到使用分页查询每次只查询当前页所需要的数据;
再过一阵子之后我们又会觉得原来那种对数据库执行增删改查的操作的代码每页都有,非常不好维护,第一步分析之后会想到使用数据库通用类,再仔细分析之后可能就会发现三层架构的好处进而接受了三层架构这种思想;
再继续思考总结,我们又会发现其实在SQL 方面有很多名堂,比如存储过程、触发器、函数、分组函数、联合查询、 UNION 等,也就是有些结果可以直接在数据库里进行处理而不是将多次结果分别取出来在 C# 中处理,尽管可以实现同样的功能,但是在数据库中处理可能更加方便和直接。
一名真正的.net程序员绝对不是只是拖拖控件,绑定绑定数据,他掌握的应该很多,他应该能够拯救世界。
自学吧,只有掌握了自学这个能力才算真正上了大学。问Google,问百度,图书馆里的藏书在向我招手。
大四
大四已来,大四未来。
大四已来,虽然还只是大三,虽然还有两三个月才到大四。但是大四已经来了,因为大三的每一秒都在决定着你的大四生活将会如何度过。你现在在玩游戏在看电影,那么你的大四必将焦头烂额,因为你将学习的时间用来玩了游戏看了电影,那么大四如果你想找到好工作,要么天天泡在书堆里,要么天天敲代码,可是就是这样,你也整整差了好几个月。现在的你决定下一秒的你。
大四未来,我还有两三个月的时间,只要掌握了这两三个月,我相信我会有一个精彩的大四。至于大四,不管是考上了研还是考研失败去参加工作,一年之后,我还会回来再谈谈我自己。。
Ps:你居然看完了整篇文章,辛苦了。。。这只是我的一点小小感悟,你可能赞同,可能反对,如果你有啥想说的,请在评论区中留下你的意见,我们可以互相交流。