精华内容
下载资源
问答
  • 自学编程

    千次阅读 2019-06-18 08:17:57
    自学编程

    • 学习资源推荐 https://blog.csdn.net/qq_42813491/article/details/90213353

    前言

    在学习编程前,你应该考虑一下市场环境。即便是互联网寒冬,编程能拿到的工资也是排在很多行业的前列。信息时代,科技永远不会停止发展,那对编程人员的需求一直存在。更多时候,编程倚仗的是自学能力,很多坑要去踩踩,很多经验要逐步积累。下面,我会分享一下我学习编程的经历,希望对你有所帮助。

    认知

    接触某个事物前,你应该先去了解它。我的大学专业是软件工程,这个志愿并非我主动填报的,在进入大学前,我对软件工程,对编程,一无所知。甚至,对计算机的理解还仅仅停留在基础操作和打游戏上。

    • 事实证明,这样的我在初次接触编程的时候确实被甩下了。c语言,我一脸懵逼,但班里有人学的很6,指针,链表什么的都玩的很棒棒。

    • 最开始,我觉得编程就是写写代码,一次不会就多敲。甚至有那么一段时间,为了完成作业,记忆力相对好的我试图去背代码。

    • 这并不是什么好方法,代码量一增多,背代码是下下策,能背到绝望。

    • 渐渐的,我意识到,编程的要义是业务逻辑的转化。代码记不住没关系,养成必要的逻辑思维才是关键。

    • 那种感觉就像炒菜,步骤基本固定,至于细节上加多少油,多少盐,完全是个人口味,不影响大局。

    兴趣

    对编程有了初步了解,你应该问问自己,真的喜欢编程吗?首先我不得不承认,对于新手来说,编程确实是一件枯燥而又乏味的事。这意味着选择编程,你会有一个适应期,这个过渡很痛苦。先不要急于给出答案,兴趣分为先天和后天的。

    • 先天兴趣自不必说,那种热爱或许比后天的更加强烈,能够让你保持一颗热衷学习的心。

    • 后天兴趣的组成成分很多。就业前景,个人价值观,某个事,某个人,某一句话,都能成为你念头转变的契机。

    • 我属于后天培养的兴趣,契机是就业前景。大一学了日语,打算以后走日语方向,去日本或者日企,然后就进了学校的对日项目组。待了大半年,结果,一言难尽,只能说完全不是我想要的。这个时候我才意识到,走语言估计行不通了,必须换一条路。

    • 当你知道某个东西能给你带来巨大价值的时候,我想你不管有没有兴趣都会去试一试的。

    • 你可能觉得,编程死活学不会,干脆就不学了。当年我也有这个心态,甚至还一度怀疑自己是不是不适合学编程。其实产生这种心理的本质就是一句话,能力不够。更深刻点,想成功不想努力。

    • 看到别人写程序6的飞起,自己只会跟着书本,视频写,离开外界的东西,自己上手大脑一片空白。于是你开始自卑,开始焦虑,开始怀疑人生。这是一个死循环,会逐步消磨你的学习热情和积极性。

    • 其实完全不必如此,我承认编程有天赋这回事,有的人就是一点就通,有的人就是怎么也不开窍。但你应该相信,这只是时间问题。别人写一个小时,你写十个小时,长此以往,你还能比对方差多少吗?就算对方是大神,这种差距也会明显缩小。编程从来不是跟别人比,是跟自己比。

    • 努力做就对了,等回头看,你已经比当初的自己强了很多。

    入门

    编程界,有个约定俗成的hello world,写出这个,其实不是入门,只能说是简单起步。不同的语言对入门的需求或许有些差异,我理解的入门就是能将零星的知识点串联起来做个简单的小项目。在不超出所学的范围下,想实现什么需求,就能实现什么需求,这才算入门。

    html+css

    • 对于html和css,建议不要单独使用,这两个相辅相成,凑一对。在我看来,能独立用这两个小家伙做一个淘宝或者京东首页,就算是基础入门。仅仅懂一堆标签和大把样式那只能说是了解,没有实际使用是没价值的。

    • 回想一下,在这个阶段,我大概做了七八个网站吧。在我看来,这样的基础东西,不需要刻意去巩固,因为你后续的学习,基本上都会再次用到。而那个时候,你的理解会比之前更为深刻。

    js

    js是一门很神奇的语言,能用js实现的,最后都会用js实现。根据不同需求,js的三个组成部分的使用程度也不一样。相对而言,ECMA和DOM操作用的比BOM操作多一些。

    • 现在前端已经是大前端,js也不再是写写特效那么简单,es6系列高级语法层出不穷,企业招聘同样极为看中js,尤其是原生js。

    • 这里就不要说什么jquery了,那是另一个时代的事。以虚拟dom为设计思想的react,vue的出现,极大程度的冲击着jquery市场份额。

    • 现在我也就在ajax的时候会想到jquery,若是上了框架,还有axios,vue-resource,又没jquery什么事了。

    • 说了这么多,js什么样算是入门呢?独立做个贪吃蛇,推箱子什么的小游戏吧。在游戏中涉及面向对象,原型,js基础操作,算是比较综合的。js入门远远不够,除了面向对象的进阶,es6系列高级语法必学。要是想更进一步,自己造轮子,看源码,甚至手动封装框架,都是必修课。

    node.js

    如果这个时代,你还忽略node,那你必将与这个时代脱轨,不会node的前端不是一个好的后台。对于node的入门,我的建议是独立使用node+express或者koa配合mysql或者mongo系列搭建一个个人博客,社区什么的也行。

    javaSE

    面向对象,字符串,集合,IO这些基础学会之后,可以做一个简单的银行转账系统当做入门测试。GUI强烈建议放弃,大前端的时代,GUI传统样式丑的冒泡泡。

    java WEB

    不管是jsp+servlet还是用框架,建议这个入门深入一些,比如前后台都有的商城,进销存管理系统,自动化办公系统等等。学到这一步,迷你版企业级应用开发都可以试一试。

    php

    php是世界上最好的语言,你想要的功能,它基本都有内置函数。但是,没有手册你基本玩不转,函数实在太多,不同版本迭代还有很多坑去填。当然,它也有独特优势,自行体会吧。对于php入门,我的建议是做一个功能相对全一点的博客放在云服务器上,当成个人作品去展示,可以试着仿照csdn的设计

    • 别的不多说了,具体情况具体分析

    怎么学

    可能大家比较关心这个问题,我的经验告诉我,对于初学者,视频教程是最为友好的方式,有配套源码效果更佳。视频建议看三遍,代码至少三遍。不敲代码想学好编程,醒醒吧,不存在的。

    • 先看一遍视频,了解要做什么,怎么做。

    • 第二遍,仔细看看自己不理解的地方并开始第一遍写代码

    • 第三遍看视频是查漏补缺,对照自己写的代码,找寻问题所在,看懂了写第二遍代码

    • 反复写代码,一直到不依赖视频为止,不要在乎次数,会了才是关键

    有了一定基础后,撸官方文档,菜鸟教程等文档性质的教程,增强读文档的能力。在之后,去看基础代码,csdn,博客园这些。之后就是书籍,有一个系统的认知。到了最后,去挑战一下github,看底层源码。

    时间概念

    首先,不论你家境如何,你都应该清楚,任何学习都是有成本的。如果你有大把时间,那你去网上花几个小时找免费资源,这没什么说的,可以理解,我曾经也会这样。但如果你已经毕业,走向社会,你就应该清楚,你的时间,远远比钱更值钱。

    • 意识到这一点,该开的会员我都会开,该买的资料我一定会买,能打车半小时一定不会做两小时公交,能一小时高铁就不会三小时普通列车。

    • 因为我很清楚,我这是在花钱买时间。充实自己,把更多的时间用在学习上。对于学习的投资,永远是高回报。当然,这取决于你的格局,有些人想不通这个道理,毕竟经历不同,无可厚非。

    • 别再抱怨时间不够,不刷抖音,不追剧,不打游戏,你有大把时间。当然,如果你和我一样是单身狗,时间自由度会加倍。

    价值

    决定就去做,坚持下去,等一段时间再回过头看,曾经站在河对岸的你早已经到了河的另一边。而那条曾经以为无法跨越的鸿沟,现在看来不过如此。你的能力,决定你的价值,加油。

    • 学习资源推荐 https://blog.csdn.net/qq_42813491/article/details/90213353
    展开全文
  • 自学编程的 6 个致命误区

    万次阅读 多人点赞 2020-04-24 09:14:23
    本篇文章来和大家聊聊自学编程中的一些误区——这是我在 B 站上看了羊哥的一期视频后有感而发的文章。因为确实有很多读者也曾私信问过我这些方面的问题,很有代表性,所以我就结合自己的亲身体会来谈一谈,希望对小...

    嗨,小伙伴们大家好,我是沉默王二。本篇文章来和大家聊聊自学编程中的一些误区——这是我在 B 站上看了羊哥的一期视频后有感而发的文章。因为确实有很多读者也曾私信问过我这些方面的问题,很有代表性,所以我就结合自己的亲身体会来谈一谈,希望对小伙伴们有所启发。

    01、追求时髦

    所谓基础不牢,地动山摇啊。可很多小伙伴压根就没注意过这个问题,市面上出什么新鲜的技术就想去尝试,结果把自己学的乱七八糟,心灰意冷。

    别的语言我不懂,就拿 Java 来说吧。时下最火热的技术,有微服务 Spring Boot、有分布式 Spring Cloud,虚拟容器 Docker,流处理框架 Flink 等等等等,但如果你连 JDK、JRE 和 JVM 都搞不清楚的话,那这些技术学起来可想而知有多痛苦。

    我从一开始写作那会就计划着用半年的时间把 Java 基础方面的文章写完,结果呢,写了一年多,发现还有特别多的内容没有覆盖到。

    学习是个漫长的过程,小伙伴们在学习一门语言的初期,一定要从基础开始,不要着急,时髦的东西咱把基础夯实以后再来吃,不然容易撑着哈。

    02、孤军奋战

    透露给大家一个小心得,我有很多知识都是从小伙伴的留言当中学到的。

    我写文章从来不怕自己犯错,因为我有一颗强大的心,经得住批评和嘲讽。金无足赤,人无完人嘛,况且我一直认为自己就是一枚菜鸟,本着这种谦虚谨慎的态度,我想说一句哈,文章中有些知识点写错了,不是我不负责任,是我也在学习,我又不是孔子,传道受业解惑的,纯粹是为了和大家交流而已。

    对吧?如果你没有分享的勇气,只肯自己闷头学习,那么不好意思,你的成长是很有限的。

    这就和打战是一样的道理,要团队配合,不可孤军深入。

    我已经建了 8 个学习交流群了,有些小伙伴进去后一开始嫌人少,不想做元老,想去人多的,可到了人多的群里仍然沉默,一言不发;有的小伙伴呢,不管三七二十一,有问题就是问,这次没人回答,下次还是问。

    这种心态非常值得肯定。为什么这么说呢?群嘛,不可能所有人都在盯着你的问题,也不是所有人都会解答你的问题,问不到答案是很正常的一件事。

    但提问本身是具有重大意义的,因为你会在提问的过程中组织语言,你总得把问题描述清楚啊,不然别人解答也无从下手,对吧,陈述的过程是要花心思的。一旦你的大脑在高速运转,那么答案很可能自己就找到了。

    03、刻意记忆

    有好几个小伙伴曾发私信给我说,“二哥,总感觉学完就忘,可怎么办啊?”

    其实这种困惑真的没有必要,因为人总会忘的,忘是一种常态,我连勾股定理都忘了。还记得张三丰教张无忌太极拳那个桥段吧,忘,忘了,才能学新的。

    我们学习,其实从某种层面上来看,学的是一种学习的能力,而不是死记硬背的知识,对吧?

    在我的概念里,不管你是名校毕业,还是野鸡大学毕业,只要你能在工作中解决问题,那就会受到重视。解决问题就不需要你记忆大量的知识点,记不住了问搜索引擎啊。

    其实,我最讨厌的就是那些炫耀记忆力的,真不如炫耀一下学习力。互联网解决了人类一大难题,就是信息的存储和检索,对吧?

    我上学的年纪,没有手机,没有互联网,查个字只能翻一本厚厚的新华字典,效率极低。甚至为了写作文,背大量的名句典故,虽然现在考生还需要,但我觉得早晚要被取代。

    对于程序员来说,就更没有必要记那么多知识点了,除非——你要面试。说起来这事,我觉得很有必要以后面试的时候,上机联网考试,咱们不扯那些没用的,你要造火箭,咱造就不就完事了。

    多花点心思搞创新,提高学习能力,它不香吗?

    04、怀疑自己

    世界上优秀的人毕竟是少数,大部分都非常平凡。只有意识到这一点,你才能做到不妄自菲薄。

    我时常遇到一些小伙伴,说:“二哥,我学历不好,我出身不好,我在公司好像不受到重视。”针对这些小伙伴,我只能说,心理建设真的非常非常重要。老怀疑自己,你怎么可能变得更强?赶紧把那些自卑扔到垃圾桶,与其卖惨博同情,不如自我超越。

    不是所有人都是学霸,也不是所有人家庭条件都很优渥,作为一个平凡人,我们必须要学会自信,学会扬长避短。

    我就写不了高大上的技术文章,甚至有些文章还会出现一些错误,没关系的,真的,有人爱喷就让人家喷啊,那是人家的自由。

    因为被别人喷就停滞不前,不敢分享,那是弱者的表现,真正的勇士敢于直面别人的口水。我敢说我就很勇敢,有啥好怕的呢?总有人欣赏你的。

    我以前非常喜欢一本书,叫《自卑与超越》,读了很多遍,虽然没有找到超越的秘诀。但不得不说,这本书的书名非常棒,对吧?不要和那些优秀的人比,你需要超越的不是他们,而是从前的自己。我就不信,真的是活一天不如一天?

    可以允许别人超越你,但绝不能允许自己怀疑自己。

    05、收集资源

    好像网络上特别流行一句话,叫做:“收藏从未停止,学习从未开始。”每次看到都觉得特别扎眼,有些人是处于调侃,有些人呢,是真的养成了习惯,见到好的文章,见到长篇大论就赶紧收藏,但从来没有认真从里面学习到一丁点知识。

    哪怕你看 100 字,看 200 字,从中真的学习到一点,然后把它扔到垃圾箱,都比你把它放到收藏夹吃灰,强上一百倍。

    我公众号里不是整理了 500G 的教学视频嘛,然后我就观察啊,有些小伙伴呢,一次性就想把所有的视频全都取走;而有些小伙伴呢,一天过来取一集。我认为,后者要比前者更能学到知识。

    网络上资源真的是已经泛滥了,除了坏的,好的都快。。。。。。你花一辈子都看不完,真的。

    与其收藏,真不如每次看到就学一点,哪怕学一分钟,对吧?

    最近一段时间,我每天到 B 站刷 2 集视频,咱不多刷,然后就地消化,等到真的融会贯通了,再去刷新的。

    这样的好处显而易见,刷一集就吸收一点,长年累月下去,那自然身强体壮啊。

    06、想学最好的编程语言

    每次谈论“谁是最好的编程语言”这个话题,总忍不住把“PHP 是世界上最好的语言”这个梗扔出来。真的,不管是不是梗,“想学最好的编程语言”就是一个伪命题。

    每种语言都有它存在的道理,但也有它的生命周期。我们所能做到的,就是学一门,爱一门,真的把它变成养家糊口的工具。

    对于程序员来说,技术永远都是学不完的,因为时代在进步啊,新鲜的有活力的新语言早晚都要出现。如果你不能从中获利,那么学哪门语言都白搭。

    就目前来说,Java 肯定是就业形势非常好的一门语言。Python、C++、C#、C 等等等等,几乎市面上没有被淘汰的语言都值得去学,不要挑肥拣瘦。

    我记得有一次,有个小伙伴就给我说,“二哥,你这么优秀,能预测一下未来十年里哪门语言最火吗?”

    哎呀,我去,当时我就感觉自己要懵逼。未来十年,计划得可真长远。别说十年,五年内我都预测不了。

    纠结于这个命题的小伙伴,让我想起了“铁饭碗”。偶尔听一些长辈谈论,你家孩子上那个什么什么学校吧,学什么什么专业吧,保准毕业后拿到一份稳定的工作,都什么年代了,还这么向往“铁饭碗”啊。

    语言之间都是相通的,真不假,虽然各自有各自的壁垒,但像我这种对编程没有极致追求的程序员,不也凭借 Java 这门编程语言养活了自己嘛。

    在我这 10 年程序生涯中,我搞过 Ruby,SQL、Flex、ActionScript、JavaScript、PrimeFace,甚至还有一段时间自学过 PHP。无论哪门子编程语言,我敢拍拍胸脯说,我能学会。关键是,挣到了钱,你信不信?

    谈钱多俗,对吧,但你学一门语言不就是为了挣个面包钱吗,只要能帮助我们达到这个目的,就是最好的编程语言。

    COBOL 程序员不是都被抢了吗?

    好了,亲爱的读者朋友,以上就是本文的全部内容了,能看到这里的都是最优秀的程序员,我必须要伸出可爱的大拇指为你点个赞。

    如果觉得文章对你有点帮助,请微信搜索「 沉默王二 」第一时间阅读。本文已收录 GitHub,传送门~ ,里面更有大厂面试完整考点,欢迎 Star。

    我是沉默王二,一枚有颜值却靠才华苟且的程序员。关注即可提升学习效率,别忘了三连啊,点赞、收藏、留言,我不挑,嘻嘻

    展开全文
  • 聊一聊我在 B 站上自学编程的经历吧!

    万次阅读 多人点赞 2021-04-19 11:50:18
    今天在 b 站看视频的时候,看到了一句话众所周知,b 站是用来搞学习的,对于我们学习编程的童鞋来说,b 站有着非常多的学习资源,但是有一些质量并不是很好,看了之后不容易理解,这也是写这一篇文章的原因,为大家...

    众所周知,B 站是一所大学

    今天在 b 站看视频的时候,看到了一句话众所周知,b 站是用来搞学习的,对于我们学习编程的童鞋来说,b 站有着非常多的学习资源,但是有一些质量并不是很好,看了之后不容易理解,这也是写这一篇文章的原因,为大家分

    享一些质量超高的计算机基础的学习视频,往下看就完了。

    图片

    一、计算机网络

    1. 计算机网络微课堂 https://www.bilibili.com/video/BV1c4411d7jb?p=1

    学习计算机网络,我首先推荐的 UP 主湖科大教书匠,他讲的计算机网络十分通俗易懂,重点的地方讲的十分细致,并且还有一些实验,更好的是有考研 408 的难题的讲解,也是非常适合考研党,除了课程内容外还有很多习题讲解视频,特别赞的一点是每天动态里都会更新一道考研题,播放量也非常的多。

    图片

    2. 2019 王道考研 https://www.bilibili.com/video/BV19E411D78Q?p=1

    既然说到了考研,那我就不得不提一下王道考研了,恭喜你发现了宝藏。王道考研的计算机网络视频,播放量非常多,而且老师是一位小姐姐,声音十分动听,声音这么好听的老师给你讲课,妈妈再也不用担心我的学习了呢,总之,这个视频的质量也非常高,弹幕全是对小姐姐的高度评价。(王道考研其他的视频也不错哦,暗示一下:操作系统,数据结构等等)

    图片

    3. 韩立刚老师 计算机网络 https://www.bilibili.com/video/BV1gV411h7r7?p=1

    韩立刚老师所讲的计算机网络视频,内容比较多,但是讲解的通俗易懂,并且老师讲课的经验也十分的丰富。配套的教材是谢希仁老师的计算机网络教材,韩老师的最近的一个视频视频比较新,播放量还比较少,但是他讲的是真的不错,相比于王道考研所讲的计算机网络,韩老师更加细致一些。

    图片

    4. 计算机网络(谢希仁第七版)-方老师 https://www.bilibili.com/video/BV1yE411G7Ma?p=1

    在计算机网络方面,我还想推荐的一位老师就是方老师,也是一位小姐姐老师。她的视频配套的教材也是谢老师的网络教材,在线看的小伙伴也超多,弹幕都是对方老师的评价。

    图片

    二、数据结构与算法

    相信很多小伙伴,学习数据结构、算法的时候,非常的头大,emmm… 俺也一样。

    图片

    1. 【郝斌】-数据结构入门 https://www.bilibili.com/video/BV11s41167h6?p=1

    我个人觉得他讲得非常好,郝斌老师的思路是以初学者的思路来思考的,非常适合小白,你不理解的问题,基本上他都会详细说一下,有的地方他讲的不是非常的全,但是讲的比较深刻,课程的使用的书是严蔚敏的《数据结构》可能比较晦涩难懂,可以去看看《大话数据结构》或者《啊哈!算法》这两本书。

    图片

    2. 数据结构-浙江大学 https://www.bilibili.com/video/BV1JW411i731?p=1

    B站很多小伙伴都管陈越老师叫做陈越姥姥,陈姥姥的课简单易懂,二叉树和链表说的多,但是对于图太少,后面概念解释多程序少,对于新手不友好,并且这门课程到中后半段是另一位老师讲的,何老师。何老师讲解的也是非常的通俗易懂,并且拥有着强者的发型。

    图片

    3. 【C语言描述】《数据结构和算法》(小甲鱼) https://www.bilibili.com/video/BV1jW411K7yg?p=1

    小甲鱼我就不多说了吧,良心 up 主,还不赶紧素质三连,小甲鱼讲课呢,就不像其他大学教授那样了,怎么说呢,语言风趣幽默,不死板,用例子带知识点,在和你扯犊子的过程中解释干货,相比一般的课程,更能听得进去。

    图片

    4. 数据结构与算法基础(青岛大学-王卓) https://www.bilibili.com/video/BV1nJ411V7bd?p=1

    王卓老师基本上把大学数据结构期末考试的重点全部都讲了,内容和 408 高度吻合,也是非常的适合考验人,还有在这里提一下王道考研的数据结构还是很不错的,总之学习数据结构重点还是需要理解,要多做题才行。

    图片

    5.尚硅谷 Java 数据结构与 Java 算法(Java数据结构与算法) https://www.bilibili.com/video/BV1E4411H73v?p=1

    推荐了这么多 C 语言的数据结构,就来一个了 Java 语言的吧。尚硅谷–韩顺平老师的课程,韩老师视频内容全,并且每次课都会带着你写代码,把每一个例子都会实现,这也是张阿姨梦开始的地方。韩老师的口碑我就不多说了,评论弹幕都是对韩老师的“表白”。

    图片

    6. 大雪莱 https://space.bilibili.com/7836741?spm_id_from=333.788.b_765f7570696e666f.1

    给大家推荐一位关于 LeetCode 的大神,闫学灿老师,他的视频不仅会讲力扣的每日一题,还会讲解每一次力扣周赛的题目等等。你看就完了,yyds。

    图片

    三、操作系统

    伙计们,终于到了你们心心念念的操作系统 4 不 4~

    图片

    看了很多网络上的推荐加上我自己在学习的,总共为大家推荐以下这些。

    1. [完结] 2020 南京大学 操作系统:设计与实现 (蒋炎岩) https://www.bilibili.com/video/BV1N741177F5?p=1

    南大的课质量真的硬,蒋炎岩老师讲的是真滴好啊。老师讲课时用的课本是 Remzi 的 Operating Systems: Three Easy Pieces ,老师的每一节视频都比较长,一次肝完贼爽,老师把晦涩的东西讲的也非常的通俗易懂,豁然开朗,很多同学都是慕名而来,看完这个也算上过南大的操作系统啦 哈哈哈。

    图片

    2. 操作系统_清华大学(向勇、陈渝) https://www.bilibili.com/video/BV1js411b7vg?p=1

    目前清华计算机系本科的操作系统课目前都是由这两位老师讲授(向勇、陈渝),网课内容和他们课堂授课内容是一致的,同时配有一套完整的实验,实验内容是从无到有地建立起一个小却五脏俱全的操作系统(ucore),能从头到尾做下来的收获绝对是听课所不能比的,理论课上老师照顾大多数人,娓娓道来。现在有很多同学已经整理出了这门课程的随堂笔记,这门课程强烈推荐!

    图片

    3. 操作系统(哈工大李治军老师) https://www.bilibili.com/video/BV1d4411v7u7?p=1

    整体看了一遍,个人觉得是 b 站上很不错的操作系统课程了(经典课程如 mit6.828 在 b 站上的似乎都没有字幕而且拍摄角度实数刁钻)。这门课的前几讲涉及 OS 启动(老师谜之口糊),需要一点汇编知识,不过遇到不会的直接网上搜即可,大可不必因为汇编而被劝退;之后的内容如多进程、信号量、内存管理等讲得很好,不做赘述。如果对这部分有不解的地方可以网上搜资料或者去看 b 站上新竹清华大学的 OS 课程最后在学这门课前建议对计算机有个整体认识,可以去学习一下经典的 csapp 或者 mit6.004(对应国内的计组,一个偏软件,一个偏硬件)

    图片

    四、计算机组成原理

    1. 计算机组成原理(哈工大刘宏伟) https://www.bilibili.com/video/BV1t4411e7LH?p=1

    刘宏伟老师主讲,他的课不仅适合考研人,也非常适合初学者,初学者也听得懂。建议 1.5 倍速食用。之前有一个一百多万播放量的视频,不知道为啥没了…

    图片

    2. 计算机组成原理 清华大学刘卫东 https://www.bilibili.com/video/BV1c4411w7nd?p=1

    来来来,清华的来了嗷,这门课是 2013 年的,距离 2021 年有点遥远。

    刘卫东老师主讲,质量很高。我非常喜欢他讲话的逻辑和风格,看就完了,贼好。(收藏是点赞的六倍还多,就离谱哈哈哈)

    图片

    五、编译原理

    (点击收藏随即退出,编译原理已了然于胸)

    图片

    1. 编译原理(哈工大) https://www.bilibili.com/video/BV1zW411t7YE?p=1

    陈鄞老师的 PPT 做的非常认真,讲得也很通俗易懂,思路清晰。这个是我目前为止,觉得讲的最直观简洁的了,全程没有一句废话,认真听会有很大的收获,每一句话都要仔细琢磨,并且老师那种温文尔雅的气质,你不认真听课?啊?小伙子。 认真学完真的会收获很多。

    图片

    在最后

    目前呢,在 b 站我就发现了这些不错的视频,有的视频可能不符合大家的口味,如果你有更好的学习资源,还请分享出来哦,过一段时间我会把 b 站上面关于Java 技术栈 的一些优质视频分享给大家。

    如果这篇文章对你有用,欢迎给我的 CSDN 账号点赞 + 关注哦!!!

    我自己肝了六本 PDF,全网传播超过10w+ ,你需要关注一下我的 CSDN 账号,私信回复 cxuan ,领取全部 PDF,这些 PDF 如下

    下载链接 密码:7im6
    在这里插入图片描述

    展开全文
  • 老程序员的自学宝典,建议收藏

    前言

    几乎每一个程序员都会走上那么一段自学的道路,尤其是在校生或进入工作岗位之后,技术的提升基本都靠自学,有的虽然是网上报班学习,但更多时候还是自己在学习,师傅引进门,修行靠个人。

    有的人自学很快,几乎一个多月就能掌握一门技术,而有的人苦苦坚持,最后还是半途而废,很大的原因就在于在学习的时候掉进了一些误区没能走出来。

    今天我们就来讲讲自学编程常见的十大误区,避开这些误区我们定能在自学之路上一往无前!

    呕心沥血所写8000字文章,希望对你们有所帮助。
    在这里插入图片描述

    误区一:不重基础,什么火我就学什么

    我们经常碰到一些爱学习的小伙伴,他们热衷于学习各种潮流技术,而且是跳着过去学的,因为基础知识往往是比较枯燥无味且成就感比较低的,于是就跳跃式性学习,什么技术火就去学习什么技术。

    比如你的java se基础不牢,比如说你连最基本的oop、网络操作系统、基本的数据结构和算法,还有常用的设计模式,最基本的多线程高并发这些概念都没有搞懂,那么你就一味的去追求这些所谓的火的、时髦的技术,你可能会陷入一个迷茫。

    建议:我们不反对学习新技术,但在学习新技术之前,应该先把基础知识牢牢掌握,切勿心急吃热豆腐最后烫嘴,初学编程的小伙伴儿一定要扎扎实实、老老实实地把基础知识弄懂。
    Python建议掌握的计算机基础

    误区二:总纠结于学最好的编程语言

    编程语言本身没有好与坏之分,只有什么语言适合什么样的应用场景。

    我举几个例子,比如说PHP这个语言,它比较适合做外部开发,java它适合做安卓、大数据,或者是我们的java EE,C和C++它比较适合做底层开发,比如说像游戏引擎、系统软件,你再比如说汇编语言适合做驱动开发,比如python它比较适合做人工智能,go语言它是区块链的主力开发语言,适合做也可以适合做外部后台等等。

    所以说从上面我所讲的,你有没有发现就没有最好的编程语言这种说法。

    那么你究竟学什么样的编程语言,主要是要依据你学习的目标和兴趣。你学完这个编程语言你想干什么,然后你再决定我学什么编程语言,用倒推法来看问题你就会发现你的出发点是否正确,同一个目标,路可以有很多条,但如果你一来就开始选定出发点(编程语言),你可以能就错过了一条更省时省力的路线。
    在这里插入图片描述

    忠告大家两点:

    第一点,编程语言它从逻辑语法上其实都是非常相似的。你比如说java、C、C++或者其他编程语言,其实逻辑语法和结构其实都大同小异。你只要学会了或者精通了一门语言,你再去学别的编程语言,可以这么说,触类旁通,比较轻松,而且学习成本会大大降低,但前提是你要先学精通一门。

    第二点,如果你学编程就是为了进入到IT行业或者进入到互联网,就是为了找一份工作。而你们自己目前并不知道学什么语言,如果是这种诉求的话,我建议可以考虑Python,原因特别简单,一是Python容易上手,很多人自学的时候因为入门困难就半途而废了,别想那么多,先把你自己想做的东西用编程思维呈现出来;二是Python的发展趋势很迅猛,已经连续四年在所有编程语言中增长率第一,成为最受欢迎的编程语言,未来很长,我们要有前瞻性地进行学习。

    误区三:喜欢看不喜欢动手,听懂了但不会用

    喜欢看但不喜欢动手,这几乎是绝大多数初学者的通病,我依稀记得我初学编程的时候也是这样,学着学着也学了蛮久的,可一上手代码就不知所措,感觉很难驾驭。

    听懂和能使用是两码事,初学者看书或者听视频,他很容易感觉这个老师讲的我听懂了。但是一旦独立让他去做一个项目或者去完成一道题,他立马就没有思路了,马上蒙圈,结果都不明白了,我不知道大家有没有这种感受。

    有的同学就说“老师我在学的时候我就不知道写什么”,那么我可以建议大家,你就把你看的书或者是教程什么的,你把看过的项目案例给我敲一遍并且理解了,然后你根据你想做什么项目,实现一个什么功能,再具体地去写相应的代码。

    我举个例子,比如你想去这个健身,练一身迷人的肌肉或腹肌,我问大家一个问题,**如果你只是看教练健身的视频,你能否长出健壮的肌肉?**其实你是长不出来的,你光看怎么可能长肌肉呢?你必须要自己去天天这个举哑铃或者是运动,各种运动按照教练的要求,对不对?你的饮食上还要注意,才能长出迷人的肌肉。

    其实我们学编程也是一样的道理,你光看视频是不行的,你听懂了并不代表你会用。
    在这里插入图片描述

    忠告:

    编程它是一门做中学的学科,什么叫做中学?是在做的过程中学会的,而不是说我已经知道了我理解了我再去做,因为我们的计算机学科它是一门工科性质的,特别强调是动手能力。过程出错不要紧,多做几遍,多调试几遍,再不懂就去查资料或者找人问问,一点点地融会贯通。

    纸上得来终觉浅,绝知此事要躬行。出现错误不可怕,出现错误就是你提高的关键点了。

    误区四:学习时很少做笔记或思维导图

    这基本等于说没有将学到的知识转成自己的知识。很多自学者都出现这种情况,学编程时非常努力和勤奋,但是技术提升其实很慢。你让他说今天学了什么东西?他一脸茫然,他只知道我好像看了一些书、看一些视频。
    在这里插入图片描述
    那么为什么会出现这个情况?我给大家分析一下。因为有些小伙伴儿他在学技术的时候只是听,知识就像流水一样,从书本或者视频流出来,然后知识并没有沉淀在他的大脑,整个人就变成了一个知识的一个传输器。

    因此当把这个书本一合上,就跟没有学过这个一样,毫无印象,全部忘了这个我们把它称之为无效学习

    学知识不管你是听视频还是看书,一定要明白一个道理,这些知识不是你的,是作者的,那么你应该怎么办呢?你最好是学完一个知识或者学完一个技术以后,你要用自己的语言把它总结下来,用自己的语言描述一下你是怎么理解这个技术的,这样你才能真正地把这个知识点拿下来,甚至最好能够学完一个知识体系的。

    比如说把java的面向对象学完了,或者把java的多线程学完了,你最好画一个思维导图,把这些知识点精华浓缩一下,把这个知识体系建立在你的大脑里面。

    自己总结和建立知识体系的方法,你学一年,甚至比别人学两年、三年效果都好。
    在这里插入图片描述

    误区五:喜欢死记硬背而不是理解原理

    我们在学编程的时候,的确有很多东西是需要死记硬背的,比如说语法规则和规范,比如说像java变量的命名,还有这个程序的主体结构,包括它语法的一些规范,怎么用才是一个高效的用法,而这些呢你没有办法,你只能把它背一背,因为是规则,这是规定好的。

    但是涉及到功能的实现、算法、设计模式、底层机制、优化效率等等,你就不要死记硬背了,一定要去理解了。

    还有一点就是不要去纠结编程的时候我记不住代码,小伙伴们只需要掌握某一个功能,用什么、用怎样一个方式或者使用代码去实现就可以了,你要知道在哪儿去找这段代码就行。
    在这里插入图片描述

    误区六:出错时选择逃避

    程序出错了,没有积极的去调错,而是逃避,这个现象我相信很多小伙伴,尤其是初学者都遇到过,新手写代码的时候只要看到报错信念就发慌了。

    其实告诉大家,大可不必,因为程序一旦出错了,正是我们提高自己技术的时候。你想一想,对一个初学者他怎么可能写代码一行都不出错呢?这是不可能的,对吧?你比如说一些基本语法出错了,或者是字母大小写写错了,这是很容易出现的。

    其实这些错误它本身并不难,你只要把每一个错误都排除了,其实这个时候你的能力就越来越强。正是因为这些错误你看得多了,你下次就不会犯,慢慢你就感觉到编程其实挺快乐的,以后你就会达到这样一个水平。累了困了不是喝红牛,而是写两段代码放松放松,达到这个水平就很好了。
    在这里插入图片描述
    借用电影《头文字D》里面的一句话“神其实也是人,只是他做了人做不到的事情,所以成为了神。”

    那么什么是编程大神、调试大神?就是因为他们犯了足够多的错误,什么地方会犯错,什么错误他都见过了,别人看起来是错误的东西,在他手里就不会出现,或者出现了解决起来也是轻而易举,这就是大神了。

    你如果犯了一万个错误,你也会成为编程大神。

    误区七:孤军奋战,闭门造车

    在程序员这条路上总有那么一些人喜欢孤军奋战、闭门造车,不愿意,也不敢分享。包括有些已经学过一两年甚至更久的人都会出现这个问题。

    在学习编程的道路上,你一定要给自己营造一个学习的氛围,你需要同伴或者是高手跟你一同成长。反之,如果你脱离了交流,往往会让学习的问题越积越多,最后你可能就放弃了。

    因为问题太多了嘛,你又没解决,那肯定慢慢就放弃了,孤军奋战很容易让新手成为井底之蛙。在迷茫的时候,大家知道有时候一个朋友或者一个高手的一句话、一个插件、一本书或者一个提示,它就会让你有一种豁然开朗的感觉。你会说“诶原来还有这样的一种操作”,那么这就可能让你的学习效率大大提升。
    在这里插入图片描述
    忠告

    初学编程的小友千万不要孤军奋战、闭门造车,要敢于分享,敢于去总结,敢于把自己所学到的东西给别人说出来,说错了又能咋滴?人家又不会顺着网线来打你;说错了别人会不会笑我?其实你只要是第一次犯,别人不会笑话,如果你提出来,别人反而会觉得你很勤奋,反而更愿意帮助你,你下次不要犯就好了。

    误区八:学的很杂,不精通一门语言

    很多小友在网上去搜这个资料,什么技术火,我就学什么技术,不分重点,也没有目标,很容易迷失自己,什么都想学,什么都没学精通,天天疲于奔命学各种技术,最后整个知识体系没有建立起来。

    比如有些小友学java EE,但javaEE的整个体系没有建立起来;比如有些小友学大数据,整个体系也没有建立出来,它只是学了其中某一小块。如果这样的话,你会发现你在真正的工作中,当别人问你精通什么的时候,你答不上来。

    那自然你的薪资肯定上不去,因为你没有没有真正能够吃饭的家伙,没有真正能拿得出手的东西,没有什么东西可以去跟别人竞争,所以说西瓜、芝麻什么都捡,肯定是要吃亏的。
    在这里插入图片描述

    忠告

    不管你是聪明还是迟钝,不管你是勤奋还是懒惰,每个人的时间其实都是有限的,好钢要用在刀刃上,把自己有限的时间高效地利用起来,千万不要什么都去学,没有必要。

    我建议小友们专注于一门技术或者语言,比如说我们就专注于Java或者专注于Python,那都无所谓,你就专注于这一门语言,你精通这一门语言以后,你再去学别的编程语言或者别的技术,你会发现一马平川,学习成本大大降低,触类旁通,学期会会非常的快。

    学习编程技术的时候应该有一个明确的方向和目标。不管你是学java、Python、PHP、.net还是区块链,你要有一个学习目标。

    比如说如果是为了工作,那么我2个月内要学完什么内容,半年后学到什么水平,一年后我要开始找工作,我希望我的薪资是多少,一年到两年后我要达到什么技术水平,三年后我的薪资要达到几万…给自己制定一个清晰的规划,不要自己给自己打马虎眼,你才会看清自己的成长。如果你自己无法制定,那么可以找一些人帮你参考,这都可以。

    误区九:专业不对口,不适合编程?

    这个误区其实我也经常遇到过,很多小友说:“龙叔,我以前是学管理的、学金融的、学建筑的、学化学的,我以后找工作是不是会吃亏呀?或者说我是不是就学不好编程了?”

    我告诉大家,IT行业里面的程序员是非科班出身的人太多太多,各个行业的都有,太多都转行了,而且做得很成功,所以说这跟学专业也没有关系,为什么呢?

    编程本身其实就是一个技能,跟你以前的专业有什么关系呢?没关系,你只要你的逻辑思维正常,然后你比较勤奋,那这个学编程就没问题,就是学一个技能而已,别想得太复杂。
    在这里插入图片描述

    而且我认为有些时候你跨专业进入到这个程序员这个圈,在某些时候还是有优势的。为什么这么说?

    举个例子,公司给了你一个任务,让你去做一个项目是关于财务的一个项目,如果你以前是金融相关专业的,那你理解这个项目的业务逻辑和业务流程肯定要比以前没有学过金融的要快。这就是为什么像用友这样的软件公司每一年都会在什么财经大学里面招一帮学生去做程序员,为什么?做业务逻辑的。

    所以我们写软件或者做项目不单是技术本身,还有业务逻辑、业务流程在里边,所以不用担心这个事儿。如果你确实还担心,那怎么办?也很简单,你大不了就把大学计算机专业的课本内容学一遍嘛,这有什么大不了的,它是ok的。

    误区十:数学不好,不适合编程?

    很多小伙伴没有搞清楚数学和编程之间的关系,他们往往把数学和编程化等号,他们认为我数学好,我编程就学得好,我数学不好那么我编程就学不好。

    如果真的是这样子的话,那我们大学里面就不需要再分两个专业了,一个是数学专业,一个是计算机专业,对吧?数学专业和计算机专业是分开的,这说明这两个学科它肯定是不一样的。

    那么为什么会造成这样一个认识?因为有些小伙伴认为我们在处理这个业务逻辑的时候,可能会去用到数学。这个是不假的,可能会用到一些关于数学的公式、数学的推断,这些可能会用到,但是对于我们绝大部分的程序员来讲,我们是站在应用层面来编程的,换言之,我们是用别人已经学好的一个算法,然后应用到我们的一个业务模块里面去解决这个问题。我们很少让一个程序员,尤其是应用层面的程序员去自己独立开发一个算法、解决一个问题。

    当然话也说回来了,假如你从事的这个岗位是算法工程师或者是高级数据分析师,那么对数学会要求高一些,往往要求这个人既懂计算机又是数学专业的。但对我们绝大部分的程序员来说,数学要求其实没有那么高,所以大家不要去恐惧这个事情。
    在这里插入图片描述

    在这里插入图片描述
    文章到这里就结束了,感谢你的阅读,只是有些话想对读者们说说。

    我退休后一直在学习如何写文章,说实在的,每次在后台看到一些读者的回应都觉得很欣慰,对于自媒体我是个刚入门的人,还是个迟钝的大叔…为了感谢读者们,我想把我收藏的一些编程干货贡献给大家,回馈每一个读者,希望能帮到你们。

    干货主要有:

     2000多本Python电子书(主流和经典的书籍应该都有了)

     Python标准库资料(最全中文版)

     项目源码(四五十个有趣且经典的练手项目及源码)

     Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

    ⑤Python学习路线图(可以弄清楚Python的所有方向和技术)
    .

    【如果你用得到的话可以自助拿走,关注我/查看我的个人简介你就能看到】
    .
    在这里插入图片描述

    展开全文
  • 自学编程需要注意什么?

    千次阅读 多人点赞 2017-12-20 13:43:35
    前几天在知乎上看到这么一个问题,一位在读学生,自己非常想自学编程,但是很怕走一些弯路,于是提问「自学编程需要注意什么?」,我看了一圈回答,看起来都不是自学过来的,很多回答抓不到重点。我的读者都知道,我...
  • 如何自学编程

    2018-10-22 20:17:16
    如何自学编程,大牛告诉你,过去的路他是怎么走的,之前的坑他是怎么跳过去的,特别适合转业过来的小白。
  • 自学编程的一些感慨

    千次阅读 多人点赞 2019-12-31 21:26:04
    文章目录自学编程的一些感慨看书经常逛一些技术社区看视频学习网站养成经常做笔记的习惯为什么要写博客呢?第三方博客平台个人博客搭建(免费)多逛技术公众号其实你真正缺少的是——坚持 自学编程的一些感慨    ...
  • 今天分享一波适用于编程开发学习的自学网站,主要涉及编程学习和练手、提问交流、计算机公开课、在线刷题、以及问题搜索等几个方面,希望能有帮助。 C语言网 该网站有很多C语言相关的教程、资源、博客和练手习题...
  • 自学编程/如何自学编程//自学C语言/如何自学C语言//自学java/如何自学java? 本人从事指导自学行业,多年来成功指导数百名学生自学成功,其中包括从初一到大学乃至非计算机专业的社会人士,总结出一套适用于学习...
  • 自学编程教程大全

    万次阅读 热门讨论 2019-05-01 00:07:09
    编程教程自学编程网(zxbcw.cn)提供了最全的编程技术基础教程, HTML、CSS、Javascript、Python,Java,Ruby,C,PHP , MySQL...
  • 十年自学编程成才(编程小白必看)

    千次阅读 多人点赞 2021-06-11 17:36:32
    十年自学编程成才2.1 为什么每个人都是匆匆忙忙的?2.2 十年时间学习编程(刻意练习)2.3 程序员成功之路3. 扬帆起航 1. 前言   我是herosunly,从985院校硕士毕业,现担任算法研究员一职。CSDN博客专家,2020年...
  • 程序员免费自学编程的8大网站!

    万次阅读 多人点赞 2017-11-23 00:01:33
    很多人包括一些企业家,和市场营销人员都认为学习编程对一个人走向成功十分有帮助。在过去的一年里,我一直在学习编程。它有助我成为一个更好的创业者,我甚至可以提供一些帮助,当我的团队需要解决一些bug的时候。 ...
  • 零基础自学编程的动力是什么?在开启学习编程之路的时候必须搞清楚自己为什么要学编程?是因为工资高?还是对编程有浓厚的兴趣?还有自己有一定的编程基础想要继续提升自己? 其实对于这个问题需要具体分析,如果是单纯...
  • 随着互联网日趋迅猛,编程已经在我们生活当中无处不在了。众所周知,程序员的工资都很不错,于是越来越多的人,都想加入到编程的行业中来。...但其实自学编程不是那么难,只要是逻辑思维或者理科比较好的还行的...
  • 自学编程要点

    2021-02-09 10:59:25
    编程是编定程序的中文简称,就是让计算机代为解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。... 该怎么学呢,今天在这里谈论自学编程
  • Python自学编程开发路线图免费赠送给大家,希望对大家有帮助。
  • 我的读者都知道,我是非科班 0 基础自学过来的,我很清楚一个人自学编程有哪些误区,有哪些需要注意的地方,以及哪些可以提升效率的地方,所以,我从我的自学经历给一些自学编程的后来者总结了一些建议,希望给正在...
  • 自学编程难吗?如何学?

    万次阅读 多人点赞 2018-11-04 16:00:50
    自学编程2年来,加过n多群,泡过n多论坛,接触过心怀激情的编程新人,遇到过沉着冷静的技术大牛……编程,吸引了一批又一批的热血青年,或许是为了理想,或许是心中的爱好,不断有新人的加入,也不断有人从编程中...
  • 随着互联网日趋迅猛,编程已经在我们生活当中无处不在了。众所周知,程序员的工资都很不错,于是越来越多的人,都想加入到编程的行业中来。...但其实自学编程不是那么难,只要是逻辑思维或者理科比较好的还行的...
  • 自学编程,如何寻找资源? 没有目录,全是干货 今天分享的将是非常干的干货! 我们一直在讲自学编程,那么自学编程有什么不一样的地方吗?在我看来,那就是如果你是选择自学的话,那么就意味着很多事情你得一个人...
  • 自学编程学习计划

    2020-09-26 15:33:41
    由于本科学习的编程语言不够深入,所以刚上研一的我需要自学编程,加强自己的动手能力。 首先要明确自己的目标,我打算在一个月到两个月内学好C语言基础,因为它是学习其他语言重要的基础,一定要打好基础。其次再...
  • 零基础如何自学编程

    万次阅读 多人点赞 2019-08-19 17:16:46
    【CSDN 编者按】很多想转行的朋友会问:零基础我该如何自学编程?作者作为一名文科生,零基础转行为网易工程师,在本文中作者分享了自己的学习方法,希望对你有所启发。 很多工作一两年的朋友经常会感到迷茫,尤其...
  • 随着互联网日趋迅猛,编程已经在我们生活当中无处不在了。众所周知,程序员的工资都很不错,于是越来越多的人,都想加入到编程的行业中来。...但其实自学编程不是那么难,只要是逻辑思维或者理科比较好的还行的...
  • 自学编程的致命误区

    2020-03-10 10:26:44
    自学编程不容易,过来人很有必要跟大家聊聊自学编程过程中的几大致命误区和常见问题,改掉这些毛病你会发现一切都豁然开朗了,我们一起共勉。 网址:https://www.bilibili.com/video/av76463909?from=search&seid...
  • 如何零基础自学编程

    千次阅读 多人点赞 2018-10-30 00:12:01
    如何零基础自学编程简介1.计算机基础2.java语言必修课总结 简介 楼主普通本科学校渣硕,出于对编程的兴趣自学了编程并且转行。写这篇博客是因为从转行开始到现在已经有很多朋友在咨询我如何自学编程,如何才能找到...
  • 零基础程序员如何自学编程

    千次阅读 2020-02-04 15:37:50
    自学编程的过程中,一部分程序员遇到冰冷的英语字母,枯燥的编程教程,果断选择了放弃。 但其实自学编程不是那么难,只要是理工科生、逻辑思维还行的小伙伴,编程入门完全可以。 下面w3cschool给程序员小伙伴们分享...
  • 如何自学编程

    2018-06-13 05:00:36
    这篇文章我将以我自学编程的经历、自己遇到的坑、如何解决问题等方面,给初学者朋友们分享自己的经验,希望对正在自学编程的你有帮助。如果哪里说的不对,也望得到您的批评指正! 1.为什么要学习编程? (1)因为爱好...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,087
精华内容 6,834
关键字:

自学编程