程序员如何通过书籍自学编程?

2018 年 6 月 23 日 程序猿

程序员书库(ID:OpenSourceTop) 编译

链接:https://blog.newrelic.com/2015/03/18/learn-code-programming-book/


有很多的方式来学习编程,从在线教程到完成在线课程,到密集编程的新手训练营。教程都很棒,但它们通常只给你基础知识。与此同时,在线教程和线下课程可能非常昂贵,虽然有很多方法可以向同伴求助,但是你需要足够的学习曲线才能理解你得到的答案。



这就是为什么许多想学代码的人,或者只是想学一项特定技能的人,最终还是选择买一本书来寻求帮助。事实证明,只要你愿意付出努力,任何你想知道/了解的事情都可以在书中找到答案。书籍也为以后的参考提供了大量的资源。首先,尝试这些有用的技巧来优化学习过程,这都是基于我所写的 96 个本算机和编程书籍的得出的:



1、完整深入的阅读


一个常见的错误是没有彻底阅读说明材料。直接阅读代码示例,而没有阅读关于代码是如何工作的解释。你购买这本书的原因是为了获取示例代码以及对代码的解释。


一本计算机书籍通常包含内容之外的信息,你应该在阅读过程中做一些笔记,例如参考材料,这些资料需要你自己花大量的时间去研究。你可以通过参考资料发现代码的其他实现方法,或通过其他类型的输入以便在代码完成时进行测试


当然,一本书无法全面整个复杂的编码环境中。因此,很多计算机书籍也会有精心策划的在线资源,这些资源可能包含你正在寻找的内容信息。



2、注意力集中


确保你在阅读时注意力足够集中。如果你发现自己注意力已经在某个电视球赛或想到一个钓鱼之旅时,那么,就放下这本书休息一会吧。休闲的阅读方式不能达到最佳效果,你需要集中注意力,否则你的练习就没有意义了,这时候你可以稍微回顾一下,回想一下在你分心之前学到的那些知识点。



3. 下载源代码


编程书籍通常都会附带可下载的源代码。下载源代码,将其加载到编译器中,构建它,了解它的运行原理,这一点很重要。这些编程示例对于理解编码技术至关重要。这个源代码为了确保你看到的是一个没有问题的代码,而不是出现诸如输入错误或其他问题的代码。


在你开始理解代码的工作原理之后,你可能会想要亲自动手编写,从而巩固你所学到的知识。对于大多数新手程序员要克服的第一大难关就是拼写错误,因此,将原始下载的示例代码作为参考,可以更快速的发现错误并改正错误。除了手工编写代码外,还要练习输入代码。



4、调试单步运行


根据你想要学习的语言以及集成开发环境(IDE)为你做了哪些工作,你可能仍然不清楚在运行应用程序时发生的情况。许多现代编程语言的目标是使任务自动化,你能知道它们是如何运行的固然很好,但这对学习过程种却存在很大障碍。



单步调试可以帮助你更好的理解它们,当你逐步执行时,检查变量的值,验证它们是如何变化的,并确定它们为什么是以这样的方式变化。使用调试器特性来更改变量值,这样你可以看到这些改变如何影响应用程序。查看应用程序内存,了解它如何存储信息,并检查调用堆栈,以确定调用的方式。简而言之,当你根据程序运行步骤,一步一步进行调试,可以探索应用程序潜在的方方面面。


这种方法还可以让你探索应用程序开发和设计的其他途径。例如,在适当的情况下,你可以进入某个文件库,查看它们与应用程序的关系。甚至,你还可以浏览字节码或反汇编应用程序代码。


注意:单步调试可能会导致应用程序工作异常,因为某些进程会有时间上的冲突。此外,还可能导致你需要重新启动应用程序,因为环境被破坏,并且不会得到预期的结果。单步方法最适合短代码片段。



5、掌握示例代码


在这一点上,你可能认为你已经掌握了这本书的每一个内容。但是,你仍然没有使用过示例代码,并用不同的方式运行它。实践是检验真理的唯一标准,书中的示例代码是提高技能最好的方法之一。当你处理各种扩展时,你应该了解代码的更改对整个应用程序的影响。这种知识是其他途径没法学到——你只能亲自实践,以便准确地掌握语言提供的功能。


最终,你才真正的开始创建与示例代码完全不同的应用程序。正是在这个阶段,你可以自信地构建自己的应用程序,这时你也会真正理解它们是如何运行的。



七大关键里程碑


