本文首发 | 公众号:lunvey

人人都在学Python,我还学C++吗?
现在只要提及编程语言,得到的答复都是:学Python,有未来!
 
大家可能有一个误区,数据分析带火了Python,让人们觉得只学Python可以进入到人工智能和数据分析领域。诚然,Python社区的庞大产生了不少第三方库,可以让你傻瓜式直接调用库完成某些需求,往往几条语句即可。刚学Python的朋友往往会从request之类的库入手,然后因成功抓取到某个网页的数据而欣喜,最终一直停留在开箱即用的阶段,如果没有这个库,什么都完成不了。那这样还叫编程吗?应该叫粘贴复制,没有思想的灵魂。
Python主要是封装了太多模块,易于调用,在大型项目中作为胶水语言,减少代码量,提高复用率。所以我们可以看到很多项目都提供了Python开发接口,比如微信公众号开发可以使用Python\C++\Java,最终用什么,完全取决于你擅长的语言。而如果没有封装好对应的JS库,你的Python完全跑不起来。这是前端领域,JS的不可替代性。而后端大家经常听见的服务器语言,如Php和Java,对性能要求不高的网站或许会使用这些来开发,而游戏服务器,必然是C++开发的。游戏里面的部分模块可能会由Python或者Lua编写,方便实时改动,毕竟他们是脚本语言,不用编译。这对于时常需要在线更新的软件来说,使用很频繁。
C++不可取代的地方
也就是说脚本语言必须运行在一个底层环境里面,而C和C++包括Java这些都是用于处理底层环境,能对系统接口进行调用,然后实现对应的需求,俗称客户端的开发。而有了这个客户端框架,里面的部分功能可以用任何语言开发,完全看你的用途。在这之上,如果做数据采集,封装一个Python模块,代码量确实很少,效率也很高。这也是Java和C++开发岗位那么多的原因,而Python培训机构多而已。毕竟Python简单,可以让你不用深层次了解系统底层在做什么,对于Python机构来说,可以很快笼络一部分学员,让他们信服,觉得课程物超所值。也有部分大学在开设Python课程,然而万变不离其宗,软件开发正规军没有一个不是从c开始的,然后c++。甚至和一些刚转行的朋友交流到,他们现在处于学了Python很难找工作的地步。这里我立马查看了下大厂对于Python岗位的需求分析:

从C++

Python 岗位挺多,比C++稍微低一点,毕竟腾讯三分之二的是开发人员,能找到这么多的招聘岗位也实属正常。那么我们看看Python的上岗需求是什么。看了很多都发现有如下的要求:
不难发现后面写了一句:具备娘好的学习能力,对互联网新技术有很强的的求知欲望。因为随着工作的深入,你要学习很多依赖,仅仅纯Python是无法应对的。反观C++则不一样:
C++毕竟是一门经历了时间考验的,能应对各种程度项目的这么一门语言,这些年仅仅标准再更新,目前最新的是C++23,其实标准也就是增加部分,弃用部分。对C++高级工程师来说,影响不大。他们不需要学习太多新知识,也不需要什么所谓框架,需要什么自己动手开发就行。
在开源库GitHub,可以看见很多大厂的自己动手造的轮子,只是为了业务顺手而已。
毕竟依赖别人的就得遵循别人的开发标准,很是不方便。
如果真正想入门软件开发,C++是你的必经之路。毕竟Python能做到的C++都能做到,C++能做到的Python不一定能做到。凡事讲究先苦后甜,四年大学难道仅仅为了学一下Python吗?最近很火的ImHex的作者,大二就沉浸在底层开发中,并用C++打造了这款接近一万星的开源十六进制编辑器,为他点赞!C++真的挺难,但是会当凌绝顶,一览众山小。学会C++之后,再用Python来充实自己的职业生涯,岂不是身心舒畅吗?

