学编程好找工作吗?,第一门编程语言,我应该学什么?

浏览:3210   发布时间: 2022年05月16日

第一门编程语言,我应该学什么?

作者 |Daniel Bastos

译者 | 弯月 责编 | 郑丽媛

出品 | CSDN(ID:CSDNnews)

软件工程师问我最多的一个问题就是,第一门编程语言应该学什么。这可能是开发人员学习过程中最大的困惑,以至于许多人觉得在得到百分百正确的答案之前,他们什么都不想学。然而现实是,你可以选择任何一种语言!选择哪种语言其实并不重要。

我将在本文中解释原因,并引导你对编程语言建立正确的心态。最后,我们还将讨论如何从眼花缭乱的技术栈中选择一个。

编程语言本身不是工作

初学者高估这个决定的重要性的主要原因是,他们不了解程序员的工作。作为一名软件工程师,人们付钱给你不是因为你可以使用某种编程语言,而是因为你可以通过计算机来解决问题,并创造价值。随着职业生涯的发展,你需要学习如何使用更简单的解决方案,而当复杂性不可避免时,你要学会如何分解问题,将复杂的系统分解成更简单、更易于管理的小块。你还将学习如何向软件添加新功能,同时还不会增加软件的理解难度。还有最重要的是,如何让别人也拥有这种能力。

请注意,所有上述技能不依赖于任何一种编程语言。它们完全取决于你是否能够理解软件需求、编写算法、将解决方案分解为更小的逻辑单元,以及了解软件的工作原理。专注于这一点比学习任何技术栈都重要。

更好的心态

我并不是说编程语言不重要。我认为,我们应该将编程语言视为我们可以使用的工具,而不是我们的工作重心。作为一名医生,选择最尖端的设备也是工作中最重要的一部分,这一点毋庸置疑,但你会相信一位连手术刀都拿不稳的外科心脏医生吗?

在选择第一门编程语言时,你几乎没有任何信息,因此这种心态就变得更加重要。人们往往害怕在错误的编程语言上浪费时间,然而他们没有看到的是,每个人都有选择错误语言的经历,而且这与他们的工作没有丝毫关系。

一般来说,选择错误语言的原因有几个:1)人们最终学习了某个以前从未接触过的新领域(也许经过一年的学习,他们才对数据科学有一定的了解);2)他们对已知领域的信息有了更多了解(也许他们找到了更适合数据科学的 Python 库)。

更换语言是工作的一部分

将语言视为工具的另一个原因是,你需要不断更换编程语言。在过去的几年里,每当加入一个新项目,我都需要学习一种新语法。有一次,我接到的第一个任务是修改产品的某个功能,要知道这个功能每天都有几千万的用户使用,而且完全建立在一种我几周前才听说的语言之上。

此外,即使不换项目,团队添加新语言的情况也不罕见,这会迫使所有团队成员在较短的时间内掌握新语法。出现这种情况,是因为某种新语言的出现可以减轻每个人的工作负担,或者是某个重要人物决定采用某种彻底改变行业格局的语言(比如苹果在完全由 Objective-C 主导的 OS 中添加了 Swift 的支持,Google 在 Android 中添加 Kotlin 的原生支持)。

鉴于当今市场上有如此之多的语言,而我们所在的领域又如此活跃,快速学习新技术的能力已不可或缺。有人甚至认为,选择一门错误的语言对你有好处!

各种语言之间有很大的相似性

我知道上述描绘的场景听起来可能有点可怕。但请不要害怕,我并不是说每次你都必须从头开始学习一种全新的思维方式。事实上,快速学习一门新语言是完全可能的,因为编程语言大多遵循类似的模式,只需要学习一次,就可以在其他地方使用。为了说明这一点,我们来看一看用以下两种完全不相关的语言实现同一个简单的算法。

图:用 Typescript 找出列表中最小的数字

图:用 Kotlin 实现同一个算法

我知道这只是一个例子,在现实世界中,代码库必须处理大量的逻辑。但是,上述两种编程语言的相似程度仍然非常惊人,而且代码中的高级概念越多,不同语言的相似程度就越高。

事实上,除非你学习的编程语言都非常奇怪,否则过渡到一门新语言应该不会有太大困难。尽管对于任何人来说,要深入掌握新技术栈都需要一定的时间,但经验丰富的开发人员应该能够在学习使用新语言几天后,就编写出生产级的代码。

如何选择语言

上述我们说明了编程语言不是工作中最重要的方面,你不需要为选择第一门编程语言而感到困扰。但是,为了成为一名开发人员,你仍然需要做出选择。那么如何做这个决定呢?下面是一些建议:

选择适合领域的语言

有些人进入计算机科学领域时,确切地知道他们想要构建什么样的软件。如果你也属于这种情况,则请选择该领域最常见的编程语言。举个例子,如果你想成为一名 Web 开发人员,则请学习 Javascript。安卓开发?选择 Kotlin 没有错。数据科学家?那么可能应该学习 Python。明白了吗?

选择简单的语言

