谈软件开发人员必备的四大看家本事

现如今可供选择软件开发语言及平台可谓五花八门,作为软件开发人员常常有人向我征求关于如何成为更强的程序员的建议。最近花了很多心思琢磨此问题,并想出了一些我认为最要紧且能让你受益终生的软件开发技能,一旦软件开发人员掌握了这些技能,不仅会给他们带来最佳的工作机会,还会使软件开发工作变得卓有成效。

软件开发

软件开发人员的四大“看家本事”之一:解决问题

以前我曾谈到需要学会如何解决问题,甚至给出了如何学会解决问题的若干步骤,因为我认为这种技能对任何软件开发人员都是至关重要的。软件开发百分之百就是解决问题。若毫无问题,就无需软件。所有软件都被设计用于解决某些用户问题,而通用解决方案就是由许多能搞定的小规模问题所组成的阵列。

要是你不能解决问题,就不会精通软件开发,而你所用的编程语言或技术也就无所谓了。在解决问题时,大多数软件开发人员的表现简直糟糕透顶。我常常会听到一些关于求职面试太难的抱怨,因为面试官会要求软件开发人员去解决有一定难度的问题。

我谈过为何有难度的面试挺好,而其中的部分原因在于,面试官就是要测试软件开发人员解决问题的能力。假想你是木匠。要想成为出色的木匠,也许你应该擅长切削木材。也许你应该亲手做过各种各样的部件,同时也用过许多不同的工具切削木材。无论你的木工经验有多少年,抑或设计出的家具或橱柜有多漂亮,每次你也要想方设法切削木材,努力做出各个部件。切削木材是木工活的基础技能,就像解决问题是软件开发的基础技能一样。

软件开发人员的四大“看家本事”之二:自学

在生活中,可能没有比学会学习更重要的技能了。此种技能在软件开发中尤其重要,因为据我所知,任何领域的变化速度都超不过软件开发。你不可能无所不知、无所不晓。甚至你都来不及投入时间去成为某一特定框架或技术的大师——因为事物发展得太快了!反而,你需要这样的能力,即为完成手头任务而快速获取所需知识的能力。要是你真想具备某种能让你在软件开发职业生涯中始终与时俱进的技能,那就学习如何自学吧。

提高此种技能的唯一方法就是付诸实践。走出去学习新的编程语言或技术,即使你认为决不会用得上它(也不妨学一下)。将来你会惊讶地发现,你竟然可以很快地把它捡起来,因为你早就对相关基础知识一清二楚了。要是你能迅速适应日新月异的软件开发市场、以及与之相关的各种技术和平台,你就会拥有那些总是很抢手的技能。

软件开发人员的四大“看家本事”之三:命名

通过在软件开发人员亲手编写的代码中查看方法、变量及类的命名方式,大多数情况下,我能准确预测出软件开发人员的技能水平。

软件开发就是在描述形而上学的内容。我们所构建的大多数内容都是看不见摸不着的。每次你编码时,就是在给事物命名。当阅读自己或他人所写的代码时,你会从代码中的事物名称获得对代码的大部分理解。

要给代码中的概念及数据起合适的名字,而缺乏此能力的软件开发人员就像个哑巴翻译。无论你能否明白某事,要是你不能妥善地解释它,那么此事会转瞬即逝。这也是软件开发中最显而易见的一面。简单看一眼你的代码,很难分辨代码正确与否或效率高低,但如果代码能让我一望而知,那么我会认为你知道自己在做什么。

软件开发人员的四大“看家本事”之四:待人接物

除非你单独工作,且只为你自己开发软件,否则,作为软件开发人员,其他人就会影响到你的职业生涯。作为软件开发人员,此种技能对你的意义在于,除非你能妥善地处理与其他开发者、经理、甚至客户的关系,否则,即便你有许多好点子或很有用的技能,你还是会四处碰壁。

陕西弈聪软件信息技术股份有限公司
电话:13679229477    02989322522
陕西省西安航天基地神州四路科为城墅20栋4301