程序员- 维基百科,自由的百科全书
文章推薦指數: 80 %
「开发者」重定向至此。
关于電視劇,请见「開發者(2020年電視劇)」。
程序员(Programmer,Computer Programmer或 ...
程序员
维基百科,自由的百科全书
跳到导航
跳到搜索
「开发者」重定向至此。
关于電視劇,请见「開發者(2020年電視劇)」。
1970年,德國阿亨的阿亨工業大學學生學習程式設計
程序员(Programmer,ComputerProgrammer或Coder;程式師),它可以指在程序设计某個專業領域中的專業人士,或是从事軟體撰寫,程序开发、维护的专业人员。
但一般Coder特指進行編寫代碼的編碼員。
一个程序员最常使用的编程语言(如汇编语言、COBOL、C、C++、C#、JavaScript、Lisp、Python)可以加在“程序员”这个词前面用来修饰。
涉及编程的一系列职业,如(软件)开发人员、网络开发人员、流動應用程式开发人员、嵌入式韌體开发人员、软件工程师、電腦科學家、游戏程序师、游戏开发人员和软件分析师(英语:softwareanalyst),通常还需要一系列其他类似的技能。
用程序员这个词来指代这些职位,有时被认为是一种侮辱性的简化,甚至是贬损。
[1][2][3][4][5]
目录
1歷史
2工作範圍
2.1测试和调试
2.2应用程序与系统编程
2.3资格和技能
2.4软件类型
3参考文献
4相關職業
5外部链接
歷史[编辑]
英国著名诗人拜伦的女儿愛達·勒芙蕾絲曾设计了巴贝奇分析机上計算伯努利數的一个程序,她甚至还建立了递归和子程序的概念。
由于愛達在程序设计上的突破性創新,她被称为世界上第一位程序员,詳見计算机领域中的女性。
工作範圍[编辑]
本节的一些内容来自《职业前景手册(页面存档备份,存于互联网档案馆)》,2006-07版,该手册作为美国政府的一部作品进入公有领域。
计算机程序员编写、测试、调试和维护被称为计算机程序的详细指令,计算机必须遵循这些指令来执行它们的功能。
程序员还构思、设计和测试用计算机解决问题的逻辑结构。
编程领域的许多技术创新——先进的计算技术、复杂的新语言和编程工具——重新定义了程序员的角色,提升了当今许多编程工作。
职位名称和描述可能会有所不同,取决于组织。
程序员在许多环境中工作,包括企业信息技术(“IT”)部门、大型软件公司、小型服务公司和各种规模的政府实体。
许多专业程序员也以独立承包人的身份在客户现场为咨询公司工作。
程序员通常不需要有从业执照就可以工作,但他们一般都会持有專業認證。
编程被广泛认为是一个專業(但有些权威机构不同意这个看法,他们认为只有那些法律上规定要有从业执照的职业才能叫做专业)。
程序员的工作差别很大,这取决于他们为之编写程序的业务类型。
例如,更新财务记录所涉及的指示,与飞行模拟器中训练飞行员时模拟在飞机上的状况所需的指示大不相同。
简单的程序可以在几个小时内完成,更复杂的程序可能需要一年以上的工作,而其他的程序则永远不会被认为是“完善的”,而是只要继续使用就会不断进行改进。
在大多数情况下,几个程序员在高级程序员的监督下作为一个团队一起工作。
编写JavaScript的软件工程师
程序员根据主要由高级程序员和系统分析员确定的规范编写程序。
在设计过程完成后,程序员的工作就是将设计转换成计算机可以遵循的一系列逻辑指令。
程序员用众多编程语言中的一种来编写这些指令。
根据用途的不同,会使用不同的编程语言。
例如,COBOL通常用于通常在大型和中型计算机上运行的业务应用程序,而Fortran则用于科学和工程。
C++和Python广泛用于科学和商业应用程序。
Java、C#、JS与PHP是Web和商业应用程序的流行编程语言。
程序员通常了解一种以上的编程语言,因为许多语言是相似的,他们通常可以相对容易地学习新的语言。
在实际中,通常会用程序员们了解的语言来描述程序员,比如,Java程序员,或者用他们所扮演的角色或他们的工作环境来描述:比如,数据库程序员、大型机程序员、Web开发人员等。
当修改组成程序的源代码时,程序员需要让其他程序员知道程序要执行的任务。
他们通过插入注释以及编写文档,来让其他人更容易理解程序。
为了节省工作量,程序员经常使用基本代码库,这些库可以针对特定的应用程序进行修改或自定义。
这种方法可以产生更可靠和一致的程序,并通过消除一些重复性的步骤来提高程序员的生产力。
测试和调试[编辑]
程序员通过运行程序并查找错误来测试程序。
一旦确定了错误,程序员通常会进行适当的修正,然后重新检查程序,直到错误(bug)的严重程度达到可接受的低水平。
这个过程称为测试和调试。
这些都是每个程序员工作的重要部分。
程序员可以在程序的整个生命周期中继续修复这些问题。
更新、修复、修改和扩展现有程序有时称为维护编程。
程序员可能会编写用户指南和在线帮助,或者他们可能会与技术作者合作完成这些工作。
应用程序与系统编程[编辑]
计算机程序员通常分为两大类:应用程序员和系统程序员。
应用程序员编写程序来处理特定的工作,例如在组织内跟踪库存的程序。
他们还可以修改现有的套装软件(packagedsoftware),或定制通常从独立软件供应商购买的通用应用程序。
相比之下,系统程序员编写程序来维护和控制计算机系统软件,如操作系统和数据库管理系统。
这些工作人员对指令进行更改,这些指令决定了系统的网络、工作站和CPU如何处理给定的各种作业,以及如何与打印机和磁盘驱动器等外围设备通信。
资格和技能[编辑]
软件开发人员需要在计算机技术的某些方面具有深厚的技术专长。
有些职位需要相关领域的学位,如计算机科学、信息技术、工程、编程或任何其他与IT相关的研究生学习。
[6]一个理想的软件开发人员是一个自我激励的专业人员,在诸如C++、C#、PHP、Java、C、JavaScript、VisualBasic、Python、Smalltalk等关键编程语言上拥有动态的动手实践经验。
根据开发人员EricSink的说法,系统设计、软件开发和编程之间的差异更加明显。
在当前的市场环境中,程序员和开发人员之间已经存在隔离,因为实现程序的人和设计类结构或层次结构的人是不一样的。
开发人员成为软件架构师(英语:softwarearchitect)或系统架构师(即设计大型软件系统的多层体系结构或组件交互的架构师)后,差异会更大。
[7]
软件类型[编辑]
软件开发公司的程序员可以直接与来自不同领域的专家合作来开发软件,包括为特定客户设计的程序或通用的套装软件,从电子游戏到教育软件,再到用于桌面出版和财务规划的程序。
套装软件的编程是计算机服务行业增长最快的部分之一。
一些公司或组织,即使是小公司,也建立了自己的IT团队,以确保内部软件的设计和开发能够满足内部最终用户非常特殊的需求,特别是在现有软件不适合或成本太高的情况下。
研究中心的情况就是如此。
在一些组织中,特别是小型组织中,通常被称为程序员分析师的人同时负责系统分析和实际的编程工作。
从大型机环境过渡到主要基于个人电脑(PC)的环境,模糊了曾经严格的程序员和用户之间的区别。
越来越多的熟练的终端用户正在接管许多以前由程序员执行的任务。
例如,越来越多地使用套装软件,如电子表格和数据库管理软件包,让用户可以编写简单的程序来访问数据和执行计算。
此外,互联网的兴起使得Web开发成为编程领域的一个重要组成部分。
目前,更多的软件应用程序是网络应用程序,任何人都可以使用网页浏览器。
这类应用程序的例子包括Google搜索服务、Outlook.com电子邮件服务和Flickr照片分享服务。
编程编辑器,也称为源代码编辑器,是专门为编写程序源代码的程序员或开发人员设计的文本编辑器。
这些编辑器中的大多数都含有对程序员有用的特性,可能包括語法突顯、自动缩进、自动完成、括号匹配、语法检查以及允许插件。
这些特性帮助用户进行编码、调试和测试。
[8]
参考文献[编辑]
^NoProgrammers.[2020-06-14].(原始内容存档于2020-06-14).
^Developerversusprogrammer.[2008-04-21].(原始内容存档于2010-11-25).
^DevelopersANDProgrammers.[2020-06-14].(原始内容存档于2013-11-03).
^Programmervs.Developervs.SoftwareEngineer.[2008-04-21].(原始内容存档于2018-07-10).
^Programmervs.Developervs.SoftwareEngineer.[2020-06-14].(原始内容存档于2017-09-09).
^SoftwareEngineerSkillsandResponsibilities.[2020-06-14].(原始内容存档于2020-06-14).
^EricSink.SmallISVs:YouneedDevelopers,notProgrammers.Sourcegear.[2008-06-06].(原始内容存档于2008-07-05).Aprogrammerissomeonewhodoesnothingbutcodenewfeaturesand(ifyou'relucky)fixbugs.Theydon'twritespecs.Theydon'twriteautomatedtestcases.Theydon'thelpkeeptheautomatedbuildsystemuptodate.Theydon'thelpcustomersworkouttoughproblems.Theydon'thelpwritedocumentation.Theydon'thelpwithtesting.Theydon'tevenreadcode.Alltheydoiswritenewcode.
^BBCBitesize-GCSEComputerScience-ProgrammingsoftwareandtheIDE-Revision4.www.bbc.co.uk.[2017-09-16].(原始内容存档于2017-09-23)(英国英语).
相關職業[编辑]
系统管理员(SA)
系统设计师(SD)
数据库管理员(DBA)
应用分析师(AA)
技术支持(TS)
外部链接[编辑]
识别优秀程序员的关键要素(英文)
程序员不為人知的事實(英文)
规范控制
AAT:300025819
GND:4175854-7
LCCN:sh85029522
NKC:ph884924
取自“https://zh.wikipedia.org/w/index.php?title=程序员&oldid=72248085”
分类:计算机编程職業程序员隐藏分类:CS1英国英语来源(en-gb)含有英語的條目包含AAT标识符的维基百科条目包含GND标识符的维基百科条目包含LCCN标识符的维基百科条目包含NKC标识符的维基百科条目
导航菜单
个人工具
没有登录讨论贡献创建账号登录
命名空间
条目讨论
不转换
不转换简体繁體大陆简体香港繁體澳門繁體大马简体新加坡简体臺灣正體
查看
阅读编辑查看历史
更多
搜索
导航
首页分类索引特色内容新闻动态最近更改随机条目资助维基百科
帮助
帮助维基社群方针与指引互助客栈知识问答字词转换IRC即时聊天联络我们关于维基百科
工具
链入页面相关更改上传文件特殊页面固定链接页面信息引用本页维基数据项目
打印/导出
下载为PDF打印页面
在其他项目中
维基共享资源
其他语言
AfrikaansالعربيةAzərbaycancaБеларускаяБеларуская(тарашкевіца)БългарскиবাংলাBosanskiCatalàکوردیČeštinaDanskΕλληνικάEnglishEsperantoEspañolEestiEuskaraفارسیGalegoעבריתहिन्दीHrvatskiՀայերենBahasaIndonesiaItaliano日本語Қазақша한국어KurdîКыргызчаLombardLatviešuМакедонскиBahasaMelayuမြန်မာဘာသာNorskbokmålਪੰਜਾਬੀPolskiپنجابیPortuguêsRomânăРусскийРусиньскыйSrpskohrvatski/српскохрватскиSimpleEnglishSlovenčinaSlovenščinaShqipСрпски/srpskiSundaSvenskaไทยTürkmençeTürkçeТатарча/tatarçaУкраїнськаOʻzbekcha/ўзбекчаTiếngViệt粵語
编辑链接
延伸文章資訊
- 1開發者 - 海词词典
海詞詞典,最權威的學習詞典,專業出版開發者的英文,開發者翻譯,開發者英語怎麼說等詳細講解。海詞詞典:學習變容易,記憶很深刻。
- 2[翻譯] 程式設計師、碼農、開發者、工程師有什麼差別?
Computer scientist(電腦科學家)。Programmer(程式設計師)。Coder(碼農)。Developer(開發人員、開發者)。Engineer(工程師)。
- 3開發者英文 - 英語翻譯
開發者英文翻譯: developer application…,點擊查查綫上辭典詳細解釋開發者英文發音,英文單字,怎麽用英語翻譯開發者,開發者的英語例句用法和解釋。
- 4程序员- 维基百科,自由的百科全书
「开发者」重定向至此。关于電視劇,请见「開發者(2020年電視劇)」。 程序员(Programmer,Computer Programmer或 ...
- 5軟體開發人員的英文 - 海词词典
海詞詞典,最權威的學習詞典,專業出版軟體開發人員的英文,軟體開發人員翻譯,軟體開發人員英語怎麼說等詳細講解。海詞詞典:學習變容易,記憶很深刻。