##一个研一学生有关编程语言及未来工作的疑问及答复 【来信】         学长,你好!         打扰你了,我是南邮计算机学院研一学生,一年前就关注你的微博,感觉你的博客内容很有质量。想请教你几个问题:          1\. 我现在比较迷惑,主要面临一个选择问题,以前我学通信的,java、C++一点都没有学过,C语言有点基础,但是从来没有实际应用过,现在就想学一门程序语言设计,宿舍人都学java,都说java简单,工作好找,他们也都有java基础,所以我比较迷茫,(说实话,我容易被别人的话所影响)不清楚这些程序语言在实际开发中到底是什么状况。          2\. 以后从事it技术方面工作是不是就是开发人员(程序员),程序员为什么每天要加班到九、十点?          希望能得到前辈的帮助。   【答复】        你好!        首先感谢你对我的博客的评价,我写博客的目的是希望对大家有所帮助,希望在校的学生或工作的朋友能够从中得到启发。         作为研一的学生,你一定要对未来的工作有一个大致的规划,要对当今的就业现状有一个大致的了解。这样等到了你求职的时候,才能够做到心里有数而不慌乱。        下面来具体回答你的问题。        第一,有关编程语言在实际开发中的状况。        有关编程语言孰优孰劣的问题是早已有之,特别是对于找工作的学生来说,自己所掌握的编程语言就决定了自己的未来的工作和发展方向。C/C++语言主要编写靠底层的软件多一点,而Java语言主要编写应用级软件多一点。        像中兴和华为这样的大型通信设备制造商,C/C++程序员和Java程序员都在招;而像百度、腾讯、阿里巴巴这样的互联网公司,基本上都要求程序员会Java。对于很多初创型公司来说,基本上清一色招的都是Java程序员。也就是说,现在Java程序员的岗位更多一点。为什么会出现这种情况呢?        1) Java语言比C/C++更容易上手。        2) 用Java语言编写的程序几乎都是直接面向客户的,经济利益更明显。        3) 现在移动互联网上的机会很多,这也带来了许多安卓开发的工作机会,而Java语言是主要的开发语言。        因此,学习Java可能会使自己在未来找工作的时候的选择更多一点。        第二,有关程序员的定义及工作状况。        从事IT技术方面工作的不一定都是程序员,程序员指的是那些整天和代码打交道的IT从业人员。像中兴华为里面从事销售和维护的人员也是从事IT技术方面,但他们就不是程序员。        并不是每个程序员每天都要加班到九、十点,造成程序员加班的原因有以下几个:        1) 手上的任务太多,在规定的上班时间完成不了。        2) 客户反馈的问题比较紧急,需要加班加点将之解决掉。        3) 上班的时候没有时间来学习,只有利用加班时间来充下电。        不过,总的说来,加班对程序员来说是家常便饭。如果你想成为一名程序员,那么就要有长时间工作的心理准备。        以上的回复只是个人的一点看法,请参考。希望你好好利用研究生阶段的短暂的时光,学到真本领,并找到满意的工作。再次感谢你的来信,请继续关注本人博客。                                                                                                                                                                               周兆熊                                                                                                                                                                 2015年3月25日   (本人微博:[http://weibo.com/zhouzxi?topnav=1&wvr=5](http://weibo.com/zhouzxi?topnav=1&wvr=5),微信号:245924426,欢迎关注!)