查看程序员的源代码
←
程序员
跳转至:
导航
、
搜索
因为以下原因,你没有权限编辑本页:
你刚才请求的操作只对属于该用户组的用户开放:
用户
您可以查看并复制此页面的源代码:
'''程序员'''(Programmer,Computer Programmer或Coder;程序师),可以指在[[程序设计]]某个专业领域中的专业人士,或是从事[[软件]]撰写,[[计算机程序|程序]]开发、维护的专业人员。但一般Coder特指进行编写代码的编码员。 一个程序员最常使用的[[计算机语言|编程语言]](如[[汇编语言]]、[[COBOL]]、[[C语言|C]]、[[C++]]、[[C♯|C#]]、[[JavaScript]]、[[LISP|Lisp]]、[[Python]])可以加在“程序员”这个词前面用来修饰。 涉及编程的一系列职业,如(软件)开发人员、[[网页开发者|网络开发人员]]、[[流动应用程序]]开发人员、嵌入式[[韧体]]开发人员、[[软件工程师]]、[[电脑科学家]]、[[游戏程序师]]、[[游戏开发者|游戏开发人员]]和软件分析师(software analyst),通常还需要一系列其他类似的技能。用'''程序员'''这个词来指代这些职位,有时被认为是一种侮辱性的简化,甚至是贬损。 ===历史=== [[英国]]著名诗人[[拜伦]]的女儿[[爱达·勒芙蕾丝]]曾设计了[[巴贝奇分析机]]上计算[[伯努利数]]的一个程序,她甚至还建立了[[递归 (计算机科学)|递归]]和[[子程序]]的概念。由于爱达在[[程序设计]]上的突破性创新,她被称为世界上第一位程序员,详见[[计算机领域中的女性]]。 === 工作范围 === 计算机程序员编写、测试、[[调试]]和维护被称为[[计算机程序]]的详细指令,计算机必须遵循这些指令来执行它们的功能。程序员还构思、设计和测试用计算机解决问题的逻辑结构。编程领域的许多技术创新——先进的计算技术、复杂的新语言和编程工具——重新定义了程序员的角色,提升了当今许多编程工作。职位名称和描述可能会有所不同,取决于组织。 程序员在许多环境中工作,包括企业[[信息技术]](“IT”)部门、大型软件公司、小型服务公司和各种规模的政府实体。许多专业程序员也以独立承包人的身份在客户现场为咨询公司工作。程序员通常不需要有[[授权 (法律)|从业执照]]就可以工作,但他们一般都会持有[[专业认证]]。编程被广泛认为是一个[[专业]](但有些权威机构不同意这个看法,他们认为只有那些法律上规定要有从业执照的职业才能叫做专业)。 程序员的工作差别很大,这取决于他们为之编写程序的业务类型。例如,更新财务记录所涉及的指示,与飞行模拟器中训练飞行员时模拟在飞机上的状况所需的指示大不相同。简单的程序可以在几个小时内完成,更复杂的程序可能需要一年以上的工作,而其他的程序则永远不会被认为是“完善的”,而是只要继续使用就会不断进行改进。在大多数情况下,几个程序员在高级程序员的监督下作为一个团队一起工作。 程序员根据主要由高级程序员和[[系统分析员]]确定的规范编写程序。在设计过程完成后,程序员的工作就是将设计转换成计算机可以遵循的一系列逻辑指令。程序员用众多编程语言中的一种来编写这些指令。根据用途的不同,会使用不同的编程语言。例如,[[COBOL]]通常用于通常在[[大型计算机|大型]]和[[小型计算机|中型]]计算机上运行的业务应用程序,而[[Fortran]]则用于科学和工程。[[C++]]和[[Python]]广泛用于科学和商业应用程序。[[Java]]、[[C♯|C#]]、[[JavaScript|JS]]与[[PHP]]是Web和商业应用程序的流行编程语言。程序员通常了解一种以上的编程语言,因为许多语言是相似的,他们通常可以相对容易地学习新的语言。在实际中,通常会用程序员们了解的语言来描述程序员,比如,'''Java程序员''',或者用他们所扮演的角色或他们的工作环境来描述:比如,'''[[数据库]]程序员'''、'''大型机程序员'''、'''[[网页开发者|Web开发人员]]'''等。 当修改组成程序的[[源代码]]时,程序员需要让其他程序员知道程序要执行的任务。他们通过插入注释以及[[软件文档|编写文档]],来让其他人更容易理解程序。为了节省工作量,程序员经常使用基本代码[[函式库|库]],这些库可以针对特定的应用程序进行修改或自定义。这种方法可以产生更可靠和一致的程序,并通过消除一些重复性的步骤来提高程序员的生产力。 ====测试和调试==== 程序员通过运行程序并查找错误来测试程序。一旦确定了错误,程序员通常会进行适当的修正,然后重新检查程序,直到错误([[程序错误|bug]])的严重程度达到可接受的低水平。这个过程称为[[软件测试|测试]]和[[调试]]。这些都是每个程序员工作的重要部分。程序员可以在程序的整个生命周期中继续修复这些问题。更新、修复、修改和扩展现有程序有时称为'''维护编程'''。程序员可能会编写用户指南和在线帮助,或者他们可能会与[[技术写作人员|技术作者]]合作完成这些工作。 ====应用程序与系统编程==== 计算机程序员通常分为两大类:应用程序员和系统程序员。应用程序员编写程序来处理特定的工作,例如在组织内跟踪库存的程序。他们还可以修改现有的套装软件(packaged software),或定制通常从[[独立软件供应商]]购买的通用应用程序。相比之下,系统程序员编写程序来维护和控制计算机系统软件,如[[操作系统]]和[[数据库|数据库管理系统]]。这些工作人员对指令进行更改,这些指令决定了系统的网络、工作站和[[中央处理器|CPU]]如何处理给定的各种作业,以及如何与[[打印机]]和[[储存装置|磁盘驱动器]]等外围设备通信。 ==== 资格和技能 ==== 软件开发人员需要在计算机技术的某些方面具有深厚的技术专长。有些职位需要相关领域的学位,如计算机科学、信息技术、工程、编程或任何其他与IT相关的研究生学习。一个理想的软件开发人员是一个自我激励的专业人员,在诸如[[C++]]、[[C♯|C#]]、[[PHP]]、[[Java]]、[[C语言|C]]、[[JavaScript]]、[[Visual Basic]]、[[Python]]、[[Smalltalk]]等关键编程语言上拥有动态的动手实践经验。 根据开发人员Eric Sink的说法,系统设计、软件开发和编程之间的差异更加明显。在当前的市场环境中,程序员和开发人员之间已经存在隔离,因为实现程序的人和设计[[类 (计算机科学)|类]]结构或层次结构的人是不一样的。开发人员成为软件架构师(software architect)或[[系统架构师]](即设计大型软件系统的多层体系结构或组件交互的架构师)后,差异会更大。 ====软件类型==== 软件开发公司的程序员可以直接与来自不同领域的专家合作来开发软件,包括为特定客户设计的程序或通用的套装软件,从[[电子游戏]]到教育软件,再到用于[[桌面出版]]和财务规划的程序。套装软件的编程是计算机服务行业增长最快的部分之一。一些公司或组织,即使是小公司,也建立了自己的IT团队,以确保内部软件的设计和开发能够满足内部最终用户非常特殊的需求,特别是在现有软件不适合或成本太高的情况下。[[研究中心]]的情况就是如此。 在一些组织中,特别是小型组织中,通常被称为'''程序员分析师'''的人同时负责系统分析和实际的编程工作。从大型机环境过渡到主要基于[[个人电脑]](PC)的环境,模糊了曾经严格的程序员和用户之间的区别。越来越多的熟练的终端用户正在接管许多以前由程序员执行的任务。例如,越来越多地使用套装软件,如电子表格和数据库管理软件包,让用户可以编写简单的程序来访问数据和执行计算。 此外,互联网的兴起使得[[网页程序设计|Web开发]]成为编程领域的一个重要组成部分。目前,更多的软件应用程序是[[网络应用程序]],任何人都可以使用[[网页浏览器]]。这类应用程序的例子包括[[Google]]搜索服务、[[Outlook.com]]电子邮件服务和[[Flickr]]照片分享服务。 编程编辑器,也称为[[源代码编辑器]],是专门为编写程序源代码的程序员或开发人员设计的文本编辑器。这些编辑器中的大多数都含有对程序员有用的特性,可能包括[[语法突显]]、自动缩进、[[自动完成]]、括号匹配、语法检查以及允许[[插件]]。这些特性帮助用户进行编码、调试和测试。 === 相关职业 === * [[系统管理员]](SA) * [[系统设计师]](SD) * [[数据库管理员]](DBA) * [[应用分析师]](AA) * [[技术支持]](TS) [[Category:计算机编程]] [[Category:职业]] [[Category:程序员]]
返回
程序员
。
导航菜单
个人工具
创建账户
登录
名字空间
页面
讨论
变种
查看
阅读
查看源代码
查看历史
操作
搜索
导航
首页
最近更改
随机页面
工具箱
链入页面
相关更改
特殊页面
页面信息
扫描二维码可以用手机浏览词条