Ⅰ c语言 找工作问题
最好能沿着一定路线去走。
目前你毕业在即,最好先围绕着两点去短期内有一个提高,以及为长期学习作准备:
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年的长期方向,不要担心过早选择分支方向会有什么损失,因为计算机很多分支是相通的,只有你把分支方向深入进去,才能真正理解很多理论的实践意义。并且一旦你在某个分支领域形成了较强的优势(比如,到公司里只有你这方面最强),那么你就是稀缺人才。
关于大方向的步骤就不说了,你主要就是要把我说的这几个基础步骤先解决,同时平时要注重大方向理论结合实际去编码和开发。
Ⅱ 现在还有没有单纯招聘C语言程序员的,如果有具体都是
目前招聘纯C的程序员也有,但是比较少,主要集中在嵌入式系统开发领域。这一类的程序员除了要求对C非常熟练外,一般还要求对具体的嵌入式开发平台有经验。这个领域的程序员有不少是非计算机专业的,有不少是有半导体、电子、自动化专业背景的。
另外在游戏和金融领域,也有少量招C语言开发的,一般要求会C/C++,但实际开发往往以C++为主。这个领域的程序员一般都是计算机专业出身。
Ⅲ 有c语言c++工程师吗,我这需要
可以往上接触win32 SDK编程,不能说掌握那两个就足够了哦,越是到后面你会发现越不足,你甚至会觉得自己没入门。
Ⅳ 软件c语言,有哪些岗位可以选择
嵌入式软件开发:例如单片机,dsp,arm等;基于嵌入式操作系统的应用软件,驱动程序;基于大型服务的底层任务,如相应的协议栈。
ios手机app的开发,安卓app的开发都用c了
一般企业岗位为嵌入式软件工程师,驱动工程师,软件工程师等相关职位
你所学的就已经是偏向嵌入式开发了,不过从你专业来看,建议向嵌入式软件开发.因为硬件开发需要专业知识太高.
嵌入式软件开发重点中的重点就是学好C语言.C的灵活,和全面的内存管理使得C语言永远脱离不了底层控制的开发.数据结构和算法适当看下,现在你如果直接找底层驱动类开发的工作,基本上是很困难.现在嵌入式方向用到的高深算法基本没有(由于在大部分嵌入式开发中,CPU和内存很难达到目前计算机的程度,所以高深算法用不到太多).
剩下的就多看看操作系统,了解操作系统对今后的工作很有帮助.建议学习下LINUX,多了解目前开发主要应用的一些OS系统(有的需要多任务实时操作系统,有的是单任务操作系统,种类很多),再有就是多熟悉各操作系统下的编译环境.
再有,要学习得非常透彻的就是:要了解计算机的内存分配,要细化的来学习.在嵌入式系统中,内存是很金贵的,在有限内存中,做到不浪费,不增加内存是个难题.所以,这个是很重要的.
做到以上你就可以放心大胆的去找嵌入式软件开发的相关工作了.
另外补充下:不是说学习了C++和JAVA就能从事软件开发工作,软件开发工作多方向,学了这2个,也就是能做应用软件.控制类的是做不来的.何去何从,自己考虑吧.
PS:看到"貊氏游魂"仁兄的说法真好笑,既然知道自己是初学者就别对他人说:如果想用C找工作,一般是在说笑.我觉得你在说笑.就目前软件开发行业信息,全世界软件开发的60%大多是嵌入式开发,做嵌入式开发不用C你用JAVA试下.
学会你那3种多说做做应用.你说的高手是做什么的?如果真对你说出这样的话,那么他肯定不是高手.另外说下,软件开发做应用只是很小的一方面.别把软件开发视作想当然.应用软件并不代表整个软件开发.
Ⅳ 哪里可以找到Python或者c语言工程师
新华电脑学校的老师很多都是在公司里面工作过的。
Ⅵ 学c++,c语言将来能找那些工作啊
所以,假如你学的是C++,同时也不在乎业内莫名其名的岗位歧视链的话,找一个客户端开发的工作也是非常不错的。只不过相较于后端开发,你可能需要重新审视客户端这个角色。
Ⅶ 来个C语言开发工作的
Linux下 嵌入式开发 需要 c和C++的基础 (一般掌握数据结构,Linux下高级网路编程,驱动的了解)一般刚入职会从事 简单的开发 不会让你开发太过于深入的工作 可能是前台页面的开发(c++可能用的比较多一些)
Ⅷ 华为招聘C语言的程序员吗
必须的
Ⅸ 嵌入式C语言编程,约占所有招聘编程工程师的比例是多少
一般来说占比30%左右,因为嵌入式编程,主要在于各种需要独自计算机所带的,因此相对其它的软件开发或者各种开发来说,占比较少。
Ⅹ 只会C语言能找到工作吗
会不会找到工作看你学习的好不好。
1,c比价接近底层,可以往嵌入式。
2,c基本和Linux练习在一起,可以接触操作系统一些知识,方便c开发。以及数据库知识。
3,c++是面向对象,细节基本上都是C,可以考虑游戏开发。