加入收藏 | 设为首页 | 会员中心 | 我要投稿 孝感站长网 (https://www.0712zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

我姐和我女友这样学编程

发布时间:2018-05-01 15:33:49 所属栏目:语言 来源:译言网
导读:就像我前面日志里提到的,伊娃和芳来旧金山跟我学编程。在这篇博客中,我会介绍我是怎么教她们的,我构建教她们的方式的理由,以及这种方法是怎么起作用的。按时间顺序去列明她们所学到、做到的那些事儿很简单,但是,这没什么帮助,而且你也容易错过重点
副标题[/!--empirenews.page--]

就像我前面日志里提到的,伊娃和芳来旧金山跟我学编程。在这篇博客中,我会介绍我是怎么教她们的,我构建教她们的方式的理由,以及这种方法是怎么起作用的。按时间顺序去列明她们所学到、做到的那些事儿很简单,但是,这没什么帮助,而且你也容易错过重点。重要的是要了解详情,以及为什么它管用,所以我将从基本原则来开始。做好准备,文章比较长。

在你的整个编程历程中,以下原则要牢牢记住:

1)传播:

在伊娃和方开始之前,我为她们创建了个博客。我告诉她们,记录下她们的编程之旅和她们所学到的。在开始的时候是很难的,你可以问她们。我花了一个星期的唠叨,她们才写一次博客。但现在,如果不写写她们花了大把时间去做的那些项目,则像是错的了。

如果你在你的项目里用的是API(应用程序编程接口),发微博或者邮件给那公司,告诉他们你对他们的API的想法。当你在你的编程马拉松里获得了一个奖励,写条好微博@他们以示感谢,或者发篇日志。让这日志空前美好,然后推荐到黑客新闻栏目,就像它必将登上首页一样(尽管大多数是不会的)。

给你的编程之旅一个健康的传播过程的最大好处是,它让你对你的项目负责人,这也就引入了我的下一条原则。

2)完成:

芳和伊娃都知道,完成一个项目是很难的,但也是很重要的。我说得很清楚,除非她们写一篇日志,在twitter上@那API公司,或是在黑客新闻版上发这项目完成的消息,我们都不会启动一个新的项目。尽管第一个项目只是一个的井字棋游戏,但这是她们做得最好的井字棋游戏。你从来都不想写一个蹩脚的程序,所以多么简单的或不相干都不重要。如果你要写一个项目,那它必须是你能写出的最好的程序。我已经见过太多的程序员在一些看不到黎明的非正式项目上费时耗力。如果你正在学习编程,你必须从一开始就学习,珍惜你的时间和精力,完成您的项目来证明它。

最后的20%需要80%的努力。开发人员可以一两天就能把“点子”变成具体可执行的。而要发布一个“完美”的产品,需要两倍的时间来完成每一种情况下的测试,解决每一种临界问题。把80%的精力都花你项目最后的20%,这将在许多许多访问中成就传奇。 最后的20%需要80%的努力。开发人员可以一两天就能把“点子”变成具体可执行的。而要发布一个“完美”的产品,需要两倍的时间来完成每一种情况下的测试,解决每一种临界问题。把80%的精力都花你项目最后的20%,这将在许多许多访问中成就传奇。

3)思考:

如果你被卡住了,请不要直视你的代码。出去散散步,呼吸一下新鲜空气,并考虑一下吧。你被卡住了,是因为你的逻辑除了错,而解决的最佳办法就是在脑海或者纸上一步一步地理清楚。程序员获得高额的酬劳是因为他们在思考。问题解决是依靠你的思考,编写代码就是这么可恶的工作。优秀的项目经理通常有一个丰厚的程序背景,并且在思考和解决问题方面训练有素。

根据这种说法,如果你被卡住了20多分钟,而且你也无法突破,那就问别人吧。如果你20分钟都没有得到任何线索,那么接下来的一个小时你不会有更多进展。信托伊娃。她有一天浪费了5个小时,就因为一个愚蠢的错误,实打实的教训啊。散个步,去干点儿别的事儿。然后再回来搞它。能够脱离出自己的问题,转移注意力是一个技巧。

4)再思考:

现在你可能想通了,思考在一个程序员的生活里地位重要。请一定不要——特别是如果你正在学习如何写代码时——复制粘贴代码。如果你想学习如何怎么写代码,复制粘贴—— “你看,它成了!”——不会让你有任何突破的。相反,当你看到代码,你必须理解了它在做什么,再去尝试调试它。当你越来越能驾轻就熟理解别人的代码时,把它简化到恰好满足你的需要,然后再写出来。如果你从初学阶段就习惯这么做,在几个月里你就可以成为一个非凡的开发者。

5)谷歌:

学习如何自己解决问题。除非你被卡住了至少20分钟,不要询问编写代码的问题。程序员必须独立。他们是伟大的思想者和伟大的传播者。要成为其中一员,你必须有逻辑地思考,并找出问题发生的原因。很多年轻的开发人员所面临的一个问题是,他们很难写出他们真正需要的东西。我们很多人都经历过这个过程,你知道问题是什么,但是你不知道怎么去找到它。你必须从初学阶段就学会正确地开发程序,这是个技巧,它很好地回扣了第一点里说的传播。

现在,记住了这5个点,来看看伊娃和方学习的时间表:

第1-3天:通过Ruby学习编程的基础知识。

我选择了Ruby,因为用来上手变成它是最简便的。Ruby的语法限制很少(空格与制表符,类型声明等),因此伊娃和方能够专注于编程的思想过程,而不是去攻克语法规则。她们学会了if语句,循环,数据结构,并解决一些编程题目,如FizzBuzz(译者注:当满足一定的条件时打印Fizz或者Buzz或者FizzBuzz,是初级编程训练题目),替换字符串中的字符,转换一个数组,找出最大值。重要的是要了解类和对象。

*注意*我不教她们Ruby的特定语法。我告诉她们对参数要始终使用括号,而且每个函数结束时一定记得返回。这样一来,当她们学习其他语言时,上手更快。

第4天:HTML

HTML和CSS严格说都不算一种语言,所以没有必要花太多的时间在这上边。伊娃和芳花了一天时间在HTML上,并且玩了一些标签,还研究了表单、信息页,等。我确信,她们只用HTML标签。这将建立起用CSS的兴奋。在这里需要重点学习的是区分块HTML与内联HTML,区分标识与分类。

第5天:CSS

在玩了HTML后,“你怎么把这个放那儿,你怎样让这个丑陋的HTML页面更漂亮?”的问题来了。CSS是一个完美的答案。今天就开心地让你的网页更有型吧(所有的HTML页面都是前一天做的)。这里学习的重点是相对/绝对/固定定位,HTML浮动元素,以及如何用绝对、固定定位来控制正常的浮动。

第6-7天:用jQuery来做JavaScript

jQuery的需要一点点努力来习惯,因为有的程序涉及到jQuery的框架,这需要一点儿时间。花了几天时间,让她们的HTML页面有交互性。

第8-15天:第一个项目——井字棋游戏

在这一点上,芳和伊娃了解了HTML/ CSS/ Javascript,但还没有很好地适应之。这是启动她们第一个项目(井字棋游戏)的最佳时间。尽管她们在2天内完成了这个项目,优化它又花了好几天。最后的20%需要80%的努力,这是事实。作为初学者来说,重要的是学习来完成你的项目。

第16-20天:Sinatra

(编辑:孝感站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读