- 浏览: 157588 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (210)
- java (44)
- javascript (5)
- 网摘 (21)
- 程序人生 (19)
- hibernate (21)
- spring (7)
- struts (1)
- jquery (2)
- mssql (3)
- mysql (3)
- oracle (7)
- 学习日记 (10)
- PowerDesigner (1)
- android (4)
- 调试 (1)
- tomcat (3)
- webapp (1)
- context (2)
- jsp (2)
- 学习 (18)
- 态度 (4)
- 坚持 (4)
- jsf (1)
- ui (1)
- css (1)
- seam (0)
- 转载 (5)
- JNDI (1)
- 创业 (1)
- 公司 (1)
- 方向 (1)
- ETL (1)
- Datastage (1)
- 数据整合 (1)
- 心情,感触 (1)
- 开发 (2)
- 测试 (1)
- 需求 (1)
- 湿身 (1)
- 网购,分类 (1)
- 驾校,转载 (1)
- 中秋,露营 (1)
- 域名 (1)
- 空间 (1)
- 网站程序 (1)
- SolrCloud (1)
- Solr (6)
- 全文库 (1)
- HBase (1)
- Hadoop (1)
- 网络应用 (1)
- 数据结构 (1)
- NoSQL (1)
- jQueryEasyUI (1)
- 面试 (1)
- 三十六计 (1)
- S2S3H4 (1)
- jar (1)
- war (1)
- web 项目 (1)
- Subversion (1)
- TortoiseSVN (1)
- MyEclipse (1)
- eclipse svn插件 (1)
- SQL2005 (1)
- ASP (1)
- 笔记 (2)
- 虚拟器、centOS、jdk、tomcat、nginx (1)
- memcached (1)
- nginx (1)
- telnet (1)
- nfs (1)
- zookeeper (2)
- window (1)
- linux (3)
- cronolog (1)
- web (1)
- mybatis (3)
- 设计模式 (1)
- 测试覆盖率 (1)
- EclEmma (1)
- tomcat7 (1)
- sore (1)
- 时间 (1)
- fackbook (0)
- facebook (1)
- IK (2)
- PKUSUMSU (1)
- openoffice (1)
- pdf (1)
- memcache (1)
- 动态词库 (1)
- 动态同义词 (1)
- centos7.3 (2)
- maven (4)
- 111 (0)
- nexus (2)
- 23种设计模式 (1)
- springboot (1)
- shiro (1)
- redis (1)
- rabbitMQ (1)
- native (1)
- dll (1)
- jasperReports (1)
- ireport (1)
最新评论
-
zhongfenglin:
学车的经历 -
Tiny_小小:
...
网购的选择 -
jrjr200411:
楼主写的好!
面对大公司和小公司的选择 -
feelboy:
说的很好。
每周四十小时,你有多少是在为自己干活?
软件开发是一个跨度很大的技术工作,在语言方面,有C、C++、Java、Ruby等等等等;在环境方面,又分嵌入式、桌面系统、企业级、WEB、基础系统,或是科学研究。但是,不管是什么的情况,总是有一些通用的基本职业技能。
这些最基本的职业技能通常决定了一个程序员的级别,能否用好这些技能,直接关系到了程序员的职业生涯。很多程序新手也是因为缺少、达不到或是不熟悉在这些基本技能,所以,他们需要有老手带,需要努力补齐这些技能。而高级程序员应该非常熟悉这些基本技能,而且有能力胜任并带领其他经验不足的程序员。
下面这些基本职业技术可以用来做为对一个程序员的评估,很明显,下面的这些技能都可以用来做面试。虽然,还有很多非技术的因素,但对于评估一个程序员的技术能力来说,其应该是足够的了。
下面是程序员所应该具备的基本职业技能:
阅读代码 - 这个技能需要程序员能够具备读懂已经存在的代码的能力,这样的能力可以让程序员分析程序的行为,了解程序,这样才能和开发团队一起工作,继承维护或是改进现有的程序。(相关阅读:《阅读优秀代码是提高开发人员修为的一种捷径》)
编写程序 - 编写程序并不包括程序设计。不要以为编程是一件很简单的事情,很多程序员都认为编程只需要懂得程序语言的语法,并把设计实现就可以了。但是这离编写程序还远远不够,使用什么样的编码风格成为编写程序员最需要具备的基本技能。能否使用非常良好的编程风格直接决写了程序员的级别。
软件设计 - 这一能力直接决定了需要吏用什么样的代码技术达到怎么样的功能,而系统架构设计直接决定了软件的质量、性能和可维护性。并不是所有的程序在这一方面都非常优秀,但每个程序员都需要或多或少的明白和掌握这一基本技能。
熟悉软件工程 - 每个程序员都应该明白软件工程是什么东西,都应该知道,需求分析、设计、编码、测试、Release和维护这几个阶段。当然,几乎所有的人都知道这些东西,但并不是每个人都很清楚这些东西。现在很多高级程序员都会混淆“需求规格说明书FS”和“概要设计HLD”。另外,程序员还需要知道一些软件开发的方法/论,比如:敏捷开发或瀑布模型。
使用程序库或框架 - 一个程序员需要学会使用已有的代码,无论是标论的程序库,或是第三方的,还是自己公司内部的,都需要学会做。比如:C++中,需要学会使用STL、MFC、ATL、BOOST、AC、CPPUNIT等等。使用这些东西,可以让你的工作事半功倍。
程序调试 - 程序调试是分析BUG和解决问题最直接的能力。没有人能够保证程序写出来不用调试就可以运行正常,也没有人可以保证程序永远不会出BUG。所以,熟练使用调试器是一个程序员需要具备的基本技能。
使用IDE - 学会使用IDE工具也会让你的工作事半功倍。比如,VC++、Emacs、Eclipse等等,并要知道这些IDE的长处和短处。
使用版本控制 - 一定要学会使用版本控制工具,什么叫mainline/trunk,什么叫tag,什么叫branch,怎么做patch,怎么merge代码,怎么reverse,怎么利用版本控制工具维护不同版本的软件。这是程序员需要明的的软件配置管理中最重要的一块。
单元测试 - 单元测试是每个程序都需要做的。很多单元测试也是需要编码的。一定要学会在xUnit框架下进行单元测试。比如JUnit, NUnit, CppUnit等等。
重构代码 - 每个程序员都需要有最基本的能力去重构目前已有的代码,使代码达到最优但却不能影响任何的已有的功能。有一本书叫《软件的重构》,每个程序员都应该读一下。
自动化编译 - 程序员需要使用一个脚本,其能自动化编程所有的工程和代码,这样,整个开发团队可以不停地集成代码,自动化测试,自动化部署,以及使用一些工具进行静态代码分析或是自动化测试。
当然,还有很多的基本技术也是非常重要的,比如,与人的沟通能力,语言的表达能力,写作能力,团队协作能力,适应变化的能力,时间管理能力,多任务处理能力,自我学习能力,故障处理能力,等等。这里只是列举了和技术相关的能力,这些是程序最最最基本的能力,只要是程序员就必需要有的能力。
发表评论
-
如果有人让你推荐编程技术书,请叫他看这个列表
2018-01-03 17:22 298来自这个网站的分享:http://blog.jobbole ... -
程序员必须进行的10项投资
2014-06-09 17:22 450你的健康 显而易见,开发人员经常都是坐着不动的。每天坐 ... -
win7 32位装win7 64位系统
2012-11-17 14:49 6081.下载win7 64位系统的镜像文件 2.下载nt6_h ... -
国外程序员推荐:每个程序员都应读的书
2012-06-16 12:52 569“如果能时光倒流,回 ... -
提高代码质量的方法有哪些?
2012-01-31 09:56 585人跟人的能力千差万别,所以写出来的代码质量,肯定是不同的。有的 ... -
多些时间能少写些代码
2011-10-30 19:55 549导读:作者陈皓在微博上说过这样一段话:“聪明的程序员使用50% ... -
如何成为优秀的开发人员?
2011-06-14 08:38 679对于每个从事开发工 ... -
程序员成长的10个阶段
2011-06-14 08:36 705导读:本文节选自机 ... -
十大开发代码原则
2011-03-23 22:09 555十条开发指导原则,最基本的思想是“高效,高质量的写出满足业务功 ... -
再次写给我们这些浮躁的程序员
2011-02-13 22:17 557多做项目,多思考不要 ... -
面对大公司和小公司的选择
2010-12-24 22:52 1316大学毕业择业的时候, ... -
离高职高薪究竟有多远
2010-12-08 20:41 525我发现了一篇好东东,希望对大家有帮助! 你专业能力很强 ... -
《高效能人士的七个习惯》精彩书摘
2010-12-08 20:32 787Always wanna read this book sin ... -
教你如何在三个月内获得三年的工作经验
2010-12-08 19:50 558一篇很不错的文章, ... -
程序员应知——学习、思考与分享
2010-12-02 22:30 584有人说,程序员是个苦 ... -
每周四十小时,你有多少是在为自己干活?
2010-11-10 22:11 979努力工作为什么?普通人不外乎希望加薪、升职,过的更好。但是,要 ... -
参考学习java的30个目标
2010-11-08 21:09 659这个仅仅是个参考,看我们到底能掌握多少,应实际应用的需要适当的 ... -
学习别人的经验
2009-03-16 22:15 773写blog已经快两年了,起初仅仅是为了自己“备个案”,结果慢慢 ...
相关推荐
未来五年程序员应该干的事,值得大家一看。
程序员需要具备良好的沟通和协作能力,以适应商业化和产品化的开发需求。 2. **文档习惯**:编写清晰、完整的文档是正规开发流程的一部分,对于项目的后续维护、错误修复和模块复用至关重要。高水平程序员会投入...
—合格程序员应该具备的12种能力" 指向了一个讨论合格程序员所需技能的主题。在这个行业中,成为一个优秀的程序员不仅仅是掌握编程语言那么简单,还需要一系列综合能力。以下是对这些能力的详细阐述: 1. **解决...
10. **数据科学和分析**:随着大数据和机器学习的普及,程序员应具备基本的数据处理和分析能力,如使用Python的Pandas库或R语言进行数据分析。 总结来说,程序员要在未来五年内保持竞争力,需要不断学习新技术,...
合格的程序员需要具备以下基本素质: 1. **团队精神和协作能力**:无论技术水平如何,程序员都必须具备团队协作精神,因为任何复杂的项目都需要团队共同努力才能完成。像Linux这样的大型项目,正是由全球各地的...
此外,程序员需要具备需求理解能力。理解并满足功能需求的同时,也要考虑到性能指标,如稳定性、并发支撑能力和安全性。这需要程序员通过实际项目经验和持续学习来积累。 最后,复用性思维和模块化设计能力能帮助...
行业,程序员的能力不仅仅局限于编程,而是需要一系列综合技能来确保软件开发的成功。以下是对程序员应具备的12种能力的详细解析: 1. **编程语言能力**:精通一门编程语言是程序员的基础,这意味着深入理解语法、...
本篇文章主要讲述了程序员需要具备的基本技能,以便更好地在软件开发领域中崭露头角。 首先,熟练掌握开发工具是程序员的必备技能。其中,C/C++和JAVA是重点推荐的开发工具。C/C++以其高效率和高度灵活性,成为了...
2.pcb设计:文中提到独立完成网表导入到出GERBER整个流程,这是pcb设计的基本技能之一。 3. Layout设计:文中提到使用ALLEGRO工具进行Layout设计,这是pcb设计的重要步骤之一。 4. 团队协作:文中强调了团队协作的...
这要求程序员具备一定的设计思维,能够从全局角度考虑系统的可扩展性、稳定性和安全性。系统架构能力的提升有助于程序员成长为技术领导者或架构师。 ### 6. 职业道德与规范 职业道德是任何职业都应重视的品质,...
阿里资深技术专家认为,java程序员应该具备基本语法的知识,包括static、final、transient等关键字的作用,foreach循环的原理等等。对于基本语法的考查,阿里资深技术专家建议java程序员应该具备深入的理解和掌握。 ...
程序员能力矩阵教材 程序员能力矩阵是衡量程序员能力的重要指标,它涵盖了计算机科学、...程序员能力矩阵涵盖了计算机科学、软件工程、程序设计、交流和代码组织等多个方面的知识点,要求程序员具备广泛的知识和技能。
程序员应该具备独立思考和创新解决问题的能力,不拘泥于既定的解决方案,敢于尝试新的技术和方法。 团队合作能力同样重要。在实际开发中,程序员通常需要与他人协作完成项目,良好的沟通和协作能力可以使团队工作...
### Java程序员必备技能详解 ...综上所述,成为一名出色的Java程序员不仅需要扎实的基础知识和技能,还需要不断学习新的技术和工具,保持对最新趋势的关注。只有这样,才能在这个快速发展的行业中立于不败之地。
这要求Java程序员具备以下技能: - **多线程编程**:理解多线程的基础知识,如线程安全、死锁、线程池等概念,并能运用到实际开发中。 - **消息队列**:掌握常用的消息中间件,如RabbitMQ、RocketMQ等,以及它们在...
它涵盖了程序员需要掌握的各种关键知识点,无论你是刚踏入编程领域的新人,还是希望巩固和提升现有技能的开发者,都能从中受益。 首先,教材的基础部分将引导你走进编程世界,讲解编程语言的基本语法和逻辑。这包括...
"java程序员个人简历02.doc" 通过对该简历的详细分析,我们可以总结出以下几点关键知识点: 基本信息 ...该简历展示了 Java 程序员的基本信息、工作经验、个人技能、项目经验等多个方面的知识点。
总之,成为一名优秀的程序员不仅仅是掌握编程语言那么简单,还需要培养一系列软技能,如团队合作、文档编写、代码规范、需求分析、模块化设计、测试技巧以及持续学习等。这些素质相互补充,共同构成了一个程序员的...
### 一个Java程序员应该掌握的10项技能详解 #### 1. 语法 作为Java程序员,必须熟悉Java...总之,成为一名优秀的Java程序员需要不断地学习和实践,掌握上述技能不仅有助于个人职业发展,也能为项目带来更大的价值。