你好呀,我是沉默王二,一枚沉默但有趣又帅气的程序员(你听,耳边是不是响起了装逼的声音)。今天我来掏心掏肺地聊聊学好编程的 4 个秘诀,应该会对你产生一些微妙而又积极的影响。

闭上眼睛转个圈,想一下你身边那些人,是不是总有那么几个,能够脱颖而出,好像不管他们做什么事情,都能够取得不错的成绩。

反正我身边就有这么一些人,他们学习学的好,是老师的骄傲,是同学的榜样;朋友处的不错,大家都乐于和他交往;工作上表现突出,不怕事,能抗事,团队中处于核心地位,薪资待遇也高一筹。

认真地想一想,你就会发现,他们在做事情的时候是有方式可循的。

这里多说两句哈。上学的时候,我有一双善于发现美的眼睛,但焦点是自己,所以很多同学都说我很自恋,同时呢,我还特别乐意挑别人的毛病。

最近一些年,我这双眼睛虽然近视度数增加了,但仍然很善于发现美,并且焦点发生了变化,变成了身边的人,无论他做的是什么职业,我总想从他身上学到一些什么。

这种转变,对于我的成长来说,我认为非常重要。你是不是也心有灵犀,这么觉得呢?好了,来看看做好事情都有哪些秘诀(可能算不上)吧。

第一,修炼内功

大家应该都挺喜欢看武侠小说的吧,尤其是金庸的作品,男主都特别注重内功的修炼。萧峰、郭靖、杨过、张无忌等等等等,内功都是独领风骚的,能与他们匹敌的寥寥无几。

程序员是这个时代的弄潮儿,要想站得住,不被大浪掀翻,内功自然要浑厚。直白点说,就是,只会 CURD 是很容易被淘汰出局的。

对于初学者来说,一门编程语言,一种工具,一个框架,先会用是最迫切的需求。一上来就去看源码,很容易就劝退了。

等会用了之后,用多了之后,就得深入,知道为什么要这样用,能不能按照其他的方式用,这背后的原理又是什么,都得逐渐搞清楚,否则就只能停滞不前,无法更进一步。

就比如说,我们学 Java,上来就去搞多线程并发、Java 虚拟机,我敢保证,学霸都不一定能扛得住。

正确的学习方法是什么呢?

简单了解一些 Java 的历史背景,然后安装 JDK,安装 IDE,写个 Hello World 感受一下编程语言的魅力。再然后学习数据类型、运算符、流程控制语句、访问权限控制、对象和类、接口与抽象类、字符串、异常处理,接着是集合、泛型、枚举、IO,最后才是多线程并发、Java 虚拟机、性能优化。

就这样,循序渐进,一步一个脚印,等到这些都会用了,编程经验也提高了,再去深入地研究源码,了解设计模式、计算机基础知识、计算机网络知识、数据结构与算法等等,就会游刃有余。

算法研究的目的是为了更有效的处理数据,提高数据运算的效率,数据运算是定义在数据结构上的,各大公司的笔试基本都考这个。如果你想拿到更多的 offer,拿到更好的 offer,LeetCode 上的题要能刷个一百到三百道,有时间有精力的话,最好参加一下 ACM 竞赛,在找工作的时候会非常有优势

算法薄弱的同学,或者想要提高的同学,可以点击链接看我另外一篇文章!

第二,持续改进

“伟大的牛逼之前都是傻逼式的坚持”,这句话听起来虽然有点糙,但理不糙啊。每个人都知道改进,但并不是每个人都能坚持下去。

我有个大学同学,做淘宝客的,一开始没有摸到门路,就很难,坚持了一年,收益甚微。有一天,他不知道哪根筋“错”了,在淘宝上花了几百块钱做了一个网站,界面很丑陋,但 SEO 做得很不错,慢慢就有人通过百度搜索的关键字找到他。

随着时间的推移,找他的人越来越多,钱自然就赚到了。于是,他成立了一个工作室,很多大学同学都到他那干过,但很多同学干了三五个月后,就坚持不下去,不想干了。

他呢,一直坚持着做,虽然有起有伏,但在郑州买了一套大四室的房子,又买一辆不算差的车。结婚的时候,我去过他老家,条件不是一般的差,这让我更佩服他了。

人,在天赋上,在出身上,是有差别的,不要明目张胆地忽视这两点。但是,能够有所作为的人,你会在他们身上发现一个共同点,就是“持续改进”。

