程序员分哪几种,分别要学什么知识,工资怎么样

我是一名学电子信息工程的的大三学生,一个普通的二本学校,想以后做程序员,但不知道该学些什么,不知道程序员分哪几种,还有程序员的出路怎么样,待遇怎么样,我很喜欢编程,想大三为做程序员多做点准备,希望精通这个行业的大哥们帮我解答一下。

一、程序员的分类

程序员从事的人群很多,分工也不相同,从大的方面可以分为以下几类:asp程序员、delphi程序员、php程序员、powerbuilder程序员、C程序员、linux程序员、net程序员、vb程序员、java程序员、javascript程序员、C++程序员、Python程序员、ABAP程序员、android程序员、iOS程序员。

二、所学的知识与必备技能

1、熟练开发软件

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

2、熟悉数据库

很多应用程序都是以数据库的数据为中心,而数据库的产品也有不少,其中关系型数据库仍是主流形式,所以程序员至少熟练掌握一两种数据库,对关系型数据库的关键元素要非常清楚,要熟练掌握SQL的基本语法。虽然很多数据库产品提供了可视化的数据库管理工具,但SQL是基础,是通用的数据库操作方法。

3、了解操作系统

要想成为一个真正的编程高手,需要深入了解操作系统,了解它的内存管理机制、进程/线程调度、信号、内核对象、系统调用、协议栈实现等。要懂得网络协议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以其结构化的表示方法和超强的表达能力被喻为互联网上的“世界语”,是分布式计算的基石之一。

三、薪资待遇

程序员的薪资待遇分档次,大致情况是这样的:
初级软件工程师(0-3年开发经验),平均月薪(3000-8000)
中级软件工程师(3-5年开发经验),平均月薪(5000-12000)
高级软件工程师(5年+开发加2+管理),平均月薪(10000-90000)
一般只有刚毕业的初级工程师说的是月薪,中高级基本是年薪。 
也有刚毕业就签的年薪的。这个是大致范围就这样,也有少部分低于3000或高于90000的 具体差别要看自己的,毕业院校,专业学历,专业能力,外语能力,职称等级,综合能力,以及所在城市还有自己的选择等。但最主要的是看专业能力的。

什么是程序员?

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

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-19
分类比较多,标准各不同。按语言分为java,.net ,C/C++程序员等,还有数据库维护的,网络维护,测试,手机终端的。
也可分为研发类的,测试类的,前端之类的。
程序员的工作是比较容易找的,而且工资待遇相对较高,但加班比较普遍,比较累。
做准备的话,还是首先要定好自己从事的职业方向,你对自己的分类。学习的话,从语言开始学起,然后就是数据结构和算法,数据库,网络,操作系统的知识,这些是基础。本回答被提问者采纳
第2个回答  2012-10-27
程序员一般分为软件设计人员和编码人员。如果你想彻底的了解的话,建议你到百度百科查询下以下的名词:程序员、软件设计师、软件测试工程师、系统分析员、系统架构师。你看看就会明白程序员到底分哪几种,告诉该具备什么样的知识。其实最开始的程序员就是最初级的写代码的,具体去实现,俺们称为码农。高个级别的呢就是设计段,软件设计师/软件测试工程师,负责详细设计,测试用例设计等工作。高级的负责概要设计,系统分析,系统架构等工作,这是最难的啦!
那么按照现在市场上需求的那种,招什么程序员的都具体的和某种语言和技术来分的话就是:C++程序员,JAVA程序员,.net程序员,PHP程序员,ASP.NET程序员啊等等啦。这些都是写代码的啦。本回答被网友采纳
第3个回答  2018-08-08

大致分为3类:前端,后台。运维。

第4个回答  2012-10-21
人说学 ASM
相似回答