最近,看到网上好多人站在在职程序员的角度去分析编程语言的一个优劣,劝小白学这个语言别学那个语言,这对小白来说是毫无意义的。
但是它又具有极强的一个误导性。
为什么呢?
一、语言只是工具,解决问题才是关键
编程语言只是工具,可选的当然有很多,但是每一种语言都不是十全十美的,它都各有优劣,但是我们要解决的问题却是实实在在的。
我们要寻求的一定是最优解,扬长避短。
1.很多程序员会习惯性地维护自己最擅长的编程语言
对于我们程序员来说,开发一款软件的过程当中,你可能会用到好几门语言来解决你的问题,也就是说一个程序员他有可能要掌握一到多门语言,但是大多数程序员最熟悉的那门语言,一定是他当前所用的那一门儿。然后以此为基础,引入一些其他的语言的优点,来增强自己软件的一些性能。
所以说好多程序员其实都会陷入类似“PHP是全世界最牛逼语言”的这种误区。
他会钟爱自己的那一门语言,然后点评编程语言优劣的这种说法,其实都具有极强的一个误导性。
2.软件性能的优劣是整套体系决定的,不仅仅是编程语言
我们用某种语言来写程序,写出来的程序是不可能运行在空气中的,我们写出来的程序一定是要运行于某个环境当中的。
所以说决定软件性能优劣的绝对不只是语言的优劣,它是一整套体系决定的。
单独讨论编程语言哪个优劣,就好比你去对比F1赛车跟奇瑞QQ两者的车速,你可能会说F1赛车肯定牛逼,奇瑞QQ肯定弱爆了,但问题是如果我把这两辆车都开到了北京五环呢,堵车堵到水泄不通,那么它两者的速度是不是都差不多?
所以看问题应该成体系、整体去看,不谋全局者不足以谋一域。
大家也会看到很少有架构师出来谈语言的一个优劣,你基本上看到的都是程序员在讨论哎说哪种语言更好、哪种语言更坏。
有人说JAVA是全世界最牛逼的语言,有人说PHP是全世界最牛逼的语言,有人说Python是全世界最牛逼语言,这其实都是非常愚蠢的一种论调。
语言对于我们程序员来说只是工具,我们要做的是解决问题,而不是去研究谁的工具最牛逼。
可以说谁的工具都牛逼,谁的工具也都不怎么牛逼。
二、高空建楼的言论对小白没有意义
编程语言的学习它是一整套体系。
第一层你首先得了解一下计算机硬件,像CPU、内存的硬盘他们大致的工作原理是什么。
第二层就是在硬件之上,你得了解一下操作系统是啥,以及它大致的工作原理。
第三层才是在操作系统之上来开发应用程序,那这个时候你就需要掌握一到两门编程语言进行开发了。
但是我看到大多数人的分析都是直接站在了第三层,它默认你已经知道了计算机硬件加操作系统,也就是软件的一星平台是个啥,然后去对比语言层面的优劣。
所有的编程语言都不是十全十美的。
如果说你已经进入到互联网开发领域了,那这种。你尚且可以听一听编程语言优劣分析的言论,因为你已经有一定的基础了,那你可以站在第三层去听一听这种语言它有什么优点和缺点,对你来说尚且有一定的意义。
但如果说你还没有进入到互联网开发领域,你连软件的历经平台是个啥你都不知道,那语言层面的对比对你来说毫无意义。
因为你此时所面临的首要问题就是如何入门开发领域,能够进入到这个行业,这才是最关键的。
对于小白来说,你要时刻牢记,你学的是编程,是去解决问题的。其次才是选择合适的编程语言,把你的思维逻辑翻译下来,这个先后顺序一定要搞清楚。
如果你上来就已经假定自己是一名行业内的程序员,你去选择自己合适的工具,那这是非常愚蠢的,因为你都不知道你会遇到什么问题,你甚至连编程是什么你都不知道。
所以我的建议小白,如果你对IT领域确实感兴趣,那如何快速学会编程,先进到这个领域当中去,这才是最关键的。
三、为什么我还是建议小白去学Python?
1.上手开发程序时间快
我见到有人在网上说“Ppython如何鸡肋、辣鸡”,这是非常愚蠢的,无论如无论别人怎么喷Python,最不应该跟风喷Python的就是小白。
因为你想快速把你自己的编程逻辑用某种语言给实现出来,Python绝对是小白的一个首选。
学Python你一个月你就可以立马去写程序了,这对小白来说是非常友好的,那你应该选择一门能够快速上手开发程序,然后再了解了这个编程是什么,最后再去讨论应该选择python这种工具还是换成其他的工具。
与其一上来就选择一门比较重型的语言,然后长期徘徊在入门级别而不能上手去写程序,最终因为你毅力不足而导致而选择放弃,倒不如选一门容易上手的编程语言。
我觉得你自己应该有答案。
2.掌握一门编程语言,其他也容易触类旁通
我想到我大学的一个往事,我大学有一个C语言老师,他在讲课的过程当中比较喜欢这个吹吹皮。然后他打开那个腾讯QQ,他说腾讯QQ里面就有一段他写的程序…并且很自信地说“他说我不客气地讲哈,任何一门语言给我一个星期我都能掌握了。”
那我当时就觉得这个人比较能装,但后来随着我一点儿一点儿去研究技术,我会发现真的是这样,你学会了一种工具,你再去学其他的工具都会有触类旁通的一个效果。
因为要时刻牢记你学的是编程,等到你会了编程以后,换一门语说白了就是把你实现编程的工具由一种换了另外一种,这是非常简单的一件事儿。
当然,深入学习所有的这个语言你都会觉得难,为啥呢?因为语言它是一门工具,深入学习下去就不是在研究工具了,是在寻求如何高效解决问题的办法。
说白了,你此时遇到的问题可能是多种多样的,某一种语言它也不能完全解决你所有的问题,你可能需要多种语言配合的来解决你的问题。
所以我们常说,一名合格的程序员应该至少掌握两门语言。
但问题是这跟小白有什么关系呢?
小白有没有足够的毅力跟能力同时掌握几门语言?这是个因人而异的问题。
如果说你自己根正苗红计算机专业毕业的,你计算机基础知识比较扎实,或者说你对自己的意志力和学习能力足够的自信,那你优先选择什么语言,我觉得都可以进入到互联网开发领域中来。
如果不是,那其实我推荐小白以python这种容易上手的这种工具为基础,快速地掌握编程,然后再横向地去学习其他的工具。
3.考虑职场待遇、竞争和前景
编程小白还需要考虑的一个问题就是竞争压力与个人优势。
以Java为例,与Python进行对比。Java火的时间比较久,因为它是早期的跨平台性的语言,很多公司早期都是用java来进行开发的,然后就导致了java的人才基数越来越多。
很多时候公司选用一种编程语言,它并不只是考虑这门语言本身的一个优劣,它还会考虑这门语言的人才基数有多大。毫无疑问,现在市面上最多的程序员就是java程序员。
那么请问小白,如果想通过类似Java这种老牌语言入行的话,你的职场会面临什么?
第一,你的竞争对手可都是那些有四五年甚至更多年工作经验的人,那你的竞争力何在?
第二,假设你入行了,那你将要面对的是初级岗位的低待遇以及低薪资,而对于类似Python这种新兴语言来说,毫无疑问岗位肯定不如Java要多,因为加了毕竟发展了那么多年,但是Python的岗位量保持持续的一个上涨,那这是一定的。
从python的一个使用量的世界排名你就能看得出来啊,从2017年到现在,连夺4年的年度最受欢迎编程语言排行榜冠军,其实恰恰是因为此时并没有那么多人去掌握python,那这才是我们小白入行的一个绝佳的机会啊。
入行薪资比Java高,这也是摆在明面上,大家可以去各大招聘网站上查得到。
那问一下,谁不想一入行就起点高一点嘛?
那对于小白来说,你不打差异化你又能打什么呢?
那该怎么学Python呢?
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
如果你是准备学习Python或者正在学习,下面这些你应该能用得上:
① Python所有方向的学习路线图,清楚各个方向要学什么东西
② 100多节Python课程视频,涵盖必备基础、爬虫和数据分析
③ 100多个Python实战案例,学习不再是只会理论
④ 华为出品独家Python漫画教程,手机也能学习
⑤历年互联网企业Python面试真题,复习时非常方便
文末有领取方式哦
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、Python课程视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
三、Python实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
四、Python漫画教程
用通俗易懂的漫画,来教你学习Python,让你更容易记住,并且不会枯燥乏味。
五、互联网企业面试真题
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要也可以扫描下方csdn官方二维码,【保证100%免费】