我生待明日,万事成蹉跎

作为一个程序员需要学多少技能?

哦,天啊,这个问题真够大,成都SEO在这里就只说说自己的一点看法吧,供大家参考。

基本上,我将一个程序员看成是一个作家,只不过作家用自然语言来描述世界,而程序员用的是编程语言来描述世界。除此之外 ,我认为两者基本上是相通的。

那么,我们可以先来看看作家想要写出一部好作品,需要哪些技能,通过作家需要的技能,来类比看看一个程序员需要的技能。
首先,作家至少需要精通一门语言吧,所以,作为程序员,至少需要掌握精通一门编程语言。当然,如果你能够精通更多那当然更好,然而,人的精力是有限的,最理想的状态是,精通一门,涉猎其他。
其次,只是精通一门语言,还无法保证写出伟大的作品,作家们还得懂得如何布局谋篇,如何起承转合,类比到程序员这里,即使需要掌握如何设计你的程序,大的方面,设计到面向对象或者面向过程的设计思想,小的方面,涉及到设计模式,重构等等
掌握了以上这些技能,一个作家只是能写出一些小文章而已,不能算是伟大的作品。要写出伟大的作品,作家们还得从整体上进行设计,确定作品的主旨立意,确定作品的实现步骤,类比到程序员这里,我们需要了解的,一方面是程序架构方面的知识,常用的架构模式,系统特性等等,另外一个方面,就是项目的实施。编程序是一个非常复杂的工程,我们必须了解一些软件工程的知识,才能保证程序被正确及时地编写出来。在这一点上,有传统的软件工程模型(比如瀑布模型),也有很多新的软件开发的方法(比如极限编程,测试驱动开发等等)

可以看出,这实际上是三个层次,从最基础的语言,到中间的模式,再到最顶层的架构,包含很多需要了解和掌握的技能。当然,要想全部掌握和精通,对我们来说,那太难了。不要妄图去掌握以上这些所有技能,我们能做到的,只能是根据自己的定位(程序员,项目经理,架构师等),选择与之匹配的技能来学校和掌握,那就足够了。

需要掌握这样一个原则,可以学习的技能很多,我们是根据自己的需要而学习,而不是因为他存在而学习。

以上,是成都SEO的一点认识,希望对大家有所启发。

未经允许不得转载:徐宏涛博客 » 作为一个程序员需要学多少技能?

分享到:更多 ()

评论 抢沙发

评论前必须登录!