`
javababy1
  • 浏览: 1182267 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

程序员必备的基本技能

 
阅读更多

软件开发是一个跨度很大的技术工作,在语言方面,有C,C++,Java,Ruby等等等等,在环境方面,又分嵌入式,桌面系统,企业级,WEB,基础系统,或是科学研究。但是,不管是什么的情况,总是有一些通用的基本职业技能。

这些最基本的职业技能通常决定了一个程序员的级别,能否用好这些技能,直接关系到了程序员的职业生涯。很多程序新手也是因为缺少、达不到或是不熟悉在这些基本技能,所以,他们需要有老手带,需要努力补齐这些技能。而高级程序员应该非常熟悉这些基本技能,而且有能力胜任并带领其他经验不足的程序员。

下面这些基本职业技术可以用来做为对一个程序员的评估,很明显,下面的这些技能都可以用来做面试。虽然,还有很多非技术的因素,但对于评估一个程序员的技术能力来说,其应该是足够的了。

下面是程序员所应该具备的基本职业技能:

基本技能 技能描述
阅读代码 这个技能需要程序员能够具备读懂已经存在的代码的能力,这样的能力可以让程序员分析程序的行为,了解程序,这样才能和开发团队一起工作,继承维护或是改进现有的程序。
编写程序 编写程序并不包括程序设计。不要以为编程是一件很简单的事情,很多程序员都认为编程只需要懂得程序语言的语法,并把设计实现就可以了。但是这离编写程序还远远不够,使用什么样的编码风格成为编写程序员最需要具备的基本技能。能否使用非常良好的编程风格直接决写了程序员的级别。
软件设计 这一能力直接决定了需要吏用什么样的代码技术达到怎么样的功能,而系统架构设计直接决定了软件的质量、性能和可维护性。并不是所有的程序在这一方面都非常优秀,但每个程序员都需要或多或少的明白和掌握这一基本技能。
熟悉软件工程 每个程序员都应该明白软件工程是什么东西,都应该知道,需求分析,设计,编码,测试,Release和维护这几个阶段。当然,几乎所有的人都知道这些东西,但并不是每个人都很清楚这些东西。现在很多高级程序员都会混淆“需求规格说明书FS”和“概要设计HLD”。另外,程序员还需要知道一些软件开发的方法论,比如:敏捷开发或瀑布模型。
使用程序库或框架 一个程序员需要学会使用已有的代码,无论是标论的程序库,或是第三方的,还是自己公司内部的,都需要学会做。比如:C++中,需要学会使用STL,MFC,ATL,BOOST,ACE,CPPUNIT等等。使用这些东西,可以让你的工作事半功倍。
程序调试 程序调试是分析BUG和解决问题最直接的能力。没有人能够保证程序写出来不用调试就可以运行正常,也没有人可以保证程序永远不会出BUG。所以,熟练使用调试器是一个程序员需要具备的基本技能。
使用IDE 学会使用IDE工具也会让你的工作事半功倍。比如,VC++,Emacs,Eclipse等等,并要知道这些IDE的长处和短处。
使用版本控制 一定要学会使用版本控制工具,什么叫mainline/trunk,什么叫tag,什么叫branch,怎么做patch,怎么merge代码,怎么reverse,怎么利用版本控制工具维护不同版本的软件。这是程序员需要明的的软件配置管理中最重要的一块。
单元测试 单元测试是每个程序都需要做的。很多单元测试也是需要编码的。一定要学会在xUnit框架下进行单元测试。比如JUnit, NUnit, CppUnit等等。
重构代码 每个程序员都需要有最基本的能力去重构目前已有的代码,使代码达到最优但却不能影响任何的已有的功能。有一本书叫《软件的重构》,每个程序员都应该读一下。
自动化编译 程序员需要使用一个脚本,其能自动化编程所有的工程和代码,这样,整个开发团队可以不停地集成代码,自动化测试,自动化部署,以及使用一些工具进行静态代码分析或是自动化测试。

当然,还有很多的基本技术也是非常重要的,比如,与人的沟通能力,语言的表达能力,写作能力,团队协作能力,适应变化的能力,时间管理能力,多任务处理能力,自我学习能力,故障处理能力,等等,等等,这里只是列举了和技术相关的能力,这些是程序最最最基本的能力,只要是程序员就必需要有的能力。

分享到:
评论

相关推荐

    C++程序编码规范(程序员必备)

    该文档是C++编程规范是C++程序员必备的基本技能。该文档可以帮助你写出漂亮的代码。

    程序员必备简历模板(适用于所有程序员)

    程序员必备简历模板是一份专门为程序员设计的简历模板,旨在帮助程序员在求职过程中更好地展示自己的技能和经验。该模板包括以下内容: 个人信息:包括姓名、联系方式、地址等基本信息; 工作经历:详细记录了在...

    PHP程序员基本要求和必备技能

    大致内容是采访一位30岁的PHP高级程序员,他讲了一些关于PHP程序员必备知识,感觉很是受用,于是做了些笔记: 一名PHP程序员的基本要求: 1、精通html、CSS、JS等网站前端技术。 2、掌握PHP编程技术。 3、了解Linux...

    程序员必备-软考高级-软考信息系统项目管理师-考试大纲.doc

    本资源摘要信息为程序员必备的软考高级考试大纲,考试范围涵盖信息系统项目管理的多个方面,旨在衡量考生的知识和技能。 考试说明: 本考试的合格人员能够掌握软考中信息系统项目管理的知识体系,具备管理大型、...

    STL经典标准库算法的基本使用

    其内容以项目实例为基础,介绍了STL的基本使用,,STL的基本使用,内容涵盖STL历史、容器、算法、迭代子

    计算机编程成功的十项必备技能

    作为一个正在用C#和XML语言编程的技术文档工程师,我认为掌握计算机语言需要一些基本技能。毫无疑问,今天的计算机编程已经和以前大不相同,因此不管是正在学习新的编程语言来提高自己的程序员,还是正在钻研一两门...

    自我评价java程序员简历自我评价.pdf

    2.pcb设计:文中提到独立完成网表导入到出GERBER整个流程,这是pcb设计的基本技能之一。 3. Layout设计:文中提到使用ALLEGRO工具进行Layout设计,这是pcb设计的重要步骤之一。 4. 团队协作:文中强调了团队协作的...

    算法学习书籍推荐

    在计算机科学和信息技术领域,数据结构和算法是程序员必备的技能,它们是计算机科学的基础部分。学习数据结构和算法有助于提高编程能力和解决问题的能力。以下是几本高质量的算法学习书籍推荐: 1. 《数据结构算法...

    Java中最基本编绎错误的英语解释

    根据编对器的报错信息,我们能快速修改代码中的语法错误,这是一位程序员必备技能之一。 很多初学者编程时,苦于无法看懂编绎器的报错信息,会走不少弯路,浪费很多时间。 该文档旨在引起初学者对编绎器报错信息的...

    java 程序员简历模版

    Java 程序设计是 Java 开发工程师必备的技能之一。该知识点涵盖了 Java 编程语言的基本语法、数据结构、算法实现、面向对象编程等方面的内容。在本资源中,Java 程序设计作为主要的技术技能之一,被多次提及。 知识...

    程序员的自我修养链接、装载与库.pptx

    《程序员的自我修养链接、装载与库》是一本关于程序员技能修养的重要书籍,它从链接、装载和库的角度出发,深入浅出地介绍了程序员必备的核心知识和技能。本书介绍了程序员的自我修养,包括对编程语言、算法和数据...

    java程序员规划java程序员职业规划.docx

    中期目标是掌握多种编程语言和软件开发基本技能;长期目标是学习管理方面的相关知识,转型为管理型人才。 四、 评估调整 Java 程序员需要不时对自己的职业规划进行评估和调整,每三个月对自己所做的工作进行一次...

    程序员最新版数据结构与算法实战 走上编程大师之路必备数据结构与算法课程

    经验丰富的程序员,希望升级他们的数据结构与算法技能。 所有渴望成为编程大师的人。 课程要求: 虽然没有严格的先决条件,但我们建议学员具备以下基础知识: 基本的编程经验,不限于特定编程语言。 对计算机科学...

    HM程序员最新版数据结构与算法实战 走上编程大师之路必备数据结构与算法课程

    经验丰富的程序员,希望升级他们的数据结构与算法技能。 所有渴望成为编程大师的人。 课程要求: 虽然没有严格的先决条件,但我们建议学员具备以下基础知识: 基本的编程经验,不限于特定编程语言。 对计算机科学...

    应聘程序员面试自我介绍.pdf,这是一份不错的文件

    软件开发基础是程序员的必备技能,因此在自我介绍中,应聘者需要强调自己的软件开发基础,例如编程语言、开发平台、数据库管理等。 4. 团队合作和集体活动 团队合作和集体活动是非常重要的,因为它们可以体现出...

    c语言练习题基本算法一百例

    掌握C语言算法实践是任何一名程序员的必备技能。 在这百例C语言练习题中,我们将涵盖基本算法的所有方面,包括排序算法、查找算法、图形算法、动态规划算法等。这些算法都是计算机科学中最基础和最重要的内容,对于...

    东软代码规范编写大全

    有关代码的规范编写,一个出色的程序员所必备的基本技能,相信能帮你成为高手!

    python编程技术讲解(1).docx

    作为一种高级编程语言,Python在科技领域、互联网和AI领域有着非常广泛的应用,已经成为程序员必备技能之一。那么,如何学习Python编程技术呢?下面将分步骤介绍: 1. 准备工作 在开始学习Python编程技术之前,我们...

    Java编程中必备的十种技能

    作为一个语言编程技术文档工程师,我个人认为掌握计算机语言需要一些基本技能。以下这几点相信能够帮你翻越Java计算机编程这座山。  1、读编程手册。无论是Java或者c++程序员常常和负责系统设计的架构师一起工作,...

Global site tag (gtag.js) - Google Analytics