前言

前几天,在和公司同事吃饭的时候,谈到了这个话题。他说,带的一个应届生员工,感觉不太聪明的亚子。我问他,为什么这么说。他说,不懂如何解决新问题,只会拿死代码。让他按客户需求做一个网页,他在码自己背过的代码,甚至在翻书!项目一拖再拖~

在详谈中了解到,不是这个人不聪明,而是他的代码不太聪明。说到底就是逻辑语感不够,死记硬背来凑!

这是一个老生常谈的问题!我也是一个做过“背代码”这件事情的人,我为什么会背代码,因为我是文科出身——“背诵是理解的基础”。没错,我拿来套用了!在新手村摸爬滚打了几个月,发现死记硬背根本不顶用啊,总也记不住。文理科底层的逻辑完全不一样,编程玩得就是逻辑思维。

当然,这里也不是说学编程什么都不用记,有些东西还是要背的,比如一些经典的常用的源代码还是需要硬性背下,就如同背诵经典的古诗词一样。你读的书多了,文章自然就脱口而出,代码量的积累也是这样,当你积累了足够的代码,在写代码时才能足够的流畅,思路也会清晰很多。

说了这么多,说到底编程就是一个解决问题的过程!硬背代码只会让你怀疑人生!!

那么如何解决初学时,记不住代码的问题呢?结合我自己的经验给大家提出几点方法建议,借鉴一下!(声明:学习方法因人而异,不适合生搬硬套!

这些记忆的方法一定要建立在理清它逻辑的基础之上,不要死背硬记!


一、记忆大法

1、只记关键点。

学习编程,我们不需要把所有的代码都记住,我们只需要选择性的记住关键点。记住有什么,我能做什么,而不是其中的细节。

举个例子,让你设计一个电梯调度系统。你只需要听说过有个东西叫 电梯调度算法 ,以及它能实现电梯的有序调度就行了,而并不需要记住怎么写代码。等到要做的时候,去搜该算法具体的实现就行了。

没有人能够记住所有的代码,我们要学会寻找所需的代码。记住老程序员经常说的终极工具“Google”和 “度娘”!几年前的我:会用goole,但没完全会用。后来才发现:重要的不是搜索内容,而是搜索的方式,要学会善用搜索引擎。其实,你想要网络上基本都有答案,就看你如何找到了!不要再花时间在已经造好的轮子上。

2、场景记忆法

这个就是要求你多写代码,多去实现一些小项目。这个好处就在于,你可能会忘记具体的代码,一时间想不起来。但是,你会感觉自己好像写过这个代码。这时,你的大脑就会飞速旋转,把时间调到你写这个代码的那天,这时你就会想起你那天写的代码了。

刚开始的时候,我也是看很多的视频,学技术,但是不去实现,最后都是纸上谈兵。后来我就另寻他法,在实战中记忆代码。想要学好编程,就一定要多去实操,可以帮助你更好地理解技术、加深印象。另外,通过实践,可以帮助你理解很多枯燥的理论。结合实操绝对记忆深刻。

3、多去输出

多去输出?这里很多小伙伴就会奇怪,自己都没弄清楚个子丑丁卯,还去误人子弟?其实不然,向外输出的同时,你会把自己逻辑和想法梳理清楚,这样你的知识点就又一次的得到巩固。

这里输出,我们可以选择写博客、建立个人的公众号、头条号等,重点在于,你每更新一篇文章,这个文章里的知识点你是绝对知道的,而且记忆深刻。记不住你打我!当然,你如果不想经营一个账号,你也可以和身边的朋友交流,每天在吃饭的路上讲讲自己新学到的知识点,这种持续学习,持续输出的感觉不要太棒!

4、外界因素作用

这里外界因素包括(激励、压力),尤其是压力,在高压状态下,注意力绝对的集中,这个时候你想记什么记不住?我到现在都记得我刚进公司的前两个月,每天都是顶着压力上班,没有人能够手把手教你如何去敲代码,都得自己不断的学习,不断的积累。那段时间我成长非常快,头发也是那个时候开始稀疏的!

5、每日复盘

记录工作,这里不是说写日记,记流水账!而是每天有计划,有目标的去完成一个项目。

其实,自己学过的、做过的项目都是值得珍藏的。从学编程开始,我每做完一个项目,都会复盘,包括思路、实现过程、遇到的困难或者踩过的坑等,写上一些一些心得感悟,存档。

很多同学做完就扔。到后面,自己写的代码自己不认识,看着自己曾经写的代码骂人!我一般在对今天的任务复盘后,适当的加上注释。以后看到自己的复盘文档,说不定还能去优化,有更好的思路呢!

讲到踩坑,也许多年以后,你都不记得这个项目了,但是你会记得你踩的这个坑和因为这些坑加过的班!犯错是学习和提高程序员技术非常重要的过程。而学习故障排除和调试代码则更重要。这里我强烈建议你去自己解决问题。不要害怕麻烦,更不要害怕破坏你的代码。在学习编程时,一遍一遍地重复才能学到真技术。

这是一个缓慢的过程,但非常值得。最终,你会越来越有底气,随之而来的越来越多的新想法!


二、辅助工具

1、xmind,幕布等思维导图

2、VS、Quote、Notepad等编辑器用来记事,适合程序员做笔记,写代码,便于查找!

3、有道云记事本,各种文档作为附件存储很方便,同步要比evernote要快。http://note.youdao.com/

总结

我知道会有人说,“没见过学编程还背代码的”,其实,你在实操过程中也是在不断地记忆,只不过记忆的方式不同罢了。这里,我也坚决抵制“死记硬背”,这个是无法帮助你真正成为一名程序猿的。要在顺应编程逻辑的基础上加上记忆,这才是正确的打开方式!


如果你还有什么更好的学习方法,可以一起交流,分享给大家!希望大家,能够一起成长为优秀的程序猿!
里面还有适合小白新手的全套资料给到大家~
快来和小鱼一起成长进步吧!
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)

