程序员,软件,其实我不是很懂,但是我很想进入这个行业。

作者&投稿:载钥 (若有异议请与网页底部的电邮联系)
关于程序员找工作的问题,我很迷茫~

目前要找工作之前,最好先围绕着两点去短期内有一个提高,以及为长期学习作准备:
1、考适合自己的证
2、准备投入到某个领域

证书建议考 国考里的3-4级计算机证书 以及软考里的 数据库工程师(中级证书)

当你能自如的运用数据结构和算法、TCP/IP原理、编译原理、操作系统原理、数据库以及Win32 API 调用、构造自己的C++库(网络库、数学库、测试库、图形库)以及各种引擎,出去毕业应该能在短短半年时间里薪水至少有7000以上甚至上万吧(其实毕业生出去95%以上可能没达到这个水平)。

其实也不用说太多,你问你自己几个问题,如果你都能做到或者学习半到2个月就能做到,那肯定是达标了:
1、我能用C++做出2D的RPG游戏吗?(C++与api或框架的结合运用能力)
2、我能用C++通过3种以上的方法写出四则运算表达式分析器吗?(C++与数据结构、算法的结合能力)
3、我能用C++写出类似STL的简化版的库吗?(库与框架设计能力与C++高级语法运用能力的结合)

补充:
①、你能这么问,说明你知道编程能力对IT行业高薪工作的重要性是至关重要的。

②、你的目的性已较强(知道要深入下去),但是你也想有更加明确的目标,我可以给你讲一下怎么自己去寻找目标和路线以及怎样学习。

③、计算机专业领域一共有几个大方向,十几个分支方向,而每个分支方向又有几十个小方向,每一个方向的深入学习与熟练到一定火候都不是一朝一夕,互相之间也不是完全没联系的,但是你现在就应该选择一个大方向并在其中的一个小方向内深入(为什么要这么早就选择具体的分支方向?后面说)。

④、这里列出计算机的几个大方向(非编程开发类的我就不说了):
基本方向:
1、单片机、嵌入式方向
2、网络编程:涉及到服务器程序、客户端开发、脚本设计等。
3、系统编程:基础API开发、桌面开发、系统程序开发、服务程序
4、图形学:3D、2D、图像识别、人脸识别
5、音频:语音识别、音频解码、音频软件
6、编译原理:编译器设计、脚本解释器、虚拟机、非自然语言翻译系统
7、应用层开发:利用高层语言去开发表层应用
8、安全:反工程、病毒、反病毒、木马、反木马、软件破解、软件加壳
附加方向:
8、人工智能:遗传算法、神经网络、灰色系统等等
9、游戏设计:各种游戏引擎设计以及业务逻辑设计等

⑤、基本方向是你一定要选的,附加方向只是基于基本方向的一些锦上添花,但是不管你怎么选,最开始某些东西一定要深入而不是只是懂就够(当然你对自己要求似乎不会很低),我把这个列出来:

数据结构:下面其他理论的基础。
操作系统原理:理解操作系统的架构和细节,你才能对以后关于多线程、文件管理、内存管理、指令优先级等有一个正确理解和运用。
编译原理:能够升华你对计算机编程语言的理解,对以后出现的各种编译、解释、兼容、移植、优化、并发与并行算法等有一个深入理解。
数据库系统原理:这个是进入公司都要会的,也是大型软件开发的基础。
软件工程:这个是你能够在经验不足还能保证大项目正常完成的理论基础。
网络技术:这个是必须学的,因为目前几乎没有一款装几率很高的软件或者平台跟网络无关。

数学的话,主要是:离散数学、线性代数、高等数学、计算机图形学、概率论

以上几个基础就是你成为一个融汇各个主要分支牛人必须学的(当然不是指理论,而是理论+实践编码能力)

⑥以上都是大的基础,要一一攻破并深入学习,虽然网络时代计算机专业知识爆炸式的增长,但是以上几个基础掌握后,会发现,以后的什么新的理论和技术都是基于这些大基础,你就很容易理解了。

⑦我为什么开头不讲你要具体学什么怎么顺序学呢?因为那些技术你要掌握的话,根本可以自己解决,但是如果你由于兴趣,沉迷于一些自己可见的小范围技术的话,那么毕业后虽然也能找到不错的工作,薪水也可能高,但是不能成为一个大牛。

现在才开始讲学习顺序,虽然你说不要推荐书,不过我还是要用书来做顺序。
C语言是可以写很多核心和高级的东西,而不只是小东西,但是从你代码来看,居然用到了 goto,我不是说你那些程序用到GOTO有什么不好,而是一定要避免用GOTO,goto是错误之源,如果你有什么内容非要用到goto才能写到,说明你的编码技巧还有不少提高空间。

