`
javababy1
  • 浏览: 1215377 次
  • 性别: 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等等。
重构代码 每个程序员都需要有最基本的能力去重构目前已有的代码,使代码达到最优但却不能影响任何的已有的功能。有一本书叫《软件的重构》,每个程序员都应该读一下。
自动化编译 程序员需要使用一个脚本,其能自动化编程所有的工程和代码,这样,整个开发团队可以不停地集成代码,自动化测试,自动化部署,以及使用一些工具进行静态代码分析或是自动化测试。

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

分享到:
评论

相关推荐

    java程序员必备技能(为java学习引航)

    ### Java程序员必备技能详解 #### 一、语法基础 对于一名Java程序员而言,掌握扎实的语法基础至关重要。在日常开发过程中,经常会遇到IDE提示的语法错误。这时,开发者需要能够根据错误信息迅速判断出问题所在,并...

    程序员必备技能.pdf

    "程序员必备技能.pdf" 本篇文章主要讲述了程序员需要具备的基本技能,以便更好地在软件开发领域中崭露头角。 首先,熟练掌握开发工具是程序员的必备技能。其中,C/C++和JAVA是重点推荐的开发工具。C/C++以其高效率...

    Java程序员必备技能

    ### Java程序员必备技能详解 #### 一、语法基础 对于一名Java程序员而言,掌握扎实的语法基础至关重要。这意味着在编写代码时,面对IDE(集成开发环境)中的报错信息能够迅速定位并解决语法错误。例如,当遇到诸如...

    一个java程序员必备的10项技能

    ### 一个Java程序员必备的10项技能 随着信息技术的快速发展与互联网行业的不断壮大,Java作为一门经典且广泛应用的编程语言,在软件开发领域占据着举足轻重的地位。对于Java程序员来说,掌握一定的核心技能是必不可...

    java程序员必备api集合

    【Java程序员必备API集合】是针对Java开发人员的一份综合学习资源,涵盖了多个关键技术和库。这份资源旨在帮助开发者深入理解和应用各种API,提升编程效率和项目质量。下面将逐一介绍其中涉及的主要知识点: 1. **...

    程序员必备.doc cmd

    标题中的“程序员必备.doc cmd”表明这是一个针对程序员的文档,主要涵盖了使用命令行工具cmd的知识。cmd是微软Windows操作系统中的命令提示符,是系统提供的一个基础命令行接口,程序员经常用它来进行各种自动化...

    程序员必备600英语单词

    ### 程序员必备600英语单词详解 #### 1. Application (应用程式应用、应用程序) **Application** 在编程领域中指的是一个完整的软件程序,它可以是一个独立的应用或者一个集成到更大系统中的组成部分。 #### 2. ...

    C++C程序员的基本编程技能

    在C++/C编程领域中,掌握一系列基本技能是成为一名合格程序员的必备条件。这些技能不仅包括对语言特性的深入理解,还包括良好的编程习惯与实践。以下是对给定内容中提到的一些关键知识点进行详细解析。 #### 一、...

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

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

    程序员 必备 面试题 Accp 5.0 S2

    【程序员必备面试题Accp 5.0 S2】是一个针对程序员面试准备的资源集合,主要涵盖Java语言的相关知识。这个压缩包包含了多个文档,详细列出了不同领域的Java面试问题,帮助程序员提升技能并顺利通过面试。以下是这些...

    Java初级程序员必备的图

    【Java初级程序员必备知识点】 Java 是一种广泛使用的高级编程语言,尤其在企业级应用开发中占有重要地位。对于初级Java程序员来说,理解并掌握以下几个关键知识点至关重要: 1. **线程状态及其转换**: - **新建...

    程序员的羊皮书——程序员必备

    《程序员的羊皮书——程序员必备》是一本旨在帮助程序员提升个人素养与专业技能的书籍。这本书不仅仅关注编程技术本身,而是将重点放在了程序员如何更好地融入职场、提高工作效率和团队协作能力上。"做人"在这里指的...

    程序员必备的C语言书

    《程序员必备的C语言书》这本书提供了一个全面深入的C语言学习平台,从基础知识到高级特性,旨在帮助程序员提升他们在C语言编程上的技能和理解。 书中除了介绍C语言的基本语法和结构,还涉及了C语言的核心概念,...

    程序员必备的基本算法:递归详解.pdf

    理解并掌握递归对于任何程序员来说都是必备技能。 递归的核心在于两个主要特性:基本情况(Base Case)和递归情况(Recursive Case)。基本情况是问题可以直接得出答案的情况,通常是递归过程的终止条件。递归情况...

    Linux运维-高级程序员必备技能Shell编程资料.zip

    在IT行业中,Linux运维是至关重要的领域,尤其对于高级程序员来说,掌握Shell编程技能更是必不可少。Shell编程是Linux操作系统中的命令解释器,它允许用户通过命令行与系统交互,进行自动化任务处理,提高工作效率。...

    php程序员必备手册

    【PHP程序员必备手册】是为PHP开发者精心整理的一份综合资源集合,涵盖了多个与Web开发相关的主题,旨在帮助程序员提升技能、解决问题。手册包括了CSS、jQuery、Linux、MySQL、PHP以及正则表达式等重要领域的精华...

    《程序员面试宝典》程序员面试必备

    这本书的目的是帮助程序员提升自己的技能,充分准备面试,以提高成功获得心仪职位的概率。以下是从这本书中可以提炼出的一些关键知识点: 1. **编程基础**:面试时,面试官通常会考察候选人的编程基本功,包括语法...

    Sql程序员必备宝典,随身携带

    《Sql程序员必备宝典》是一本专为Sql程序员量身打造的参考资料,旨在帮助程序员们在日常工作中更好地理解和掌握Sql语言。"随身携带,有备无患"的标语突显了这本书的实用性和便携性,使得程序员无论何时何地都能随时...

    代码大全 程序员必备

    这些内容都是软件开发人员需要掌握的基本技能,对于提升个人技术水平和团队生产力具有重要意义。 总之,《代码大全》是一本全面而深入的编程指南,它涵盖了从编码规范到高级设计原则的广泛话题。无论你是刚刚入门的...

    程序员必备 computer-basic

    计算机基础知识是每一个程序员不可或缺的知识体系,它构成了我们日常编程工作的坚实基础。...在阅读《程序员必备 computer-basic》这份资料时,你会深入了解到这些概念的细节,为你的编程生涯打下坚实基础。

Global site tag (gtag.js) - Google Analytics