学习算法思维和磨练解决问题的能力已经够难了。编程语言应该只是一个工具,而不是障碍。因此,虽然从长远来看,像 C++ 这样的低级语言可能非常强大,而且很实用,但我建议你从 Javascript 或 Python 等脚本语言开始学习,它们的入门门槛极低,可以让你专心学习核心的编程概念,而不是处理内存管理和底层机器问题。

选择好找工作的语言

虽然 ALGOL 开发人员可能也有市场,但学习广泛采用的现代语言更好找工作。如果你在两种编程语言之间犹豫不决,则请选择更受欢迎的一种。这样可以保证有一个社区,在遇到问题时为你提供支持,同时也更容易找到第一份工作。如果碰巧你找到了一份 ALGOL 的好工作,那自然很好。你随时可以回过头去学习。

总结

最后,我想列出所有我学过的编程语言,作为本文的结束。我认为这很重要,因为它们见证了我职业生涯的发展轨迹。即使你做出最糟糕的选择,也没关系。

我学习的第一门语言是 C++,然后是 Java。这两种语言都很棒,而且很实用,拥有庞大的用户群以及一些非常值得炫耀的大项目。但老实说,在过去的 10 年里,我没有使用二者编写过一行代码。我一生中几乎从未在非学术环境中使用过这两门语言。即便如此,我从不后悔学习了这两门语言,它们为我提供了表达编程概念的方法。

因此,如果你是完美主义者,希望想清楚你应该学习哪种编程语言,那么最终答案是:随便选择一种即可。

10 月 23-24 日,“长沙·中国 1024 程序员节”重磅来袭。岳麓对话、技术英雄会、主题论坛演讲、第 16 届中国 Linux 内核开发者大会( CLK )、第 13 届中国开源黑客松等多场硬核技术竞赛纷纷亮相。此外,还有程序员吐槽大会、创新产品展与现场体验等诸多特色活动,邀你一起体验一年一度、专属程序员的盛大嘉年华!

学习Python编程好找工作吗?

说起编程语言,不少人都会推荐学习Python,但很多人对Python不太了解,所以比较好奇“学习Python编程是否好找工作”,关于这个问题,小编通过下文为大家详细解答一下。

从市场情况来讲,Python职位比较多,而且同等水平程序员Python岗位工资要比个别编程语言的程序员高很多,比如说PHP、GO语言。

现在百度、新浪、搜索等大型互联网公司都有相应的Python高薪职位,但想要找到好的工作,你必须具备好的Python基础,积累丰富的实践才能达到企业用人需求。学会Python可以从事的工作方向:Python开发工程师、Python高级工程师、Web网站开发、Python自动化测试、Linux运维工程师等岗位。

伴随着人工智能越来越火,Python作为人工智能首选的语言,已经被教育写入小学教材中,因此让很多人看好Python编程语言的发展前景。那么学习Python好找工作吗?可以做什么事情?具体分为几大类:

1. 网站后端程序员:使用单间网站、后台服务比较容易维护;

2. 自动化运维:自动化处理大量的运维任务;

3. 数据分析:快速开发、快速验证,分析数据得到结果;

4. 游戏开发:作为游戏脚本内嵌在游戏中;

5. 自动化测试:编写简单的实现脚本,实现自动化;

6. 网站开发:利用Django、flask框架搭建网站;

7. Python爬虫:批量下载电视剧图片、运行投资策略、爬取适合房源、系统管理员的脚本任务等。

学数控编程好找工作吗?女生能不能学数控编程?

大家下午好,我是数控编程城晨。我看到很多人对数控编程行业的就业问题有疑问,今天我就和大家一起来探讨一下,数控编程到底好不好找工作。

根据网友的反应,目前数控编程行业的口碑还是不错的,足以说明数控就业率和待遇还是很好的,如果你现在都还在犹豫的话,那你就赶紧入行了。

图片来源网络

目前的数控行业人才缺乏是无疑的,目前大部分的数控师傅都是只会一些基础的编程,只有少部分数控编程师傅掌握了技术,他们要么现在在大公司拿着二三十万的年薪,要么自己出来创业开培训机构,剩下极少部分在为国家制造工程做出了杰出的贡献。

图片来源网络

总的来说,数控编程是一条很不错的出路,对学历没要求,高收入,有发展前景。

图片来源网络

女生学数控编程有前途吗?或者说女生能学数控编程吗?

我看到知乎上有一条很受关注的提问,女生学数控编程有前途吗?其实女生学数控编程也是可以的,因为男女生性格上的差别,女生做事可能会比男生更细心,还有就是女生学数控编程的话可以当车间主任,在此我说句与这关系不大的话,你们更想车间主任是男的还是女的呢?相信这么说已经够明白了吧,女生一样也能学数控编程,要么当技术员要么当管理员,学数控编程是没有男女之分的。

图片来源网络

好啦今天的话题讨论就到这里,以上看法纯属个人观点。文章写作不易,如果你也喜欢我的话,不妨点个关注、收藏、转发,你们的支持是我最大的动力,我会持续更新陪伴大家一起学习,成长。如果你有什么好的建议,好的学习方法要补充的,请在下方评论区留言;如果你想要了解什么,私信我,下期更新,拜拜~