都学Python了,C++难道真的用不着了吗?的更多相关文章

  1. 数读 | 为什么运维朋友们都需要学Python?

    运维人员需不需要学开发?需不需要学Python?PythonN和Shell有什么区别?天天问这种好水的问题,我实在受不了,决定帮大家扫扫盲. 现阶段,掌握一门开发语言已经成为高级运维工程师的必备计能, ...

  2. 小白学 Python 爬虫(26):为啥上海二手房你都买不起

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  3. 他学习一年Python找不到工作,大佬都说你别再学Python了!

    引言: 都说,滴水穿石非一日之功.然而有些人即使奋斗一辈子也比不上别人一年,别人学习一年比不得你学习一个月.其中缘由,有些人看了大半辈子还没看明白. 即使Python这么火,为何你学习一年的Pytho ...

  4. 学Python必背的初级单词,你都背了吗?

    今天给大家分享一些学习Python必须认识的英文单词,同时也是学习编程都必须会的单词,新手赶快学起来!有点长耐心看完. 小编推荐一个学Python的学习裙:九三七六六七 五零九,无论你是大牛还是小白, ...

  5. 为什么我建议每个开发人员都需要学Python?

    转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 原文出处:https://dzone.com/articles/10-reasons-why-every-d ...

  6. 简学Python第一章__进入PY的世界

    #cnblogs_post_body h2 { background: linear-gradient(to bottom, #18c0ff 0%,#0c7eff 100%); color: #fff ...

  7. 投入机器学习的怀抱?先学Python吧

    前两天写了篇文章,给想进程序员这个行当的同学们一点建议,没想到反响这么好,关注和阅读数都上了新高度,有点人生巅峰的感觉呀.今天趁热打铁,聊聊我最喜欢的编程语言——Python. 为什么要说Python ...

  8. D16——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D16 20180927内容纲要: 1.JavaScript介绍 2.JavaScript功能介绍 3.JavaScript变量 4.Dom操作 a.获取标签 b ...

  9. 一张图告诉你为何必须学Python?

    互联网行业的薪资高.发展前景好,已经是人尽皆知的事了.越来越多的人对编程有了兴趣,想通过加入大公司实现人生逆袭,我们身边也涌现出了一些从零学习.变身大神的励志故事. 但更多的人还是选择观望:有人觉得编 ...

随机推荐

  1. 解析一下C++的异常处理

    ​ 作者:良知犹存 转载授权以及围观:欢迎添加微信:Allen-Iverson-me-LYN 总述     在程序运行过程中经常会碰到一些问题,例如数组下标越界,除数为零等,这些错误不过能被发现处理, ...

  2. Codeforces Round #658 (Div. 2)【ABC2】

    做完前四题还有一个半小时... 比赛链接:https://codeforces.com/contest/1382 A. Common Subsequence 题意 给出两个数组,找出二者最短的公共子序 ...

  3. 【uva 10048】Audiophobia(图论--Floyd算法)

    题意:有一个N点M边的无向带权图,边权表示路径上的噪声值.有Q个询问,输出 x,y 两点间的最大噪声值最小的路径的该值.(N≤100,M≤1000,Q≤10000) 解法:N值小,且问多对点之间的路径 ...

  4. linux 部署 .net core mvc

    1.本地编写一个mvc网站 代码编辑器:Visual studio 2017.2019.Visual Code 均可 1)搭建 略. (请自行搜索如何编辑mvc,或看文末参考链接) 2)配置 Prog ...

  5. Entity Framework (EF) Core学习笔记 1

    1. Entity Framework (EF) Core 是轻量化.可扩展.开源和跨平台的数据访问技术,它还是一 种对象关系映射器 (ORM),它使 .NET 开发人员能够使用面向对象的思想处理数据 ...

  6. WSL2 VS Code远程开发.Net Core

    修改 我们打开一个页面,随便修改一下,保存,结果会出现错误:Unable to write file (NoPermissions (FileSystemError): Error: EACCES: ...

  7. DSSM在召回和粗排的应用举例

    0.写在前面的话 DSSM(Deep Structured Semantic Models)又称双塔模型,因其结构简单,在推荐系统中应用广泛:下面仅以召回.粗排两个阶段的应用举例,具体描述下DSSM在 ...

  8. Win7下安装IIS

    安装IIS 1.控制面板 --> 程序 --> 卸载程序,进入"程序与功能". 2.进入"打开或关闭Window功能". 3.找到"Int ...

  9. js Nullish Coalescing Operator

    js Nullish Coalescing Operator 空值合并 const n = null ?? 'default string'; console.log(n); // "def ...

  10. LVS : Linux Virtual Server 负载均衡,集群,高并发,robust

    1 LVS : Linux Virtual Server http://www.linuxvirtualserver.org/ http://www.linuxvirtualserver.org/zh ...