关注【Python工程狮】回复“学习大礼包”即可获取!

新手背代码被说“笨”?文科程序员教你如何记代码,妈妈再也不用担心我的头发!相关推荐

  1. 【黑马程序员】 MyEclipse 快捷键大全,麻麻再也不用担心我打字慢了 --By寻找资拥

    ----------------------android培训.java培训.期待与您交流!---------------------- 快捷方式 Alt+/:代码提示 注意:一般情况下与输入发发生冲 ...

  2. 有趣的html代码_千万别惹程序员,否则会在代码注释里,告诉这家公司有多坑...

    Python现在非常火,语法简单而且功能强大,很多同学都想学Python!所以小的给各位看官们准备了高价值Python学习视频教程及相关电子版书籍,都放在了文章结尾,欢迎前来领取! 每个程序员敲代码都 ...

  3. python代码画小狗_程序员教你用代码手绘一只可爱的小狗,正好拿去送给女朋友给她个惊喜...

    最近经常在抖音上刷到会画画的大神给小姐姐手绘各种可爱的小动物,非常的哇塞哦~ 作为程序员的我那是羡慕不已啊!我要是学会这招是不是可以尝试给我心仪很久的女神告白了?女神没准会很开心!(好吧,我承认我是舔 ...

  4. 小狗的python代码_【Python】程序员教你用代码手绘一只可爱的小狗,正好拿去送给女朋友给她个惊喜...

    最近经常在抖音上刷到会画画的大神给小姐姐手绘各种可爱的小动物,非常的哇塞哦~ 作为程序员的我那是羡慕不已啊!我要是学会这招是不是可以尝试给我心仪很久的女神告白了?女神没准会很开心!(好吧,我承认我是舔 ...

  5. 有了jsRender,妈妈再也不用担心我用jq拼接DOM拼接的一团糟了、页面整齐了、其他伙伴读代码也不那么费劲了...

    写在前面 说来也很巧, 下午再做一个页面,再普通不过的分页列表,我还是像往常一样,基于MVC环境下,我正常用PagedList.MVC AJAX做无刷新分页,这时候问题就来了,列表数据中有个轮播图用到 ...

  6. 如何使用screen托管终端程序(妈妈再也不用担心我在家还不学习了系列四)

    前言 连接远程服务器后,刚开始还欣喜万分,用了几天后突然发现,what???网断了??我的程序就差那么一丢丢就跑完了!天哪!!!裂开了! 不要慌不要怕~~ 今天笔者就为大家带来了最高效.最简单的方法! ...

  7. 机器学习PAI为你自动写歌词,妈妈再也不用担心我的freestyle了(提供数据、代码)...

    摘要: 最近互联网上出现一个热词就是"freestyle",源于一个比拼rap的综艺节目.在节目中需要大量考验选手的freestyle能力,freestyle指的是rapper即兴 ...

  8. 微信小程序自定义导航栏 胶囊菜单按钮高度完美适配 原理简单 赛过一些大厂的适配 妈妈再也不用担心我强迫症啦

    在自定义小程序导航栏时,右上角的胶囊(MenuButton)在不同机型测试,会发现很难适配. 实测中 不同的手机,胶囊高度不一样.状态栏高度不一样.与模拟器显示的情况是不一样的. 完全需要根据手机,动 ...

  9. STM32做平衡小车,代码,PCB都现成的,妈妈再也不用担心我的毕业设计了

    ▌一.硬件介绍 主控芯片用的是100脚的STM32F103VET6,陀螺仪用的是MPU6050,电机驱动用的是TB6612,蓝牙是汇承的HC05邮票孔封装的,WIFI用的是济南有人科技的USR-WIF ...

  10. mvc2 手敲几个程序轻松学会springmvc,妈妈再也不用担心我的学习了!

    上一篇链接mvc1 一周搞定SpringMVC 概念篇 1.3 第一个spingmvc程序 考虑到需要源码的基友们,我这里也提供了好基友使用你的鼠标大力地×这个链接吧! 1.3.1 步骤 ch01-h ...

最新文章

  1. Ajax异步调用Web服务的例子
  2. 【MaxCompute】学习笔记基础说明
  3. 列举ospf的5种报文类型_9种语言的应用场景,程序员的候选清单,你最看好哪一门语言...
  4. 上云迁移-海量数据迁移解决方案
  5. 设计模式之模版方法模式demo
  6. html:(40):块级元素和内联块级元素
  7. [精华]如何编写高质量的VB代码
  8. MySQL高级-内存管理及优化
  9. JavaScript语法详解:运算符和表达式
  10. vb mysql 实例_VB与数据库的交互经典例子总结
  11. 云虚拟主机搭建个人博客
  12. CTS2019朝圣 x 打铁记
  13. 西班牙国家德比次回合时间确定 中国球迷需熬夜
  14. Entry name ‘res/drawable-xhdpi-v4/ic_launcher.png‘ collided
  15. 51单片机mq3酒精浓度检测mq3酒驾醉驾检测酒精报警ADC0832采集
  16. html5底部导航图标制作,如何做好UI底部导航栏图标设计
  17. 1.2 网络爬虫分类
  18. 28岁自学Python转行靠谱吗?入行晚吗?
  19. MyBatis中的resultMap两个association
  20. 什么是LoRaWAN

热门文章

  1. 所有ghost操作系统大全
  2. rmnet蠕虫病毒样本分析
  3. com组件 的劫持_2345.com/365j.com的IE首页劫持手动修复方法+修复工具
  4. linux_oracle视频讲解百度云,Oracle免费视频课程2012版
  5. 利用unlocker在VMware里解锁macOS操作系统
  6. 一个黑客都要学习什么语言呢?
  7. 听音扒谱app_掌握这些,你也可以轻松扒谱(下)
  8. Python入门经典. 以解决计算问题为导向的Python编程实践
  9. 嵌入式系统那些事—脚本语言tcl
  10. Unity Shader 屏幕后效果——颜色校正