知识屋:更实用的电脑技术知识网站
所在位置:首页 > 科技

大一计算机系准新生先自学 C 语言还是 Java ?

发表时间:2022-03-25来源:网络

艾玛,字节跳动的阿秀学长看到如今的学弟学妹们在大一就会考虑的这么远了,真的感慨一代更比一代强啊

我记的我在大一的时候只顾着玩,浪费了不少学习时间。

这么说吧,作为一个学习了七八年(本科四年 + 研究生三年)计算机,并且如今也在字节跳动这种比较知名的互联网公司工作的学长看来,如果你的导师或者学长学姐在你大一时就推荐你去学Java或者Python,实在是有点害你们了。

为什么这么说呢?

在推荐你学习哪门语言之前,先跟学弟学妹们科普一下:C/C++、Java、Python这三门语言学完之后能从事什么岗位,也就是你会做些什么再说吧。

PS:码字不易啊,如果大家觉得有帮助的话,记得双击屏幕帮@阿秀学长点个赞呀!你的一个赞就能帮助到更多的人!!

PS:码字不易啊,如果大家觉得有帮助的话,记得双击屏幕帮@阿秀学长点个赞呀!你的一个赞就能帮助到更多的人!!

对了,不管你是要学什么语言,算法能力很重要,前段时间发现一本BAT大厂必备!支持Java、C++、Go三种语言版本!谷歌大佬亲自总结的Leetcode刷题笔记~

其实很多人都有这些困扰,不止大一甚至大二大三都有的,比如下面这位小学弟,今天就一起回答了吧。

先说Python

Python作为新兴的一门编程语言,这几年也受到很多学弟学妹的喜欢。

比如用它去爬个数据、做做数据可视化、处理处理数据,确实挺好使的。

Python也可以用来做后端开发,比如它的Django框架,只不过招Python做后端开发的比较少。

Python还可以用来做爬虫,我以前也玩过一年多的爬虫,Python在搜集网络公开数据的时候还是挺好用的。

除此之外,还可以做一些数据分析以及数据挖掘这些岗位。

相信大家都能看到培训班满天飞的人工智能、Python爬虫的广告。。。

各种宣传语层出不穷,甚至有的培训班直接打出了“人工智能就是Python”这种标语,周志华和吴恩达老师看到了估计想吐血、、、

这些培训广告是不是让你心动了?想报班去学了?

先别急,我先给你浇盆凉水

这些培训班只告诉了你,Python容易好学,但没告诉你数据分析和数据挖掘甚至是算法工程师门槛有多高吧?

没有一个好的学历(比如985/211这种) + 一些不错的竞赛奖牌(比如国内的阿里天池或者Kaggle比赛等),小白/非科班/转行去搞数据分析、数据挖掘、甚至是算法工程师,基本可以说是飞蛾扑火了。

注意:这里的算法不是数据结构与算法的那个算法,数据结构里的算法是二分查找、遍历等,算法工程师主要是计算机视觉工程师(也叫CV工程师)、自然语言处理工程师(也叫NLP工程师)、推荐算法工程师。

计算机这行看技术是不错,但门槛你都到不了就没必要说技术了。

就比如岗位招聘中明确要求大专及其本科以上,你如果高中毕业去应聘,我觉得可能就直接被刷下来了。

算法工程师确实高薪,可以说是校招社招岗位中薪资最高的一档了。

我记的去年便利蜂招聘的CV工程师薪资基本都是38K/月,

但门槛也是真的高啊啊啊啊。

因此不建议一般人去学Python做算法。

再说Java

你看各种培训机构,Java培训广告满天飞。

可以说我们现在能够尽情在互联网各种冲浪,Java这门语言可以说是居功至伟!!!

就因为它能干的活实在是太多了!!!

它可以做网站,可以搞Android客户端,还有就是做一些软件开发,甚至现在很火的大数据开发也可以用Java来做。

学了Java,能干的活确实很多,这点你不得不承认。

最后说一下C++

这门语言主要是用来做一些底层开发以及一些对于性能要求比较高的业务或者场景下使用,比如要求响应速度更快场景等。

C++在找工作的过程中,能够投递的岗位主要有 Linux/C++后台开发、嵌入式开发、游戏研发、服务器开发、编译器研发等。

它能干的活其实不少,很多人都在担心学了C++找不到工作。。。说实话,还没到那个地步,虽然比不上Java岗位多,但也绝对不少的。

那到底是学C语言还是Java呢?

在大一刚开始的时候,我推荐去学C语言,C语言可以说是一门基石语言。

