2019独角兽企业重金招聘Python工程师标准>>>

摘要:Mark Lassoff是一位高级技术培训师,从事培训工作已有10余年。他培训的客户包括美国国防部、Lockheed Martin等。在多年的培训生涯中,他总结了一些如何快速学习一门语言的技巧,这些技巧非常简单,但是却让人受益匪浅。

我已经从事10年的技术培训工作,一直教人如何编程。这些人包括学生、已经走上工作岗位的开发人员。在多年的工作生涯中,我注意到一些正确/错误学习编程语言的方式,下面我分享一些正确学习语言的5种技巧,虽然它们看起来都很浅显,但只要你认真执行,绝对会有很大效果和提升。

1.了解语言背后的“哲学”

我在初次学习Java时,觉得它即冗长又存在不必要的复杂。那时,我还不是个经验的程序员,并且习惯使用C来编码。Java是一门伟大的语言,但我并不能体会其中的精华——甚至是它的用途,因为我无法理解Java的面向对象原理。

后来,我在德克萨斯大学奥斯汀分校的Browne博士课堂上理解了面向对象方法,并采用它进行计算机科学编程。这对我更好地理解Java的核心思想以及编程方法起了非常大作用。

如今已有成千上万个编程语言,不同的编程语言解决和优化不同类型的编程问题,并且在计算机系统中处于不同的级别。而你需要做的是了解你所学语言是什么、目标。理解是至关重要的,然后运用它来解决实际问题。

2.亲自输入所有的代码实例

话说,实践是检验真理的唯一标准。学习一门语言,除了知道其中的原理外,最快的学习方法莫过于实践,编写代码,远远大于读书或看视频所产生的效果。输入代码并且让它们运行起来是学习一门语言至关重要的一步。即使你对该们语言是完全陌生的,在编写的时候你也会发现它们的语法结构,渐渐明白其中的含义。

在编写的过程中,你肯定会犯错,发现错误并纠正它,这个过程也是不可忽视的,错误越多,你就会花更多的心思研究,这样理解就会越加深刻。

3.更进一步

无论是做实验还是练习,都尝试着更进一步地了解与学习。经常这样做将会给你带来无穷的收获,驱使你不断查阅所学语言相关资料。这样做有两大优势:第一,学习该语言的文档结构并熟悉它;第二,加深概念,帮你解决一些细小问题。

例如,你正在听一堂学习如何使用HTML5和JavaScript制作音频的课,那么你应该进一步问问自己:“该如何控制音量呢?”解决这个问题后,你就可以更加深入的掌握代码。

4.通过许多小例子学习——而不是大项目

在多年的培训中,我一直把重点放在客户端的网络语言上,比如Java以及后来的移动开发。在课堂上,每节课都会有相应的课件,每个课件都会演示些例子,最后把这些例子组合成一个项目。在早期常会犯这样的错误,没有进行相互隔离。

其实,采用隔离的方式学习各种语言技能是很重要的。比起学习个人技能,集成是个更复杂的过程。在你对一门语言有了坚实的基础后,集成确实是最好的学习方式,否则很有可能会混淆概念。

5.让程序运行

一定要让程序跑起来。即使出现多个bug,也要认真调试,直到能够正确运行。想要打开一扇门,则必须要关闭一扇门。当你学习一门新的语言技能时,肯定希望以后能有较高的技能水平。有时,你很容易放弃或者跳过某个小缺陷,使该问题一直处于悬而未决的状态——这样做很危险。

除此之外,没有比这个更兴奋的事情了——第一次看到自己编写的应用程序跑起来。

来自:udemy blog

转载于:https://my.oschina.net/u/855386/blog/94984

