成为计算机程序员需要哪些条件(成为程序员的条件)

http://www.itjxue.com  2023-02-04 17:41  来源:未知  点击次数: 

程序员需要什么学历 学编程需要什么基础

程序员需要专科以及以上学历,具体招聘条件是:1、21至28周岁;2、熟悉数据库,精通SQL和数据结构;3、具备良好的沟通合作技巧和团队合作能力;4、能独立承担后台程序的开发工作;5、品行端正。

做程序员需要什么学历

做程序员需要的学历没有一定的要求,大专和大本的很多。

一个合格的C++程序员,应该知道C++的哪些语法该用,哪些语法不该用,哪些语法要用但是要谨慎不能滥用。

Java程序员用Java来描述,而C++程序员就用C++来描述。描述的过程中,充分利用各自语言的特性,例如C++的性能。

一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚。软件从业人员分为初级程序员、中级程序员、高级程序员(现为软件设计师)、系统分析员,系统架构师,测试工程师六大类。

学习编程的基础

1、英语基础

虽然对于初级程序员来说,英语只需要写简单的词汇就可以,但是如果想要走的更远,还是要去学习和掌握。我极力推荐英语是因为在学习IT技术上,没有专业文档的阅读能力是不可想象的,中文的翻译往往在猴年马月才会出来,而现在的许多出版社干脆就直接把英文印刷上去,学习的方法是强迫自己看原版的教材,开始会看不懂,用多了自然熟练,吃得苦下得狠心绝对是任何行业都需要的品质。相信只要有几年工作经验的人都会深有感触!

2、计算机体系结构和汇编语言

关于体系结构的书遍地都是,而且也大同小异,倒是汇编有一本非常好的书《80x86汇编语言程序设计教程》(清华大学出版社,黑色封面,杨季文著),你需要着重学习386后保护模式的程序设计。否则你在学习现代操作系统底层的一些东西的时候会觉得是在看天书。

3、计算机操作系统原理

我们的开发总是在特定的操作系统上进行,如果不是,只有一种可能:你在自己实现一个操作系统,无论如何,操作系统原理是必读的。这就象我们为一个芯片制作外围设备时,芯片基本的工作时序是必需了解的。这一类书也很多,我没有发现哪一本书非常出众,只是觉得在看完了这些书后如果有空就应该看看《Inside Windows 2000》。

4、数据结构和算法

这门课程能够决定一个人程序设计水平的高低,是一门核心课程。我首选的是清华版的。很多人喜欢买C++版的,但我觉得没有必要,C++的语法让算法实现过程变得复杂多了,而且许多老师喜欢用模块这一东西让算法变得更复杂,倒是在学完了C版的书以后再来浏览一下C++的版的书是最好的。

5、软件工程

这门课程是越到后来就越发现它的重要,虽然刚开始看时就象看马哲一样不知所云。《实用软件工程》(黄色,清华)。不要花太多的时间去记条条框框,看不懂就跳过去。在每次自己完成了一个软件设计任务(不管是练习还是工作)以后再来回顾回顾,每次都会有收获。

6、Windows 程序设计

我建议任何企图设计Windows程序的人在学习VC以前仔细的学完它,而且前面的那本《Inside Windows 2000》也最好放到这本书的后面读。在这本书中,没有C++,没有GUI,没有控件,有的就是如何用原始的C语言来完成Windows程序设计。

要成为一名计算机编程员需要什么条件?

【职位名称】程序员

【是什么】

程序员是指从事程序开发、维护的专业人员,一般分为程序设计人员和程序编码员。

【做什么】

①项目策划、市场调查;②用户的需求分析,策划程序框架、流程;③编写代码,开发程序,同时编写开发文档;④测试,运行程序;⑤帮助客户解决他们所遇到的问题;⑥软件版本的更新。

【怎么样】

随着计算机对于社会各个领域的不断渗透,客户对于一些专门的应用软件需求量大增,所以对于程序员的需求也在不断增加,虽然现在中国的程序员数量已经相当可观,但是还是处于求大于供的状态,尤其对于一些技术熟练、有很好的编程习惯的优秀程序员,市场需求量还是很大的。

而且程序员的发展空间很大,可以经过努力升级为软件设计师、系统分析员、项目经理等。不过程序员有事工作相对繁琐,有时需要经常加班,技术更新快,所以压力也很大。

【谁能做】

①大专以上计算机相关专业学历,至少熟练掌握两到三种开发工具的使用,同时对于数据库和操作系统有很深入的了解,有一定的英语水平,有相关的数据结构等方面的知识;②通过初级或者高级程序员考试或者拿到一些国际、国内认证的证书,有一年以上相关经验;

③软件结构设计/分析能力,出色的编程能力,掌握了几种软件的开发技巧,同时需要有严格的软件工程思想;④较强的逻辑思维能力,团队精神和协作能力,强烈的好奇心和学习精神,具有永攀高峰的精神。

【小贴士】

程序员可以分为很多种,像Unix程序员、Windows程序员,或是C++程序员、Delphi程序员,等等,由于新的技术层出不穷,程序员的职业生涯则是一个要求不断学习的过程,永远不能固步自封,稍不注意就会被甩开,所以好多程序员都是做上三五年就往技术管理方面转型。

程序员的基本要求是啥?

程序员是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、中级程序员、高级程序员(现为软件设计师)、系统分析员,系统架构师,测试工程师六大类.

岗位职责

1、对项目经理负责,负责软件项目的详细设计、编码和内部测试的组织实施,对小型软件项目兼任系统分析工作,完成分配项目的实施和技术支持工作。

2、协助项目经理和相关人员同客户进行沟通,保持良好的客户关系。

3、参与需求调研、项目可行性分析、技术可行性分析和需求分析。