你的学习顺序应该是:
C:做一个超级马里奥出来,并能够读取文本脚本来更新关卡。
C++:写一个2D图形引擎,封装掉细节,实现面向对象设计和可复用设计,并且用到《设计模式》中提到的一些设计模式,这样才能算对C++有一个很好的掌握。
MFC:MFC技术虽然近期已经冷下来了,但是你能熟练掌握它,才能证明你的C++OO技术够纯熟,严格证明你掌握了MFC很简单,你只要用MFC做出一个杀毒引擎就差不多了。推荐的书有《深入浅出MFC》。
《Windows程序设计》:和MFC不同的是,用的是windows核心SDK,也就是API,这本书学完后,你才能从操作系统层面上算掌握了win32 平台下的机理(其实win64和win32大部分机理类似)。
C#:C#里集合了当代和前沿计算机科学里最先进的一些语法(虽然执行效率一直被人质疑),但是你学完C#并深入后,至少能够算是对计算机语言有一个更加深刻的理解了。如何证明你C#学的不错了?也很简单,再次写一个随便什么游戏,比如俄罗斯方块。如果更加证明自己呢?用它写一个P2P网络对战游戏。

(如果你注意的话,会发现我说的学习顺序都是沿着语言和某些技术的,为什么呢?因为这些语言和技术涉及到特定的领域技术和计算机理论思想,比如【真正】学完了C#的话,就不单指学完了C#,而是把多种语言范式都学习了一遍,以及现代的程序开发思维(因为里面用到了很多让你一劳永逸的技术))

以上5个步骤都是基础大步骤,要解决的话要没1-2年应该不够。
与此同时,要尽快选出文中你感兴趣的方向作为3-5年的长期方向,不要担心过早选择分支方向会有什么损失,因为计算机很多分支是相通的,只有你把分支方向深入进去,才能真正理解很多理论的实践意义。并且一旦你在某个分支领域形成了较强的优势(比如,到公司里只有你这方面最强),那么你就是稀缺人才。

关于大方向的步骤就不说了,你主要就是要把我说的这几个基础步骤先解决,同时平时要注重大方向理论结合实际去编码和开发。

干软件这行最好是本科学历, 大专学的都有点费劲,除非有天分,有好人带你。
本科学历好入行,入行就得年轻,学历不低于本科才有机会。

本人软件工程毕业

搞软件只是个大方向,具体做什么差别很大。尽管基础知识的差别不大,但是将来具体往什么方向发展,还是要好好思量的,比如是网络方向的,比如web应用开发,还是搞偏底层的,比如嵌入式。对你的知识和能力的要求差异还是很大的。想搞底层的话,C是非常重要的(多数操作系统使用C写的),汇编基本不用学(底层的C基本够了),用到的几率在1%以下,你自己自己抉择吧。

编程的基础是算法和数据结构,语言是不用太纠结的问题。不论是面向过程还是 面向对象,学了一种,学其他的都挺快。

另外,OO和软件工程出现后,开发=算法+数据结构+方法。以后像往项目经理之类的位置发展,软件工程和软精工程经济学的知识也是需要的。

作为基础,计组、操作系统原理、计算机网络都是必不可少的。

另外值得补充的是
现在学习开源技术也很有前途,比如Linux,你该听过吧。
别听别人说的,去学windows,微软早前推MFC,后来推.NET,现在又推Sliverlight。跟着它太累了
开源技术的自由度大,开放源代码,可以让你学习到更多有意思的东西

当然,这个行业在外人看来还是很苦,所以兴趣还是关键。看出你挺有这热情,好好加油吧

99.9%程序员的路线图



软件行业的高手太少了,所以工资普遍都不高。

就程序员来说目前主要就两个方向 普通客户端程序(平常用的那些软件) 或 企业级开发(大型网站,比如淘宝的后台程序)。

所以一般C++和Java是二选一 搞普通客户端程序就学C++ 搞企业级开发当然就是Java了,说程序设计简单,入门是简单,要深入怕把你吓着。

如果你要搞Java的话,基本就只用学java了,然后jsp,然后struts2,还有HTML,Javascript等等...

要搞C++的话...基本你说的那些都要学当然还要学windows程序设计,MFC,做游戏的话DirectX也是要学滴。

还有些都要学的比如数据库,软件工程。

总之当你深入后你就会发现你会有越来越多的东西要学,感觉计算机就像人常说的活到老学到老,因为根本学不完...

我个人认为C++或java你选择一种来学就行了,自己先把C基础打好。大四的时候我到深圳的ITjob学了C++,现在工作已经2年的,待遇也很不错,所以个人建议你学C++吧。


程序员的工作内容是什么?
现为软件设计师)、系统分析员,系统架构师,测试工程师六大类。程序:在中华人民共和国国家标准《质量管理体系 基础和术语》GB\/T19000—2008\/ISO9000:2005(代替GB\/T19000—2000)中第3.4.5条 程序procedure中对于“程序”的定义是“ 为进行某项活动或过程(3.4.1)所规定的途径。”...