不管你以后要学习哪种语言,学好C语言能帮助你走得更稳更顺!

本科时就应该多看一些经典书籍,并且最好用一定的学习方法去看书学习。

下面这些才是本科生应该多看的经典书籍!

那么该怎么学习呢?

跟大家分享一下阿秀学长的学习方法,希望能对学弟学妹们有所帮助!

很多人不知道该如何学习或者看书,其实学习和看书这种事情,每个人都不一样,阿秀在这里简单分享一下自己的几个学习方法,希望能对大家有所帮助!

1、看视频

看视频个人所花费的精力会少于读书,因为你所获取的知识都是讲课老师消化好又传授给你的,你只需要被动接受即可。

一个好的老师会让你觉得他所讲的东西容易理解与和掌握。

但是视频的广度和深度是不如书籍的,而且因为老师语速和自身看视频时的注意力等问题,与看书相比,看视频的效率要低得多。

看视频适合于快速入门和那些自学能力不是很好的同学。

2、看书

- 建议多看纸质书,而不是PDF电子版,必要的投资是必要的,而且纸质书能够让人安静下来思考,也可以方便做笔记,看PDF电子书鼠标滑着滑着很容易就走神了,个人感觉没有纸质书效果好。

- 学会善用目录。有时候,看过目录后就大概知道这章或者这小节讲的是什么了,建议在看一本书的时候先看一遍目录,挑选出自己不懂得或者感兴趣的章节来看,而将已看过的或者暂时不需要的放到后期再去看。

- 学会将知识串联起来,大脑中形成自己的知识体系。

经典书籍是挺多,但是其中有很多知识点是一样的,比如你详细了解计算机网络后,游双老师的那本《Linxu高性能服务端编程》中的前四五章你大概略过即可,就不再需要细看了。知识是有相关性和相通性的,有了前面的沉淀后期自然就好很多了。

- 学会取舍。每个人的一天都只有24小时,要学会取舍,先看对自己最重要的,比如在秋招时期,那本《高性能MySQL》那本书有七八百页,认真看完黄花菜也凉一半了,这个时候就应该先看面试过程中考察最多的索引与优化章节,而将其余章节暂时搁置一边,日后再说…

阿秀在学习的过程中,经常需要找一些免费的电子书来看,平时一般是用到什么书就去网上找。然后放在一个文件夹里。

前段时间一看,震惊!好家伙,已经将近1000本了!!!

3、看博客与论坛

有很多大佬都是很乐于分享的,会将自己对于某个问题的看法发表在一些博客或者论坛上。

博客的限制就在于一篇博客上分享的知识有限,所以这种学习方式比较适合你有了一定的基础后,再开始看别人的博客。

千万不要在自己还是个小白的时候就贸贸然看别人写的博客。

当我们对于一门科目或者知识有了整体认识后,剩下要做的就是查漏补缺了。

对于书中不懂的细节问题进行逐个攻破,这往往需要我们自身对该问题就有一定的认识,自己手动的去提取某个问题,然后在各个博客上寻找答案。

还有一点需要注意的就是不要偏听偏信某一个博客或者论坛,不同的人对于同一个的问题有着不同的见解和认知,毕竟一千个读者就有一千个哈姆雷特。

作为求知者的我们要尽可能多看几个博客、多看几个人对于同一个问题的看法和分析,然后将这些看法和分析进行汇总整理,你可以做笔记或者像他们一样写博客,最终形成自己的认知。

4、看官方文档或者源码

这种方式适合有一定水平的同学,比如Java中各种框架都是有官方文档的,对于学习能力很强的同学来说有的就是直接生撸,简单粗暴,过程很辛苦但是如果能够成功撸出来,收获会很大的。

在学习一些知名项目的时候,也可以直接看人家的源码,一般来说正规一点的开源项目都是有代码注释的,不过不少都是英文注释,需要一定的英文水平才能驾驭。

最开始你在学的时候可能会觉得很难,看书可能很慢,但是请你坚持下来,千万坚持下来,咬着牙坚持下来。

过一段时间,等你有了前面的基础,后面就会感觉舒服多了,速度就会慢慢快起来了。

慢慢学、慢慢看,慢慢的就会有收获了,千万要坚持下去鸭。

找工作

数据结构与算法

学习不是一朝一夕就能速成的

友情提示,双击屏幕会有意想不到的效果哦,码字不易,求点赞,笔芯

如果我的上述回答对你有所帮助的话,可以帮@阿秀学长点个赞吗,感谢可爱的你啦!

收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