呵呵,c语言知识只是入门哦。
首先推荐你精进理论知识,数据结构和算法,不说精通,但绝对要了解。
其次,根据你的兴趣和爱好,选择方向。
c/c++主要针对底层系统,以及对速度和性能要求较高的软件,比如3d绘图,数据库,操作系统,网络服务端等等。
JAVA针对手机平台,以及网络方面的应用开发。
python,php,javascript等脚本语言适合web开发。
也可以做DBA,学数据库。
总之有很多种,你自己上网去查,这里就不累述了。
当然,掌握一门甚至多门语言,不代表就万事ok了。比如你用c++开发图形图像类软件,那么你必需对图形图像的相关理论知识有所了解,又如用java开发网络类程序,你必须对计算机网络,Tcp/ip协议有所了解,要开发文件系统,就必须对操作系统的有所了解。
如果需要参加实际的项目,那么你还要学一些框架类的知识,比如.NET框架,J2EE框架,MFC框架等等,从事图形学,你得学习OPENGL,DirectX等等。只有掌握了相关框架的API这样才能够构架大的系统。
总之呢,给你的建议就是:数据结构+算法+你感兴趣的方向
其中,你感兴趣的方向=相关理论知识+具体的实践语言+对应的框架API
java基础一般就是J2SE了,学完之后一般有两个方向可以选择继续发展:
第一个为J2EE,就是企业级应用开发,涉及到web,一般为B/S结构的应用开发;需要深入学习掌握的知识包括SQL、MVC、IoC、AOP、持久化、WebService、HTML、CSS、Javascript等,主流相关技术框架有Spring、Struts、Hibernate、iBatis、EJB、JSF、jQuery、ExtJS、DWR等。
J2EE的开发特点之一就是一般资源(CPU、内存、硬盘存储等)足够丰富。
第二个为J2ME,就是嵌入式Java开发,涉及到手机、机顶盒、电视之类的设备。在过去的诺基亚为王的时代,很多小游戏就是基于J2ME开发的。如今安卓很流行,很多手机、智能电视都使用安卓系统,而安卓的SDK开发也是基于Java的,就是使用Java进行开发。(NDK开发需要掌握一定的C++的知识)。
学完c后,最好学习c++.c是一门最为基础的课程,有了C的基础,学C++会比较应手些,因为C++ 被称为“带类的C”,即C++引入了类的机制,同时C++有两个明显的特点就是:全面的兼容C和支持面向对象的方法。当然C++不是一个纯粹的面向对象的语言,因为它既支持面向过程的程序设计,也支持面向对象的程序设计。
学完这两个之后,你再考虑一下net和java,后两者在c++的基础上学习是很容易的,都差不多,都有一定的类似性,都牵扯着面向对象问题,你学习net和Java时,你会发现两者有类似性。
同时,在学习NET时,设计windows应用程序是会与vb有一定的类似性。Java是一种面向对象的语言,具有跨平台的优点
其实呢,只要掌握一门语言的规律学起其他语言来都很容易了
要学什么语言是要看你要往那个方面发展
如果你非常非常精通某一门语言的话其实也可以获得很大成功的
你也可以涉猎一下其他语言
但是一定要精通一门
不然学了那么多什么都不精通就白学了
你认为你c学的很牛了?呵呵,那就学学c语言高级编程吧,编程的深度体现在你的代码中,学学数据结构吧