网教网

搜索
查看: 106|回复: 0

不同编程语言间的抉择

[复制链接]

1

主题

3

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2023-2-10 11:26:01 | 显示全部楼层 |阅读模式
女:你能让这个论坛的人都吵起来,我就跟你走。
程序员:PHP是最好的语言!
某论坛真的就炸锅了,各种吵架……
女:服了你了,我们走吧,你想干啥都行。
程序员:今天不行,我一定要说服他们,PHP才是最好的语言……
作为 IT 圈的人,尤其是程序员都知道这个梗。
编程语言的选择,其实是大神之间的战争。作为计算机专业的学生,没有10万行代码之前,进行这种争论,意义不大。
最关键的是了解不同语言的特点及适用场景,结合自己的求职目标,选择两到三门常见语言进行深入学习。
一、切记,不要选择小众语言

小众语言,使用面太窄,使用的企业太少,难以就业。


选择语言一定要要关注TIOBE开发语言排行榜。TIOBE开发语言排行榜(https://www.tiobe.com/tiobe-index/)每月更新一次,依据的指数是基于世界范围内的资深软件工程师和第三方供应商提供,其结果作为当前业内程序开发语言的流行使用程度的有效指标。注意,TIOBE反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数量多少。
前几年,Java Web框架还不够成熟时,为了使用Grails框架,我学习使用过Groovy语言,TIOBE排名一直在30名左右。出现问题的时候,很难交流,甚至框架本身还有不少Bug。这给开发使用带来了很多困难。最终还是选择放弃,浪费了几个月的时间。
因此,除了达到高手水平,能够合理的度量自己选择的利弊,对绝大多数程序员都不建议选择小众开发语言。
二、大众的选择,作为必修

计算机专业的学生,一定先学习使用大众的选择。
近十几年,C语言、Java一直稳定在TIOBE排名的前三名,因此,是学生学习的不二之选。而且,这两门语言也是绝大多数学校的必修课程,学习也非常方便。


我自己曾使用过十多种编程语言(C、Java、Python、Javascript、Visual Basic、FoxPro、Perl、SQL、Groovy、Bash、Tcl、Verilog )。其实,只有在这个行业里待够10年的程序员,基本都会写过这么多种语言。
最关键的,其实只要前面两三种语言学明白了, 后面学新语言基本都是一天上手, 学一、两周就可以上手了。只要准备好参考手册,或者Baidu,就可以开始干活了。
但是,最怕的是,每门语言都没学深入。或者仅仅在培训公司照猫画虎的学了个"框架",然后靠它找工作。等过几年这个框架过时了,就找不到工作了。
因此,建议计算机专业的学生,认真把C语言、Java学深入了,其他语言以后可以快速的切换过去。
三、主流语言及适用场景

1. C语言



绝大多数国内高校的第一门教学语言,主要用作嵌入式、操作系统的开发、设备接口驱动。偏底层的应用,基本都可以使用C语言。数据库、图形图像处理、网络底层也大量采用。而且,很多编程语言也是由C语言来实现的。
2. Java

Java可以说是当前使用范围最广泛的语言。从电子商务网站到安卓 (Android) 手机的应用程序,从科学应用程序到金融应用程序 (如电子交易系统),从 Minecraft 等游戏到 Eclipse、Netbeans 和 IntelliJ 等桌面应用程序,从开源程序库到 J2ME 应用程序等,在现实世界中有许多地方使用 Java。


随着国内互联网企业的发展,Java在Web 应用上呈现一家独大的局面。在就业网站上,Java工程师的招聘量一直是最多的。
3. C++

几乎所有3A游戏都是使用C++编写的。大众公认电子游戏的开发者是软件行业里回报最高的工作之一,也是需求量最大的领域之一。


除此之外,金融领域也有很多工作需要有能力编写低延迟代码的程序员。在这个领域,数学背景也是一大加分亮点。该领域的大多工作可能都涉及到开发与维护高频使用的交易平台。
很多偏底层、要求性能的场合都会选择C++。不过随着更多更先进的编程语言兴起,C++的市场份额也在逐步下降。而且,C++难度较大,学习路线比较陡峭,劝退了很多人。
4. JavaScript

随着Web前端技术的快速发展,市场招聘也呈现快速增长。JavaScript也受到部分学生的关注。
Javascript 的主要用作网站前端开发。用来实现前端逻辑,简单的比如说点一个按钮会发生什么。


Node.js的出现,让JavaScript可以进行服务端开发、命令行工具开发;使用cocos2d框架可以开发游戏;也可以开发桌面应用。近年,前端框架 Vue、React的快速发展,更带火了网站前端开发。
但是,JavaScript相关的技术及框架技术更迭较快,需要持续的学习新东西;对于学生来说,可能会分散精力,将大部分时间浪费在应用框架上,苦练内功的时间就少了。
5. Python

Python几乎可以做任何编程工作。Web应用、用户交互界面、数据分析、统计等等——不管是什么问题,你总能在Python中找到需要的框架。近期,Python又成为了数据科学家的重要工具。在网络爬虫、人工智能等领域使用非常广泛。


但是由于语法特性,企业整体采用的范围不大。因此,部分城市甚至没有面向大学毕业生的Python岗位。
最后,还是强调下,对于普通的计算机专业学生,选择C语言、Java的学习路线比较合理,不要花太多的时间去比较、争论哪个语言更好;而是把一两门语言学成高手
如果以后成长为公司的技术总监或者CTO了,你可以决定选什么语言。其他时候,还是看市场需要什么。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表