从菜鸟到专家的五步编程语言学习法相关推荐

  1. 刷题方法(五步刷题法)

    先介绍一下我刷题的方法–五步刷题法.这是我看的极客时间覃超老师的刷题方法.为什么要刷5遍题目呢?其实刷题最重要的是过遍数,也就是说每题花的时间少,但是要多刷几遍,形成记忆(大牛就可以不用看了,我这里只 ...

  2. 如何做文献综述:克雷斯威尔五步文献综述法

    文献综述抽取某一个学科领域中的现有文献,总结这个领域研究的现状,从现有文献及过去的工作中,发现需要进一步研究的问题和角度. 文献综述是对某一领域某一方面的课题.问题或研究专题搜集大量情报资料,分析综合 ...

  3. 如何做文献综述:克雷斯威尔为五步文献综述法

    文献综述抽取某一学科领域中的现有文献,总结这个领域的研究现状,从现有文献及过去的工作中,发现进一步研究的问题和角度. 文献综述是对某一领域某一方面的课题.问题或研究专题搜集大量情报资料.分析综合当前课 ...

  4. (转)如何做文献综述:克雷斯威尔五步文献综述法

    转自: http://blog.sciencenet.cn/blog-755833-634306.html 文献综述抽取某一个学科领域中的现有文献,总结这个领域研究的现状,从现有文献及过去的工作中,发 ...

  5. 变革家五步投资法学习体会

    变革家(Reformer),专注创业项目分析,帮股权投资者把好第一关! 拆解学院,是变革家的一个王牌课程,通过每周微信语音和网站内容形式,大力提升股权投资者的投资水平. 作为一名变革家的顶级Fans, ...

  6. 五步移相法matlab程序_四步移相法提取相位(相位解包裹)基础问题

    最近在自学四步移相法提取相位,有个初级疑问: 有四幅移相图片a.b.c.d如下:完整解包裹代码如下: 程序运行后,主要是figure(7)和figure(8)没看太明白,;从figure(5)和fig ...

  7. 程序员必会的十步快速学习法(附书单)

    本文对<软技能:代码之外的生存指南>书中的"十步学习法"展开讨论,该书作者是John Z. Sonmez,一名程序员,书中有很多面试.专业等建议.有一些建议相见恨晚.某 ...

  8. 五步移相法matlab程序_基于结构光的相移法三维重建matlab

    一.基本原理: 正弦条纹打在三维物体上,CCD记录到的条纹由于受到三维物体高度的调制而发生扭曲,扭曲的条纹(deformed fringe)实质上为原始条纹在物体具有高度存在的位置有了附加相位,各点的 ...

  9. 五步移相法matlab程序_用MATLAB软件对逆变电路移相调压进行仿真,30°,60°,90°的波形,并用分段分析法分析其原理_学小易找答案...

    [简答题]Translate the following ad into (1) a TV comercial, and (2) a factual introduction. Marie Franc ...

最新文章

  1. 整合spring cloud云架构 - SSO单点登录之OAuth2.0登录认证(1)
  2. JAVA正则表达式高级用法(分组与捕获)
  3. 在开发的过程如何使用源码
  4. 我国java发展_Java在我国的应用现状和发展趋势
  5. python remove函数_python中remove函数的用法是什么?
  6. python使用install_用 python setup.py install 安装 matplotlib 报错
  7. 数据库事务及事务的特征
  8. 过拟合解决方法python_欠拟合、过拟合及其解决方法
  9. SCI 投稿全过程信件模板一览(出处不详,仅供参考)
  10. 《SEO字典》解读meta robots标签
  11. Java 素数筛选法
  12. 什么是知识库,怎么制作知识库?
  13. 【Java系列】:异常-Exception
  14. 本地网络出现了一个意外的情况,不能完成所有你在设置中所要求的更改?
  15. QT学习教程(全面)
  16. Kanzi常用操作4
  17. Gnuplot特殊字符之Symbol字体
  18. MySQL面试:为什么用自增列作为主键
  19. Python入门之基础知识(三)
  20. excel数字不能累加_如何修复不累加的Excel编号

热门文章

  1. DICOM:通讯模型
  2. VTK:可视化算法之LOxSeeds
  3. VTK:几何对象之Line
  4. OpenCV霍夫变换的演示代码(附完整代码)
  5. OpenCV无缝克隆带GUI的模块的实例(附完整代码)
  6. OpenGL toon shading卡通着色的实例
  7. QT的QParameter类的使用
  8. 南卫理公会大学计算机科学,南卫理公会大学哪个专业好?
  9. 1.18.5.流式概念、动态表(Dynamic Table)、DataStream上的关系查询、动态表 连续查询(Continuous Query)、在流上定义表、处理时间
  10. flink报错:Error: Static methods in interface require -target:jvm-1.8 已解决