拿写作这件事来说,我有天赋吗?如果有人说我有,我是拒绝承认的。但如果有人说我是一个懂得改变,懂得坚持的人,那我只好承认,他是懂我的。

一开始,我只在 CSDN 上写,后来我同步到各大博客平台,这就是改变。一开始,我只在知乎上同步文章,没有回答问题,后来我发现,回答问题的访问量远超文章,这是知乎的机制决定的,我改变了。一开始,我不会玩 GitHub,最近一段时间我迷上了 GitHub,这也是改变。

这些改变,都是积极的,并且我还会一如既往地坚持下去,所以我才敢笃定,“明天会更好”。

第三,不断叠加

为什么我一直推荐大家去写博客,并不是因为我尝到了甜头,而是因为写博客本身,最直观的一点就是,博客的浏览量会“不断叠加”,更深层次的是,写博客带来的影响力会“不断叠加”。

再没有其他的事情,比写博客更容易上手,更能带来不断叠加的效应了。

很多人会说,我不知道写什么啊?

学习笔记就可以啊,读书感悟就可以啊,解决 bug 的方案就可以啊。

还有人会说,我写了,没有访问量啊?

个位数的访问量总有吧!一开始,除非天赋异禀,大多数人的访问量都不会特别高,我也是从个位数起步的。

也许还有人说,我写了,有访问量,但遇到瓶颈了。

瓶颈几乎是每个人都会遇到的,“几乎”甚至可以去掉。遇到瓶颈的时候,有人放弃了,一切化为乌有;有人坚持着,并且寻求改变,也许会失败,也许会踏步不前,但更多的是收获,蓄能,为下一次的起飞做好准备。

第四,保持耐心

我们当前所处的时代,节奏非常快,快到有个 APP 就叫快手。但殊不知,有些事情,慢一点更好。

昨天,我和一个朋友聊天,他说最近接到一个项目,费用大概 9 万多,工期 35 个工作日。还让我看了一下需求文档,说差不多都是增删改查,应该能完工。

看完需求后,我只能说,我这个朋友真的是盲目乐观。但这个时代就是这样,甲方认为所有的项目都很简单,不外乎增删改查,找个开源项目在上面改一改,就能完事,能需要多长时间?

你要是说需要一年半载,甲方就会说,“到那时候,花都谢了。”

足球场上,一个教练一年出不了成绩,换,甚至半年出不了成绩,换。球迷没有耐心,俱乐部高层也没有耐心。

电竞比赛,一场游戏如果超过一个小时,观众就坐不住了,制作方也坐不住,于是比赛时长越来越短,你就会发现,一些酱油位的英雄在一场比赛里穷到只能穿一双草鞋。

在这样的时代背景下,我们其实更应该保持耐心,多给自己一点时间。

之前有个读者私信给我说,自己是转行学编程的,很辛苦,花了很多时间,但似乎证明自己并不适合学编程。我就问他,你学多长时间了,他说三个多月了。

唉呀妈呀,三个多月真的是一个很短的时间,学编程并不是一件轻而易举的事情,是需要时间的。我已经有十多年的编程经验了,但很多时候,我还是觉得自己只是一个刚入门的菜鸟(请允许我谦虚会),还有太多太多的知识等着我去学习。

遇到挫折的时候,能否给自己一点耐心,其实是一种不可多得的能力。表面上的光鲜亮丽,背后都是辛勤的付出,时间的沉淀。

像算法题,一开始刷起来,任何人都会感到很痛苦,关键是你得坚持,保持耐心,每天刷一道两道,不要今天刷 10 道,明天刷 0 道,可能坚持不了一周时间你就放弃了。保持节奏,不要打乱自己。时间就是最好的朋友。

分享一些我之前刷 LeetCode 的心得,我膨胀到要飘起来了!

怎样保持耐心呢?有两个关键点,其一就是降低预期,不要把自己架在一个很高的位置,让自己上下为难;其二就是全力以赴,做到问心无愧。

最后,上个图,一图胜千言。