4、熟悉并熟练掌握交付软件部开发的软件项目的相关软件技术。

5、负责向项目经理及时反馈软件开发中的情况,并根据实际情况提出改进建议。

6、参与软件开发和维护过程中重大技术问题的解决,参与软件首次安装调试、数据割接、用户培训和项目推广。

7、负责相关技术文档的拟订。

8、负责对业务领域内的技术发展动态进行分析研究。

职业要求

一般的程序员都有四年的在专业领域的学习,需要一个在程序领域的学士学位获得者,不论是数学方面的还是工程方面的都是可以的。

大约有20%的人在这一领域的计算机科学和工程学拥有更高的学位。还有很小一部分程序员是自学的,尽管一些专业性的学校或者综合大学可以提供,但是也需要一些别的途径来提供相关的人才。尽管学历是比较重要的,但是公司经常把重点放在应聘者的工作经验上,很多刚从大学毕业的大学生虽然有引人注目的学位证书,但是他们找不到工作是因为他们缺乏经验。一个程序员虽然没有正规的学历,但是如果一个人拥有程序设计的深厚知识背景或者丰富的工作经验的话,那么他的机会要比有学历的应届毕业生大得多。所以要尽量抓住有用的工作和实习机会,这样的话在毕业后你就会发现,多实习让你有更多的经验,在找工作的时候就有更多的机会。

对于职业程序员,另外一个重要的方面就是,程序员需要不断提升自己的业务技术,他的技术必须一直保持在一个较高的水平,并且要不断发展,程序员也要寻找贸易的机会,要参加研讨会,在周刊上发表文章和接受职业教育,这些使程序员在自己的领域中分级或者不断并排前进。

做为一名程序员至少熟练掌握两到三种开发工具的使用,这是程序员的立身之本,其中C/C++和JAVA是重点推荐的开发工具,C/C++以其高效率和高度的灵活性成为开发工具中的利器,很多系统级的软件还是用C/C++编写。而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在,而JAVA即其相关的技术集JAVAOne很可能会成为未来的主流开发工具之一。其次,能掌握一种简便的可视化开发工具,如VB,PowerBuilder,Delphi,CBuilder,则更好,这些开发工具减小了开发难度,并能够强化程序员对象模型的概念。另外,需要掌握基本的脚本语言,如shell,perl等,至少能读懂这些脚本代码。

熟知数据库

为什么数据库是如此重要?作为程序员,他们自然有自己的理由:很多应用程序都是以数据库的数据为中心,而数据库的产品也有不少,其中关系型数据库仍是主流形式,所以程序员至少熟练掌握一两种数据库,对关系型数据库的关键元素要非常清楚,要熟练掌握SQL的基本语法。虽然很多数据库产品提供了可视化的数据库管理工具,但SQL是基础,是通用的数据库操作方法。如果没有机会接触商业数据库系统,可以使用免费的数据库产品是一个不错的选择,如mySQL,Postgres等。

了解操作系统

当前主流的操作系统是Windows,Linux/Unix,熟练地使用这些操作系统是必须的,但只有这些还远远不够。要想成为一个真正的编程高手,需要深入了解操作系统,了解它的内存管理机制、进程/线程调度、信号、内核对象、系统调用、协议栈实现等。Linux作为开发源码的操作系统,是一个很好的学习平台,Linux几乎具备了所有现代操作系统的特征。虽然Windows系统的内核实现机制的资料较少,但通过互联网还是能获取不少资料。懂得网络协议TCP/IP。

在互联网如此普及的今天,如果您还没有对互联网的支撑协议TCP/IP协议栈有很好的掌握,就需要迅速补上这一课,网络技术已改变了软件运行的模式,从最早的客户/服务器结构,到今天的WEBServices,再到未来的网格计算,这一切都离不开以TCP/IP协议栈为基础的网络协议支持,深入掌握TCP/IP协议是非常必要的。至少,需要了解ISO七层协议模型,IP/UDP/TCP/HTTP等常用协议的原理和三次握手机制。

明白DCOM/CORBA/XML/WEBServices存在的意义

随着技术的发展,软件与网络的无缝结合是必然趋势,软件系统的位置无关性是未来计算模式的重要特征之一,DCOM/CORBA是当前两大主流的分布计算的中间平台,DCOM是微软COM(组件对象模型)的扩展,而CORBA是OMG支持的规范。XML/WebServices重要性不言而喻,XML以其结构化的表示方法和超强的表达能力被喻为互联网上的“世界语”,是分布式计算的基石之一。

不要将软件工程与CMM分开

大型软件系统的开发中,工程化的开发控制取代个人英雄主义,成为软件系统成功的保证,一个编程高手并不一定是一个优秀的程序员,一个优秀的程序员是将出色的编程能力和开发技巧同严格的软件工程思想有机结合,编程只是软件生命周期中的其中一环,优秀的程序员应该掌握软件开发各个阶段的基本技能,如市场分析,可行性分析,需求分析,结构设计,详细设计,软件测试等。

需求理解能力

程序员要能正确理解任务单中描述的需求。在这里要明确一点,程序员不仅仅要注意到软件的功能需求,还应注意软件的性能需求,要能正确评估自己的模块对整个项目中的影响及潜在的威胁,如果有着两到三年项目经验的熟练程序员对这一点没有体会的话,只能说明他或许是认真工作过,但是没有用心工作。

模块化思维能力作为一个优秀的程序员,他的思想不能局限在当前的工作任务里面,要想想看自己写的模块是否可以脱离当前系统存在,通过简单的封装在其他系统中或其他模块中直接使用。这样做可以使代码能重复利用,减少重复的劳动,也能使系统结构越趋合理。模块化思维能力的提高是一个程序员的技术水平提高的一项重要指标。

(责任编辑:IT教学网)

更多

推荐excel文章