学会了编程意味着你充分理解了该编程语言,从而能够完美构建应用程序。而获得这些技能的唯一方法是尽你所能地学习,并不断地练习,练习再练习,直到你完全理解了这个过程。在学习用特定语言编写代码时,开发人员应该努力实现这七个里程碑:


1、掌握基础知识,如数据存储、关键字、决策制定和循环指令。


2、掌握用于执行特定任务的语言。


3、探索库是如何扩充语言的。


4、深入研究语言细节,并理解语言在较低层次上的运行方式。


5、通过编程实践,观察相互关联的变化是如何相互影响的。


6、使用学到的技术来构建简单的应用程序。


7、通过创建越来越复杂的应用程序和并学习其他技能来进一步提高自己的技能。


这看起来似乎很多,但是很多程序员证明,在技术书籍的帮助下,如果你能够处理好这个过程,达到这7个境界并不难。



●编号3153,输入编号直达本文

●输入m获取到文章目录

登录查看更多
0

相关内容

书籍在狭义上的理解是带有文字和图像的纸张的集合。广义的书则是一切传播信息的媒体。
【实用书】学习用Python编写代码进行数据分析,103页pdf
专知会员服务
192+阅读 · 2020年6月29日
【2020新书】如何认真写好的代码和软件,318页pdf
专知会员服务
63+阅读 · 2020年3月26日
《代码整洁之道》:5大基本要点
专知会员服务
49+阅读 · 2020年3月3日
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
87+阅读 · 2019年11月25日
【书籍】深度学习框架:PyTorch入门与实践(附代码)
专知会员服务
163+阅读 · 2019年10月28日
年薪48万的程序员,他究竟做对了什么?
机器学习算法与Python学习
7+阅读 · 2018年12月28日
Python用法速查网站
Python程序员
17+阅读 · 2018年12月16日
程序员精选:TensorFlow和ML前5名的课程
云栖社区
8+阅读 · 2018年8月27日
各编程领域最好的入门书籍
程序猿
27+阅读 · 2018年7月29日
这可能是学习Python最好的免费在线电子书
程序猿
52+阅读 · 2018年5月17日
刚开始学编程?这几款小工具能让你事半功倍
7本最佳深度学习书籍,总有一本适合你
人工智能头条
6+阅读 · 2018年3月9日
如何入门Python与机器学习 | 赠书
CSDN大数据
9+阅读 · 2017年11月12日
Python 书单:从入门到……
Linux中国
39+阅读 · 2017年8月6日
Arxiv
101+阅读 · 2020年3月4日
Seeing What a GAN Cannot Generate
Arxiv
8+阅读 · 2019年10月24日
Factor Graph Attention
Arxiv
6+阅读 · 2019年4月11日
Arxiv
53+阅读 · 2018年12月11日
Arxiv
22+阅读 · 2018年8月30日
VIP会员
相关VIP内容
【实用书】学习用Python编写代码进行数据分析,103页pdf
专知会员服务
192+阅读 · 2020年6月29日
【2020新书】如何认真写好的代码和软件,318页pdf
专知会员服务
63+阅读 · 2020年3月26日
《代码整洁之道》:5大基本要点
专知会员服务
49+阅读 · 2020年3月3日
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
87+阅读 · 2019年11月25日
【书籍】深度学习框架:PyTorch入门与实践(附代码)
专知会员服务
163+阅读 · 2019年10月28日
相关资讯
年薪48万的程序员,他究竟做对了什么?
机器学习算法与Python学习
7+阅读 · 2018年12月28日
Python用法速查网站
Python程序员
17+阅读 · 2018年12月16日
程序员精选:TensorFlow和ML前5名的课程
云栖社区
8+阅读 · 2018年8月27日
各编程领域最好的入门书籍
程序猿
27+阅读 · 2018年7月29日
这可能是学习Python最好的免费在线电子书
程序猿
52+阅读 · 2018年5月17日
刚开始学编程?这几款小工具能让你事半功倍
7本最佳深度学习书籍,总有一本适合你
人工智能头条
6+阅读 · 2018年3月9日
如何入门Python与机器学习 | 赠书
CSDN大数据
9+阅读 · 2017年11月12日
Python 书单:从入门到……
Linux中国
39+阅读 · 2017年8月6日
相关论文
Arxiv
101+阅读 · 2020年3月4日
Seeing What a GAN Cannot Generate
Arxiv
8+阅读 · 2019年10月24日
Factor Graph Attention
Arxiv
6+阅读 · 2019年4月11日
Arxiv
53+阅读 · 2018年12月11日
Arxiv
22+阅读 · 2018年8月30日
Top
微信扫码咨询专知VIP会员