学好编程的 4 个秘诀相关推荐

  1. 《孙鑫老师谈如何学好编程》摘要

    <孙鑫老师谈如何学好编程>摘要 1找一本好书 适合你的水平 Amazon排行 Java编程思想 深入浅出MFC 并不太适合初学者 看不懂会打击自信心 把自己的基础告诉别人 去书店实际看一些 ...

  2. 想学好编程,别背代码!

    分享我编程 "不忘" 的十几种方法 大家好,我是鱼皮. 最近私信收到最多的问题就是:我学编程的时候记不住代码,老忘怎么办? 比如这位小伙伴,学编程一个月了,问我咋背代码: 其实,我 ...

  3. 不是计算机专业及其相关专业,对软件编程一窍不通,能学好编程吗?

    最近很多朋友在知乎上问我这样一个问题: 我不是计算机专业以及软件工程专业,对软件编程一窍不通,我能学好编程,顺利进入IT行业吗? 其实,这个问题是很多想转行的朋友都很关注的问题,所以,我借助这篇文章和 ...

  4. 大学生学习编程很难吗?怎么样才能学好编程?

    有很多的人是非常的想知道,学编程难吗?编程入门先学什么?往下看希望对你们有起到帮助. 一:学编程难吗? 编程说难不难,说难不难,说简单不简单,学习之前你首先要知道你的学习目标,知道要学来干嘛. 要从事 ...

  5. 如何学好编程%2B(精挑细选编程教程,帮助现在在校学生学好编程,让你门找到编程的方向)四个方法总有一个学好编程的方法适合你%2529

    诶呀 整理的眼睛都疼了 可是还是整理的有点乱  希望能够带给你们很大的帮助哟要珍惜我的劳动成果.谢谢咯 方法(一) 编了这么久的程序,一直想找机会总结下其中的心得和方法,但回想我这段编程道路,又很难说 ...

  6. C语言初学者需要知道的十句话,听说不知道的人都没学好编程

    其实这十句话不仅仅是对C语言初学者,甚至于对于编程初学者都是这样,如果你说你没有注意这十个点的话,那么我敢说,你一定不能成为一名优秀的程序员!先别忙着反驳笔者,不信我们往下看看是那十句话: 一.一定要 ...

  7. 英语基础太差,到底能不能学好编程?

    随着互联网的高速发展,对编程人员的需求量也日益增多,越来越多的人都想转行学编程,可又有点担心,英语基础不好,能学好编程吗? 那么英语到底影不影响对编程的学习呢?有影响,现在编程语言都是以英语为基础,说 ...

  8. 数学不好 学软件测试能学会吗,英语差、数学烂,我还能学好编程吗?

    原标题:英语差.数学烂,我还能学好编程吗? 据小编近期的观察,发现很多小伙伴想学编程,却又犹豫不决,比如: "老师老师,我成绩不好,能学好编程吗?" "我数学不好,逻辑思 ...

  9. 数学英语不好能学php吗,英语和数学基础不好,还能学好编程吗?

    计算机最早是由美国人发明的,以至于现在所有的计算机程序的编码还是由英语组成.同时,编程还需要具有良好的逻辑思维能力,这就需要我们将数学学好.但是有的人会问:"我英语和数学成绩并不好,还能学好 ...

最新文章

  1. linux基础概念和个人笔记总结(6)
  2. Linux下rgmii接口,zynq7010 petalinux 2019.2 RGMII via EMIO 连接问题
  3. C# List Sort
  4. 最新电子皮肤的触觉有多灵?连空气流动都能感受到
  5. 一个权限的设置,你会混淆么
  6. Linux运维之网络运维
  7. java map 最大值_MAP集合选出最大值
  8. php连接mysql开发环境_Windows下安装PHP开发环境
  9. MYSQL-交换表中2行2字段的值
  10. 开发不能上外网怎么查资料_中考生不能复读,近一半上不了高中,怎么办?
  11. 操作系统(13)-操作系统中的死锁及其预防、避免、检测与解除
  12. zookeeper 大量连接断开重连原因排查
  13. linux 驱动学习
  14. Arduino 用Proteus仿真基础知识和实例
  15. 湖南师范大学2018年大学生程序设计竞赛新生赛小名的回答
  16. 下载firefox国际版
  17. 织梦联动枚举字段添加一级分类如果超过132个自动变成二级解决方法
  18. java实现微信退款
  19. C++ GUI Programming with Qt4 Second Edition 之 附录A.3 Mac系统Qt的安装
  20. 智商和情商哪个更重要

热门文章

  1. 关于Mybatis拦截器的说明与使用
  2. Performance Counter的使用
  3. asp.net 如何实现大文件断点上传功能?
  4. 【转】一个游戏程序员的学习资料
  5. PIVOT 和 UNPIVOT实例使用
  6. 水仙花数 matlab,matlab向量运算解决水仙花数问题
  7. 概率神经网络 PNN
  8. ABP的一些特性 (Attribute)
  9. 【DL】——Warmup学习率调整策略
  10. Linux du(disk usage)命令详解