很多想要学习软件开发的人问过我,学习哪种开发语言好。对很多想要介入软件行业的新人来说,学习哪门语言很是纠结。现在刚好开始放寒假,在假期学习一门开发语言也是一个不错的选择。今天我给大家简单介绍一下。
现在市面上的开发语言非常多,在我看来,没有哪种好,他们的区别在于在哪种领域更适合。了解他们是应用场景,自然也就知道了自己心中问题的答案。
上面的图片列举了很多开发语言,最显眼的是C和JAVA,市面上份额最多的也是这两门语言,但并不表示其他语言就差。
天下武学出少林,在我看来,C++就是编程界的少林,万法之宗。C++是在C语言基础上扩展出来的,他们属于近亲。C是面向过程的,C++是面向对象的。语法上也有很大的区别。从面向对象的角度去解决问题,更符合问题抽象逻辑。C现在主要应用领域是单片机,如果想要走硬件的路子,将来做单片机应用行业,C语言是必须的。单片机还是非常有前景的,我们生活中到处都有单片机的影子,吹风机、洗衣机,电冰箱等等,都需要单片机去控制。C++的应用领域就非常的广泛了,电脑桌面应用程序,服务器,游戏,嵌入式。C++/C有他独特的优势,就是这门语言可以控制硬件,而JAVA/JS之类很多语言就做不到(JAVA也可以控制硬件,是通过其他方式,就语言本身是控制不了的)。现在很多开发语言的出现,已经将C++的份额分去了很多,但是在嵌入式领域,C++依然处于霸主地位,这是C++的先天优势。这里简单说下,为什么C++可以控制硬件,而其他语言不可以。因为C++编译后的可执行文件是基于系统的二进制文件,是直接可以执行的机器码,而JAVA是运行在虚拟机中,JS是运行在浏览器中,脚本语言需要解释器的支持,他们都是中间嵌套了一层,不是直接使用机器码与电脑等运行环境直接交互,所以从先天上就是不可能的事情。正是因为这个原因,C++运行效率也是非常高的,当然现在硬件已经非常强劲了,执行效率问题已经被强劲的硬件所掩盖。从学习难度上讲,C++是被认为比较难学的一门开发语言,之所以难学,很多人说是因为指针的存在,其实在我看来这并不准确,指针其实并不难,C++其实要比其他语言更加的灵活,灵活就能更好的优化代码,提高效率,使用最合适的语法,同时也增加了学习难度。对C++感兴趣的朋友可以