程序员的人生信条座右铭
现在依然喜欢程序,但是开始明白,程序并不是计算机的全部,好的程序,好的程序员要经历漫长的修炼,就像是武林高手修炼内功比招式更重要。我要做的是程序员,不是coder。这些是曾经收集的程序员励志语录,其实也并不仅仅是针对程序员,很多事情,是相通的,做事的道理更是一样。把它们贴出来,和大家分享,共勉,一起努力,一...

程序员往上做是什么?软件分析师、架构师、工程师有什么区别?
3、内容不同 系统分析师侧重于需求分析,将不确定的内容变为确定的内容,以便系统架构设计师进行系统的架构。而系统架构设计师按照系统分析师编制的需求分析报告进行架构上的设计。程序员:做编程的底层开发工作,写代码,不停地写代码。软件分析师是指具有从事计算机应用系统的分析和设计工作能力及业务水平...

程序员需要学些什么?
很多程序员响应,他们在推荐时也写下自己的评语。 以前就有国内网友介绍这个程序员书单,不过都是推荐数 Top 9的书。 其实除了前9本之外,推荐数前30左右的...5、程序员的未来很迷茫。(但我认为关键看你自己!我希望你是一个有追求的人,不仅仅是混碗饭吃。因为真正的乐趣在于创造;如果你能改变软件业的历史,那...

想当游戏图形程序员大学报什么专业?
即使没有进入这些专业也没有关系。很多工科类专业多少都会有一些写代码的思维锻炼,想要从事程序员的职业,自学或者参加培训班,然后转行也是一个可行的选择。至于选择学校,有很多学校的计算机和软件工程专业非常优秀。比如清华北大国防科大,以及华五、哈工大西交等都是非常优秀的学校。这个其实可以根据自己的...

你怎么看待程序员这个职业?
说到程序员 大家的第一印象就是 木讷 不怎么说话 比较理性 不解风情 有的看起来还傻呼呼的 最重要的一点都是单身狗 然而。我作为一名程序员 我看待程序员的角度就不痛了 在我的眼里。。程序员。是聪明的 至少有逻辑有条理 虽然经常和产品干假 但不代表我们是蛮不讲理的 因为改一次需求我们要...

为什么计算机从业者多被称为程序员,而不是工程师?
对于不是计算机行业的人员来说,似乎总认为所有计算机行业的人员都是在敲代码,所以在这种情况下,也就会给计算机从业人员一个统称叫做程序员。而对于计算机行业本身的人员来说,他们很清楚程序员以及工程师的区别所在。因为所谓程序员和工程师并不是同一个职位,甚至说可以是天差地别。所谓程序员其实也...

为什么很多人后悔学计算机,做程序员很开心吗
不管是为了兴趣,还是为了钱,终归有很多人选择做了程序员。或许很多人在做程序员之前,他们总是把这个职业想象的很美好,但是他当他们真正去做了这份职业以后,他们才发现,高薪的背后其实有太多的心酸和付出。所以从这个角度上来说,程序员其实就是拿着自己的命在换金钱。有的人在做了一段时间的程...

程序员个人工作总结优秀范文
三、存在不足:一公司领导以及部门领导同事的帮助和指教,使我的工作有了很大提高,当然我还存在着很多不足之处,处理问题思路简单,不够成熟,工作中容易产生急躁情绪,需要更深入学习专业知识,提高自己的工作水平。程序员个人工作总结优秀范文(二)在我进入公司的这八个月里,我陆续接触了公司的软件...

IT行业里什么岗位比较好啊?请大家介绍下
包括软件研发和硬件研发,在一个公司里面完成项目开发,或者定制产品,一般说来,软件研发基本上就算产品的设计者和制造者,硬件研发,只能算设计者。因为后面还有生产环节。通常研发岗位包括RD,QA,以及配置管理员,架构师,小组长,项目经理,研发助理等,就是研究部分所有的职位。部门经理一般没有计算在内,部门经理管人,应该...

东丽区19287886434: 软件学习,我要去一个软件公司上班做程序员类似的工作,可是我不是学软件的,也不太了解编程,据说有师傅 -
智药和血: 如果不是软件相关专业的去做编程 开始超难超累 但是有毅力这都没什么问题 开始3个月能熬住 就有机会 还有就是不会就问 没事请师傅身边的热心的高手吃个饭什么的 师傅一般都是大牛 一般不会太有问题 小问题问问身边的哪怕是实习生 没什么丢人的

东丽区19287886434: 我想做软件工程师,但是我现在不懂软件,我对软件又感兴趣,不知道要从那方面入手学习. -
智药和血: 先看C语言(谭浩强)这是基础, 然后学数据结构,之后看C++,这些都是最基本的 下一步找本孙鑫或者什么其他的有C++语言实现代码的书,市面上有好多,按照书上的例子代码慢慢看看就可以了,大概需要个3个月到半年的时间,如果你纯自学的话.

东丽区19287886434: 一个外行怎么成为软件程序员? -
智药和血: 先学单片机,这个是基础.一定要学好.依次为汇编语言.这个有很多种.看你喜欢哪一种.现在比较常用.又易学的有VC++.VB,JSP...反正有很多.你自己学完单片机.就会知道想学哪一种了...一般懂三四种语言.精一二种就可以做软件编程了! 不过学这个不是一朝一夕的事.慢慢学吧.等到你想成为你想像中的高手.其码得几年...认证考试到当地的自考办报名,每年的3月份报名.大概10月20左右考/一年最多三门. 祝成功!

东丽区19287886434: 程序员设计员和程序编码人员 -
智药和血: 我想你错了,我也是程序员,其实做我们这一行的,并不是说自己想设计什么样的软件,而且客户要求有什么样的功能,我们所做的工作就是根据客户提出的要求来编码实现.而你说的程序设计员和程序编码员都是一样的,首先是做分析,然后由算法设计师来设计一套算法实现功能,最后再由我们程序猿来做具体编码,但是算法设计师肯定是高水平的,自己本身对编程肯定也是非常了解的,所以如果你是这样的话,那估计这行不太适合你了.

东丽区19287886434: 我喜欢软件开发,但是不知道学什么最好? -
智药和血: 过来人告诉你,先别考虑钱什么的,考虑的是自己喜欢什么,只要干这件事养得活我自己,然后自己感觉到快乐,哪怕苦和累,乐此不疲,着就是最好的事情,无数人都是痛苦的干工作,哪怕钱挣的很多也是痛苦,所以既然你喜欢就干这个,前途的话,java基本很难被淘汰,太经典了,c也是,其他语言日新月异不好说,android是比较火,但是好像口碑从好又开始不太好了,所以还是看你学c或者java好了,java比较好入门.

东丽区19287886434: 半生不熟的程序员 -
智药和血: 知道规矩吗?这就是规矩.凡事要从小做起,程序员本来就需要耐性的,技术也是经验的积累.不是说你有工作经验别个老板才要你的,别个老板是要看你的能力的!就象你说的,你只是个半生不熟的程序员,应聘的时候就要看你会不会磨嘴皮...

东丽区19287886434: 我是学软件工程的,现在大二是个女生,马上就要大三了,现在觉得很迷茫,其实我对编程不是很感兴趣,反而 -
智药和血: 软件毕竟是个含金量高的技术岗位,白领高薪职位;既然学这个专业的何不利用起来呢,女生的话可以做软件测试,这个是非常适合女生的,长沙达内不错,我同学是那边出来的,现在在华为那边做软件测试的,也是个女孩子;

东丽区19287886434: 我是一名普通本科大2,软件工程专业的学生.学了一些编程语言,但还是皮毛.听很多人说做程序员累 -
智药和血: 会者不难,难者不会的东西 觉得累的那还是不够热爱程序员的工作 要不然就是心态有问题 加班的话看公司了 你好好学学英语进了外企 根本不存在加班的问题 选好了一条路就走到底 年纪轻轻的就前怕狼后怕虎的 怎么能成功呢

东丽区19287886434: 从什么都不懂没学过任何程序语言 到成为一名真正的C++程序员要多长时间 -
智药和血: 一般是一年,努力一点半所,再刻苦一点,四个月,再勤奋一点三个月,要求再低一点,一个星期

东丽区19287886434: 本人想做程序员,没有什么基础知识,想买一个笔记本电脑,不知道最低的要什么配置,什么价格,当然越低越 -
智药和血: 想做程序员怎么什么都不懂呢?如果是程序员,硬件要求其实不高.不过也看具体什么程序,微软VS?PHP还是Java?我正好是计算机专业的老师,机器上vs和php都有.我的笔记本还是五年前3000块的笔记本,只不过加了固态硬盘.其实现在...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网