Java 什么';你学习语言的方式是什么?
我刚刚开始学习Java(参考第一本书) 我只是想知道学习任何语言的最好方法是什么 如何最大限度地利用这本书 一个人是应该研究这本书的内容,然后在电脑上尝试代码,还是同时进行?(学习概念,同时在电脑上尝试) 在我的情况下,我参考了这本书,并利用了论坛的帮助。我还想知道什么时候开始回答堆栈溢出:)因为我对这门语言还不熟悉,所以我知道的不多Java 什么';你学习语言的方式是什么?,java,Java,我刚刚开始学习Java(参考第一本书) 我只是想知道学习任何语言的最好方法是什么 如何最大限度地利用这本书 一个人是应该研究这本书的内容,然后在电脑上尝试代码,还是同时进行?(学习概念,同时在电脑上尝试) 在我的情况下,我参考了这本书,并利用了论坛的帮助。我还想知道什么时候开始回答堆栈溢出:)因为我对这门语言还不熟悉,所以我知道的不多 (我只是经常在这里读别人的答案)当我想学习一门语言时,我给自己设置了一项困难的任务,比如哈夫曼编码,或者Facebook拼图,然后在这个网站的帮助下开始努力学习
(我只是经常在这里读别人的答案)当我想学习一门语言时,我给自己设置了一项困难的任务,比如哈夫曼编码,或者Facebook拼图,然后在这个网站的帮助下开始努力学习 你可能想用一本书来了解语言的基础知识,不过…最好的方法取决于你-我自己的方法可以总结为:
- 读书
- 写一些代码
- 重复
但有些人学习不好,喜欢更正式的课程,比如参加培训课程,我不能坐着不动,尽管作为一名前讲师,我曾经很高兴很多人有不同的感觉。我通过一个项目学习了新的语言。也许你已经用另一种语言做了一些事情,或者你会发现一些有用的东西(比如编程工具)。然后试着用你想学的语言来写,首先用你对语言的理解和从书籍和网站上搜集到的东西。当您完成项目时,请社区中的人查看您的代码,并就出现问题的领域提出问题 重要的是要认识到一种语言通常是非常通用的,而一个问题会给它提供上下文。例如,我可能知道如何开发Java应用程序,但这并不意味着我知道如何开发J2EE应用程序。相同的语言,不同的语境;因此,在提出一个或多个学习项目时,您可能希望考虑这一点
我还强烈建议使用非常繁重的单元测试来构建项目。编写单元测试将为您提供一套坚实的工具,它们不会在书中向您展示,您的代码将得到改进,更重要的是,任何意外的语言习惯用法都会像一个。。。就像一次失败的测试。这是一次重复,因为我记得不久前回答了这个问题,但对我来说,这取决于语言,以及我是否需要学习语言或完全新的想法 有了像哈斯克尔这样的语言,我认为这很难,因为它与我习惯的语言大不相同,我从书本学习开始。然而,实践经验是必不可少的,但我并没有从头开始尝试任何雄心勃勃的事情,而是专注于对现有代码的小修改 对于Ruby或Java等更简单的语言,我可能会做一个教程,然后我会尝试从头开始编写一个应用程序。当我碰到任何一堵墙时,我只是四处冲浪寻找答案,或者在这里提问,学习来自经验
事实上,不管怎样,做事是关键 对于我来说,最重要的事情总是找到我真正想用我想学的新语言做的事情。否则,就很难真正被激励。但一旦我有了一个想法,我就去阅读有关该语言的教程和文章,并开始在学习过程中构建我的项目学习
我以前读过很多书,但现在到处都有stackoverflow和教程,我发现自己越来越不需要它们了 我通常在谷歌上搜索尽可能最好的书(推荐最多的一本),我会快速浏览,只是为了了解语言的总体概念、良好实践等。然后我要么想一想,要么在谷歌上搜索一个程序,该程序能涵盖你使用该语言所能做的一切(当然不是每次都可以,但要尽可能多)。就像我在学习JavaEE(JSP、Servlets、JPA)时一样我决定写一个简单的刽子手游戏,首先我会做基本的,然后我会添加数据库等等。-首先我做了一个非常基本的程序,然后我添加了越来越多的。当然,我在写它的时候,我会一直用谷歌搜索好的实践,因为你可以编写一些东西,它会工作,但将来维护它可能会很困难等等
我认为用你正在学习的语言写东西是最有效的方法,如果你能正确地执行它。我通常先阅读书籍,然后在每章之后做练习,试图理解基本概念并熟悉其功能我个人仍然有一份我编写的NetflixPrize数据集的副本总的来说,微软说要解决这个问题,或者只是敷衍了事。不幸的是,这个数据集已经不再公开了(至少是Netflix自己的官方数据)
无论如何,找一个有趣的项目,你有一个很好的想法,你需要做什么来完成它和解决它,然后学习语言和平台设施和解决它的最佳实践。一旦你已经湿了脚,然后用你正在学习的语言/平台开始新的项目。我做了一些有趣的事情ng并试图用新语言重写我的IRC机器人。这让我学到了一些东西,包括
- 使用语言使用的任何GUI框架
- 使用套接字、流等东西
- 同步
- OOP样式(如果语言为OOP)
- 多线程
- 动态做事(针对插件)
- 如果我在请求代码审查时做得正确
- 如何使用其他框架