Are you a qualified programmer?
到现在为止,小弟我在IT这个行业已经摸爬滚打一年了,对这行多少也有些了解。小弟我是计算机科班出身,ps:现在学计算机的学生,你们都懂的。。。
上学的时候吧。总觉得在学校学的那些东西没什么实际的用处,不能立刻的在实时的应用中使用。我想绝大部分人都是这么想的吧。每天上课就是什么数据结构啊,什么计算机组成原理啊,什么算法啊,反正是诸如此类的课程;你学完以后会发现你什么都没有学到。
小弟是做.net的开发的,现在也还在做。。。大家应该都很清楚,MS的目的就是把所有的程序员变成"stupid"。至于当初为什么搞.net,大部分原因也是因为它的门槛比较低吧。
这一年也做过不少的项目,不过都是Enterprice Programm。平常没事的时候出了深入了解C#这门语言,还对Java,C++,PHP时不时的小看上一下,ps:对于Java,C++,PHP,可能我连入门都算不上。逛了不少的论坛,也看了不少的书:面向对象思想,设计模式等种种吧。
在这里我小评一下C#吧。
说实话,C#是.net这个平台上最主要的语言,也是使用者众多的的语言之一。它的原理我觉得和Java很想,都是中间型的语言,Java需要JVM做支持,而C#是要CLR做支持。这两门语言都是面向对象的语言,封装性很强,让大家用起来很顺手,很符合人的思考模式。由于是中间语言,那么在运行上肯定不如C,C++快。所以性能也就成为了一个弊端吧。还有VS这个平台,MS做了很多的封装,如窗体控件,表单控件什么的,你想用直接拖拽,然后在事件里面敲一些代码,OK,运行起来来,是不是感觉很方便。至于这些工作的原理很少人去关注了,
所以走向今天的话题,Are you a qualified programmer?我想起大学时一个教授说的一句话:程序=数据结构+算法。所以,我认为程序员应该具备这样的素质:程序设计思想,数据结构,算法。不过话说回来了,小弟并没有完全具备这些素质,所以我只能算上是半合格的程序员。
好的程序员并不在于他懂多少语言,而在于他懂得学习一门语言的方法。好的程序员,可以用自己会的语言去表述一个栈,队列或是链表。好的程序员他可以不懂什么是WPF,Silverlight,但他一定懂这些东西是如何做出来的。
作为一个技术人员,尤其是搞计算机的技术人员,不断地学习是很重要的,但是还要注重学习的方法和效果,老话说的好“知其然,知其所以然”,透过现象看本质,边学边干边思考,我想,你终将有一天会成为技术的牛人。

浙公网安备 33010602011771号