事实证明,如果你愿意付出努力,书籍实际上可以帮助你学习任何你需要知道的东西。
技术书籍用来打基础和梳理既有知识,是不错的途径。各种教程,都是技术应用层面的练习,对于打好基础,效果不那么显著。
1. 完整的阅读
一个常见的错误是没有彻底阅读解释材料。直接去编写代码示例,而不阅读有关代码是如何工作的解释,这是一个失败的方法。你购买一本计算机图书的理由应该是是为了获得示例代码以及代码的解释。
计算机书籍通常包含额外的信息,这些信息可能需要在您阅读的过程中重点关注或者标记,比如参考资料,你需要花大量的时间来研究。您可以使用参考资料来发现代码的其他实现方式,或者使用其他类型的输入来测试您在示例中所做的工作。
当然,一本书不能教会你关于当今复杂的编码环境的一切。因此,许多计算机书籍也引用了精心策划的在线资源,这些资源可能包含你正在寻找的确切信息。
2. 集中注意力
确保你在阅读时注意力一直专注于这本书。如果你发现自己突然想到了一次钓鱼之旅或电视上的球赛,那么是时候把这本书放下一段时间了。随意阅读是不够的;你需要集中注意力,或者需要做一个小练习。阅读过程中不要担心你不得不稍微回顾一下,以确保你真正理解了在你思考钓鱼之旅时从你的头脑中飘过的那些页。
3. 下载代码
编程书籍通常都有可下载的源代码。下载这个源代码,把它加载到编译器中,然后构建它,看看它做了什么,这一点很重要。这些工作示例对于理解编码技术至关重要。这个源代码可以确保您看到一个没有问题的工作示例,比如输入错误或其他问题。
在您开始理解代码的工作原理之后,您可能想尝试手工编写它,以加强您已经习得的知识。对于大多数新手程序员来说,拼写错误是一个主要的挫折来源,因此,将原始下载的样本代码作为比较,可以更容易地快速发现错误并改正错误。除了手工编写代码外,还要练习输入代码。
4. 在调试器中单步运行
许多现代编程语言的目标是自动化任务,这在您知道它们如何工作之后很好,但是对于学习过程来说是一个潜在的障碍。
当您逐步执行时,检查变量的值,验证它们是如何变化的,并确定它们为什么会以特定的方式发生变化。使用调试器特性来改变变量值,这样您就可以看到这些变化是如何影响应用程序的。查看应用程序内存,看看它是如何存储信息,检查调用堆栈,以确定调用是如何进行的。简而言之,当您一步一步地完成应用程序时,探索应用程序的每个潜在方面。
这种方法还可以让您探索应用程序开发和设计的其他途径。例如,在适当的情况下,您有时可以输入文件库,以查看它们与应用程序的工作方式。在某些情况下,您可以探索字节码或反汇编应用程序代码,以了解程序在较低级别上的运行情况。
注意:使用调试器的单步操作可能导致应用程序工作异常,因为有些进程是时间敏感的。此外,您可能需要在某些时候重新启动应用程序,因为环境会被破坏,您将无法得到您所期望的结果。单步方法最适合于短代码段。
5. 使用示例代码以掌握它
在这一点上,你可能会认为你已经提取了书中所提供的所有的信息。然而,您仍然没有使用示例代码,以不同的方式尝试运行它。实验是学习的关键。在书中试验代码示例是构建您的技能的好方法。当您处理各种扩展时,您应该开始理解代码的变更是如何影响应用程序的整体的。这种知识从其他途径是学不到的 —— 你需要进行实验,以便准确地掌握语言在功能方面提供的东西。
最终,您将开始创建看起来不太像书中代码的应用程序。在这个阶段,你可以自信地开始构建自己的应用程序,这样你就能真正理解它们是如何工作的。
当学习用一种特定的语言编写代码时,开发人员应该努力实现这七个里程碑:
1.学习语言基础知识,如数据存储、关键字、决策制定和循环指令。
2.查看用于执行特定任务的语言。
3.探索库是如何扩充语言的。
4.深入研究语言细节,并理解语言在较低层次上的工作方式。
5.尝试用语言来观察相互关联的变化是如何相互影响的。
6.使用学习的技术开始构建简单的应用程序。
7.通过创建越来越复杂的应用程序和研究额外的语言资源来继续习得技能。
这看起来似乎很多,但是很多程序员可以证明,在技术书籍的帮助下,如果你正确地处理这个过程,你可以达到所有这些里程碑。