有些人说,当你对学习代码感兴趣时,你应该开始尝试**一个应用程序或任何你想**的东西。其他人则建议采用“自下而上”的方法,先学习基础知识,然后慢慢积累。
曾教授计算机编程的Netflix程序员Semmy Purewal在O'Reilly上定义了这两种方法之间的区别:
自上而下的方法是由这样一种观点决定的,即最好是在一个应用程序或一个鼓励学习者在这个上下文中拼凑知识的框架的中间。许多书籍和在线教程使用一种明确的自上而下的方法,通常从流行方法、框架或技术的基础知识开始。其中最明显的例子是关于RubyonRails的书籍——它们几乎总是不可避免地以模型-视图-控制器设计模式的描述开始,但却推迟了构成它的大量不明显的想法(例如面向对象编程)。
另一方面,自下而上的方法从编程的基础开始,然后慢慢地积累知识。与自上而下的方法相比,自下而上的方法尽量减少学习者认为理所当然的不明显想法的数量。Khan Academy和Code Academy是两个使用自底向上方法来教授编程的在线网站。在大多数情况下,它们完全忽略了任何特定的框架,而将重点放在编程的基础上。
他建议大多数初学者使用自底向上的方法,因为它建立了一个更坚实的基础,从中可以获得更有意义的学习。在记住了基础知识之后,你就可以更自然、更容易地将这些积木用于更高级的程序。这就像在用外语写小说之前先学习最常用的单词一样。
同意或不同意,Purewal提出了一个令人信服的案例,并为学习web应用程序开发提供了一个八步计划。
学习编程的具体方法| O'Reilly
科特摄。
...很少像那样发展。但是,如果你是一个很好的厨师和编程初学者,那么你会看到相似之处。因为这两种技能都需要两个基本的东西:配料和准备。 ...
... CodeChef提供了类似于编写家庭作业问题的挑战。它们分为初学者、简单、中等、困难和挑战类别(另外还有一个称为“用户**的挑战”的类别)。 ...
...法来磨练你的编程能力?我们有一个很棒的学习C编程的初学者项目。您还可以通过收听这些面向程序员和开发人员的播客进一步受益。 ...
... 该应用程序支持从初学者到更有经验的程序员的所有人。如果你刚刚开始,你可以在使用JavaScript之前使用这个应用来学习web技术。它也不仅仅教你如何编程。Enki还帮助您学习与编程相关的...
... 这些Raspberry Pi初学者项目是对Pi的硬件和软件功能的一个很好的介绍。从其中一个开始,你马上就可以开始跑步了! ...
...CSS等web标记语言。编码的核心概念非常适合刚开始编码的初学者。 ...
... 挑战并不局限于任何编码语言。但我们假设你是一个初学者,想学习诀窍。该网站建议您遵循FreeCodeCamp的前端课程。 ...