刚毕业的小伙伴信心满满地找工作,却在吃了一次次闭门羹后蓦然发现一纸计算机专业的文凭并未真正赋予自己工作的技能。这种例子实在不胜枚举,没有几个学生能100%为自己的第一份真正的工作做好准备。如果你想顺利成为一名程序员,那么请学学以下10项小编从36氪网上为大家搜集整理的程序员基本技能吧!
1、版本控制系统(VCS)
VCS也许是计算机课程最大的疏漏。这些课程光记得教如何写代码,但却往往忘记教学生如何去管理代码。而每一个程序员都应该懂得利用Git或Subversion有效地创建repository(仓库)、编辑与提交代码、进行分支与合并、了解项目工作流。
2、写作
身为程序员要写的不只有代码。你还要撰写项目的发布说明,给版本控制写提交消息,在系统里面编写漏洞报告。这些和许多地方都需要清晰有效的文字表达——但这个技能计算机科学却很少强调。
3、正则表达式
正则表达式本身就是一门语言,每一个现代程序员都需要熟练掌握。每一门现代语言都支持正则表达式或者有相关标准库。如果代码需要校验某字符串是否含有5个字符、1个破折号和1个数字,你应该马上就能写出 /^[A-Z]{5}-\d$/。
4、库的使用
现在已经是2014年,没人需要用正则表达式从URL析取主机名了。因为每一门现代编程语言都有执行常用功能的标准库。程序员需要明白,那些经过开发、测试和调试的代码通常要比自己重新写的代码更好。更重要的是,无需编写的代码实现起来要快得多。
5、SQL
很多程序员的SQL竟然是在工作中学会的。有程序员不用数据库的吗?把数据存进平面文件的时代已经结束了。一切东西都要进出数据库,而SQL则是存取数据的语言。这是一门说明性语言,不是程序语言,所以用它来解决问题时需要新的思考方式。每一个程序员都应该了解数据库标准化基础,能够执行SELECT(及INNER、OUTER JOIN)、INSERT、UPDATE和DELETE。
6、IDE、编辑器及CLI工具
只懂用锯子的木匠永远也无法出师,所以计算机专业毕业的人只懂Notepad或pico的话实在令人惊诧。编程工具帮助操纵代码及其他数据,令程序员生活变得容易。所以每一个程序员都应该知道命令行、shell脚本、find、grep及sed的使用。
7、调试
每一个程序员都应该知道利用交互式调试器或在代码中点缀一些输出语句来调试程序。通过逐步求精来跟踪问题的能力实在是太重要了。
8、防错性编程
错误总是难免的,哪怕是明星程序员也不例外。失控是世界的常态,出错毫不奇怪。防错性编程正是理解了这个事实。如果东西不会出错,我们就不会检查文件打开成功与否,不会检查客户ID是否合法数字,不用测试代码是否允许正确。程序员需要知道,编译器告警是有用的工具,可让我们生活得更舒适,而不是要避而远之的麻烦事。每一个程序员都应该知道为什么每一个PHP程序都要这样开头:seterrorreporting,为什么每一个Perl程序都要写上这些语句:use strict; use warnings;。
9、团队协作
很少有编程工作会让你自己一个人完成,如果你经常这么做,智力会受损,表现会变弱。你的代码必须与别人的交互或者混合。再有才的程序员,如果无法与别人协作,都会给项目造成负面影响,并迅速成为团队的负担。
10、利用现有代码
在学校的时候,每一次作业都是一个新项目,但实际工作不是这样的。对于刚工作的人来说,所接到的第一项任务往往是修改代码漏洞。然后,再在现有代码库的基础上为现有系统增加一个小功能。设计新代码那是几个月后的事情,如果幸运的话。所以作为程序员的第一步,你需要学会利用现有的代码。
以上10项技能都非常的细致也非常的基本,需要同学们在项目开发中不断练习运用,使之真正内化成为自身的优秀资质。如果具备了这种资质,你无疑在应聘程序员的战场上,比竞争者们多了几柄利器。如果能够将运用这些技能完成的项目等成果体现在求职简历中,那就更是加分啦!
模板链接: 计算机本科专业应聘软件工程师简历模板
本文由Yvett_Z@乔布简历 整理成文,转载请注明出处
http://cv.qiaobutang.com/knowledge/articles/53a258f90cf2467856f11f5b