`
wenjinglian
  • 浏览: 822260 次
  • 性别: Icon_minigender_1
  • 来自: 株洲->深圳
社区版块
存档分类
最新评论

【测试调查】你是程序员还是程序设计师?

阅读更多

二十年前,顶尖的程序员能将一个完整的应用放到一个64KB大小的.COM文件里。这是他们对可怜的因特尔80386电脑在编程上进行的最大挖掘。

这是因为,二十年前,电脑昂贵而程序员便宜。那是一个“电脑为先”的时代。那个时代已经过去。那种理念已经不再有人欣赏,因为如今的市场形势发生了完全的颠覆。

如今,计算机便宜而程序员昂贵。这是一个“程序员为先”的年代,不再需要考虑计算机的能力和限制,程序员的因素放到了第一位。

程序员思维

属于程序员思维的人会认为下面这个用Java实现 斐波那契数列(Fibonacci)的方法“写的很优雅”(你认为呢?):

一个典型具有“程序员思维”的程序员的特征包括:

  • 喜欢使用最先进、最新奇的技术

  • 将其人分类对待(程序员,菜鸟,文档编写员)

  • 讨厌制度、约束和标准

  • 不写单元测试——让低级程序员去写

  • 喜欢当消防队员——这是能显示他们才能的时候

  • 喜欢口述而不是写文档

  • 讨厌别人修改自己的代码

  • 喜欢一个时间里只把精力放在一个项目上

程序员是有天份的一群人。他们喜欢用写软件来表达他们的天份。他们享受编程,在编程中乐趣无穷。当你问一个程序员——“别人如何知道这段代码是干什么的?”你通常听到的回答都是一样的“——”问我就行了!“

程序设计师思维

具有程序设计师思维的程序员会重构上面的代码,让它们更易读。他会认为下面的这版Java代码”更优雅“(你觉得呢?):

一个具有”程序设计师思维“的程序员表现出下列特征:

  • 保守,喜欢使用传统的编程技术方法

  • 会先假定其他人都是新手

  • 喜欢设立和遵守规则

  • 喜欢文档而不是口述

  • 在单元测试上花大量时间

  • 不喜欢突遇紧急情况

  • 乐于看到自己的代码被修改和重构

  • 同时参与多个项目

程序设计师们是天才的团队合作者。他们关心团队合作、制度、培训和纪律,认为这些和代码同等重要。他们会保证当自己不在时其他人能轻松的接手他的代码。程序设计师最乐意看到的事情是自己写的代码能自主生存——被修改、改进、重构,直至退休。

那么问题来了,你到底是程序员,还是程序设计师呢?

 

 外刊IT评论 http://www.vaikan.com/ 

分享到:
评论

相关推荐

    程序员的岗位职责

    - 根据设计师提供的页面设计方案,实现网站的动态交互功能及项目软件的开发工作。 - 与设计师紧密合作,确保网页具备优质的用户体验。 #### 岗位工作职责 - **负责集团下属医院网站的开发设计及应用维护工作**:...

    软件测试面试题及答案(史上最全).docx

    要有架构师、开发经理、测试经理、程序员、测试员。我在里面主要是负责所分到的模块执行测试用例。 知识点:软件开发、测试过程、角色负责、测试员 11. 根据你的经验说说你对软件测试/质量保证的理解? 软件质量...

    一个软件项目团队的分工.pdf

    在软件项目团队中,通常包括项目组长、界面设计师、架构分析师、DBA、程序员、测试员等角色。每个角色都有其特定的责任和义务,以下是对每个角色的一些解释: 1. 项目组长:负责整个项目的进度和质量,管理整个项目...

    2022年应聘软件测试工程师常见的面试题.docx

    7. **软件开发与测试过程**:软件开发通常包括架构师、开发经理、测试经理、程序员和测试员等角色。测试员负责执行测试用例,验证软件模块的功能。 8. **软件测试/质量保证理解**:软件测试和质量保证是根据规格...

    软件测试面试题答案.pdf

    12. **软件测试流程**:包括需求调查、测试准备、测试设计、测试实施和测试评估等步骤,确保测试的全面性和有效性。 13. **SQA职责和工作活动**:SQA独立于开发团队,负责流程监控、评审、审计和度量,以确保软件...

    测试面试问题及答案.docx

    8. **软件开发与测试过程**:涉及架构师、开发经理、测试经理、程序员和测试员等角色。测试员主要负责执行分配的测试用例。 9. **软件测试/质量保证的理解**:软件测试是对功能、语言有效性和外观的测试,质量保证...

    软件测试面试题答案.docx

    10. **软件开发过程**:包括架构师、开发经理、测试经理、程序员和测试员等多个角色,测试员主要负责执行测试用例。 11. **软件测试/质量保证理解**:测试是根据规格设计测试用例,运行程序以发现错误。质量保证...

    2021年应聘软件测试工程师常见的面试题.docx

    6. **软件开发和测试过程**:通常涉及架构师、开发经理、测试经理、程序员和测试员等角色。测试员负责执行分配的测试用例。 7. **软件测试/质量保证的理解**:软件测试是通过运行测试用例来检查程序的功能、正确性...

    高级软件设计师之软件工程笔记

    ### 高级软件设计师之软件工程笔记 #### 一、软件生存周期 软件生存周期是软件从构思到最终退役的整个生命周期的过程。它通常被划分为六个主要阶段: 1. **软件项目计划**:在此阶段,团队需要明确项目的目标、...

    计算机技术与软件专业技术资格考试各科目介绍.pdf

    初级程序员是软件开发的基础,他们负责程序的设计和编码,通常分为程序设计人员和程序编码员。在实际工作中,初级程序员需要与项目经理密切合作,进行软件的详细设计、编码、内部测试,并承担小型项目的系统分析工作...

    大型MIS软件的开发工作是一项复杂而艰巨的系统工程知识.pdf

    项目组通常由项目负责人、系统分析师、系统设计师、程序员和测试人员等组成,形成层次分明的组织结构。项目负责人拥有决策权,对项目成败负责,需要具备丰富的项目管理和数据库设计经验。系统分析师协助项目负责人...

    18年上半年上午程序员考试真题.docx

    本题中甲程序员为乙软件设计师开发的应用软件编写了操作说明书,但著作权通常归软件的实际开发者所有,即乙软件设计师。 ### 15. 数字信封技术的作用 - **知识点:**数字信封技术的作用。 - **详细说明:**数字...

    计算机技术与软件专业技术资格考试各科目介绍.doc

    软件设计师则需要根据项目管理和软件工程要求进行系统设计,编写相关文档,并指导程序员进行编码、调试和测试,确保开发出符合设计要求的高质量软件。他们需要具备工程师级别的实际工作能力和业务水平。 网络管理员...

    qa面试问题及答案.docx

    10. **软件开发测试过程**:涉及架构师、开发经理、测试经理、程序员和测试员等角色,测试员负责执行测试用例。 11. **软件测试/质量保证理解**:软件测试是根据规格说明和程序结构设计测试用例,以检查功能、语言...

    软件开发与测试体系情况.docx

    6. **程序员**:按照设计要求编程。 7. **测试人员**:执行不同层次的测试(单元测试、集成测试)。 8. **文档人员**:撰写项目相关文档。 9. **产品经理**:参与产品策划、发布和维护。 【项目流程】 1. **可行性...

    基于用户体验的APP设计研究.pdf

    在设计APP产品时,设计师应从心理学的角度分析用户的需求与操作方式,对APP产品的设计过程进行深入研究,使APP产品最大限度地适用于目标用户。同时,注重情感设计,通过研究用户的行为与情感、认知与情感、情绪与...

Global site tag (gtag.js) - Google Analytics