学习Java以获得完整新手需要多长时间?

时间:2009-05-14 17:26:34

标签: java java-me

我完全没有编程经验但需要学习Java - 足以参加J2ME快速课程。我只有10周。我可以这样做吗?您对我可以使用的最佳资源有什么建议?(目前正在使用Sun的Java教程)。

24 个答案:

答案 0 :(得分:52)

10周?显然你可以在24小时内完成!

http://www.amazon.com/Sams-Teach-Yourself-Programming-Hours/dp/0672328445

编辑:

好的,所以只有一个人发现我的回答很有趣,但却没有足够的乐趣进行投票。真正的问题是你需要在10周内有多好?

如果你给自己写了一本好书(上面链接的那本书在亚马逊上有一些很好的评论),那么在10周内你可能已经足够精通在Java中做一些有用的东西了,但是要成为专家需要数年时间。任何花费10周到几年的时间都会让你从初学者转向专家。

哦,请阅读Teach Yourself Programming in Ten Years

答案 1 :(得分:25)

好的,基于之前的一些答案,我希望能够为此付出代价,但是,我认为你是妄想认为你可以自己学习如何在没有编程的情况下在10周内用Java编程背景。任何具有 NO 编程经验的人,除了某种神童之外,都不会在10周内学会用Java或几乎任何语言编程。

为清楚起见,从书籍中复制和运行 hello world 并不能使您成为程序员。好吧,很可能需要花费几天时间才能在某些IDE中运行。

现在,您可以学习并可能通过一些测试吗?也许,但这取决于测试的深度和格式。

如果我问我是否可以在10周内成为一名医生,我会因为询问而受到嘲笑,所以我对那些表明它有可能的答案感到有些惊讶。我现在可以在我的女儿身上贴一个绑带,但它几乎不能让我成为一名医疗专业人士,这只意味着我管理了他们的 hello world 版本。

答案 2 :(得分:24)

主要问题是你过去是否做过任何编程,因为这可能是主要的努力。我怀疑,如果你没有,你可以过去但不一定做得好。您表明您没有任何编程经验,因此这是您将遇到大多数问题并花费大部分时间的地方。与其他类似语言相比,Java的学习速度或速度不一定要快。

Sun的Java教程很棒,但遗憾的是编程是必要的练习之一,这取决于你的空闲时间。也有必要经常停下来练习,而不是在读完半本书之后。如果你花了10周的全职时间 - 是的,那对某些人来说是非常可行的。毕竟,大学生在一学年成为可以接受的开发人员,他们会参加其他不相关的课程。

我会专注于首先完全找出Java而不尝试使用J2ME。然后你可以进行切换。

此外,要意识到语言和标准库之间存在很大差异。重要的是学习语言。每个人都使用某些标准库调用,这对于学习至关重要,但它们不是语言的一部分。但是,你永远不会真正了解整个图书馆(虽然你会从中获益)。学习如何找到您正在寻找的功能然后确切知道它是什么或在哪里找到它更为重要。重要的是避免重新发明轮子。

另外,要意识到最后你可能只是一个可以接受的开发者。经验需要时间,往往无法加速。

此外,即使你学会编程,你也会错过一些关键的一般CS知识,如数据结构和算法。编程书籍很少教你,你必须自己学习(例如,参见TopCoder教程)。

答案 3 :(得分:15)

好的,这里有很多人说“是”和“是的,但是很难”,所以我会有所不同。

没有

问题不是在10周内“学习Java”,因为我认为到10周后,你将能够编写一些东西,并知道如何解决一些简单的事情

但这不会让你为J2ME快速课程做好准备。快速通道课程往往适用于具有先决条件背景的人。你可能能够许多事情,但如果没有背景知道为什么你正在做什么,它看起来像是一个很多半随机的东西要记住死记硬背,很快就会消失。

基本上,我认为这需要时间:让课程沉沦的时间,实验时间和失败几次,以便突然跳出来为什么......

最终,我怀疑你可以通过它,但你不会最终变得非常娴熟。 (Uri的帖子的最后两段说明了一切。)

我不想成为一个彻头彻尾的沮丧者,我绝对希望你做得好并且成功......但我不愿意赌钱。

(明白,我不认识你来自亚当......所以我根据我对我的经历以及与之合作过的人的经验做出陈述...所以这不是一个对你不利......只是观察到这是一顿非常大的餐,你准备吃。)

答案 4 :(得分:5)

第一次学习编程有点像学习外语。您将能够轻松地重新创建您所教授的短语,但是您将缺乏对该方法的理解,因此无法有效地解决新问题。这需要时间。

如果你是第一次成为程序员,我真的不能推荐Java。 Python会好得多(免责声明:Python粉丝,但有充分理由)。

但是,我认为初学者不能比Head First Java

做得更好

答案 5 :(得分:4)

我在高中教Java编程,我们的课程为期14周。这足以让学生在面向对象编程方面有一个坚实的基础,但是学生没有足够的经验来开发大型项目或任何过于复杂的项目。

许多学校使用兰伯特和兰伯特的教科书。 Osbborne:

Lambert,K。& Osborne,M。Fundamentals of Java:AP计算机科学基础AP考试。第3版。 2006.汤姆森课程技术。

答案 6 :(得分:3)

您遇到的主要问题是您是第一次使用Java学习编程,我认为Java不是最好的语言。

我想你正在解决一个工作项目,是这样的吗?这种压力可能会使事情变得更糟根据项目的复杂程度,您可能会获得成功,但在没有背景知识的情况下在10周内学习Java是另一个问题。

答案 7 :(得分:2)

这取决于你想要多努力,但是有可能。你将遇到的问题是你必须学习编程以及学习java。这是两件截然不同的事情。编程是知道如何读写逻辑,Java是你编写的语言。如果你有数学或物理背景,这将会更容易,因为你已经开始以这种方式思考。

如果你没有开始Java的书籍,我会去购买其中一本。

我也会拿起这本书Code(如果可能的话,我会尝试在几天内完成这项工作,如果不是周末的话)。实际上有10个星期我会先做这个,因为它将成为你编程Java所需要知道的基础。

有10个星期的时间,你每天晚上都要学习相当多的东西,以便在上课之前掌握它。我最好的建议是,当你上课时,要记下很多笔记,并且不要期望理解一切。大多数被扔到你身边的东西最初可能会超过你的头,你会忘记。没关系。课程结束后如果结束,请返回并查看笔记等,直到它开始有意义。

答案 8 :(得分:2)

关于你需要多少时间成为编程专家,有不同的思想流派。我不打算加入它。 我建议如果你完全没有编程经验,先学习C语言。然后转到Java。 以下网站非常适合学习java。 http://www.javapassion.com

答案 9 :(得分:2)

我不得不说你在短短10周内就开始了很多,我刚刚在印第安纳大学东南部完成了一个学期的Java编程,我认为我还没有开始研究表面。 Java是一种非常严格的语言,如果你根本没有编程经验,它的语法很难处理。我将提供这些建议去www.bluej.org并在那里下载,Java编译器据说是最容易使用的,并且大多数大学都使用它。它也是,我们所知道的,我现在所知道的,我们可以说,他们是正确的。 Java是一种面向对象的语言,Bluej让您对对象有了很好的理解。他们还向您展示了如何设计,类,方法,数组,数组列表,哈希映射,所有这些都在这个网站上,它是免费的。我希望这对你的挑战有所帮助并祝你好运。

答案 10 :(得分:2)

我是刚刚完成我的第一个Java课程的计算机科学专业的学生。我想如果你努力学习,可以在10周内学习Java。但你只会得到一个介绍!编程不仅仅是了解语言(API,语法等)..

有史以来最好的Java书籍:http://www.amazon.com/Introduction-Java-Programming-Comprehensive-Version/dp/0136012671/ref=sr_1_1?ie=UTF8&s=books&qid=1242328533&sr=8-1

答案 11 :(得分:1)

我没有编程背景,想学习PHP。我花了大约6个月的时间练习我的正常工作,以发展我的技能,足以为网站编写一些简单的应用程序。 Java有点复杂......

答案 12 :(得分:1)

我不会说我“没有编程经验”,但在学习J2ME之前,我所做的大部分工作都是在10年前的汇编程序中完成的。

我跳过学习“JAVA”并学习了J2ME,它似乎是java的一小部分。它足够小(如果你忽略了扩展),它非常易于消化,并且可以在中等大小的书中轻松解释。从这个角度来看,虽然我确实需要了解OOP,但它有点像汇编程序(虽然知道的东西数量有限)。

我买了一些J2ME书籍,但我发现最有帮助的是:“使用Java 2平台编程无线设备”,作者Riggs等人。

我不记得确切花了多长时间,但我很确定我在12周左右的时间内编写了可部署的代码(它是一个移动时间表应用程序)。

答案 13 :(得分:1)

我在初学者Java编程方面的经验并不难学;但它实际上取决于你的面向对象编程技巧。当你提出你没有编程经验时,我想我推荐一个网站http://www.exampledepot.com/,并输入任何java关键字,如Swing,FileInputStream,它提供了许多可以应用到项目中的实际示例。

请购买一本java书(24小时内的Sams'java 6)作为参考。它将在短时间内为您提供真正基本的java技能。我相信你会有足够的时间在10周内学习java和J2ME。祝你好运。

答案 14 :(得分:1)

我和一些自学成才的程序员一起工作,他们阅读的内容包括“在0.01天内学习javascript”。每天都值得thedailywtf.com分享。

此外,在求职面试中,你会被问到“你有多少经验?”,你的答案是“0.01天”。

祝你好运,但我希望我们的道路不会再过几年

答案 15 :(得分:1)

学习编程的最佳建议基本上是:编写很多程序。

Project Euler包含许多非常适合此目的的问题,因为生成的程序大小可管理,实际上允许您解决明确的问题。

http://projecteuler.net/index.php

答案 16 :(得分:1)

对于java,你还需要学习如何使用IDE并设置你的环境以及这种方法来使java工作......

然后对于J2ME,你需要了解有关嵌入式/移动系统的事情......

10周的教程可以,但这也取决于你在j2me课程中要做什么......

我会先去j2me教程(假设你知道关于变量函数和OO的最小值)......

祝你好运......

答案 17 :(得分:1)

我可以同情......曾经处于类似的困境,虽然我至少有一些背景。我同意@ShawnMilo对Head Fist Java的看法。同时推荐Sams Teach Yourself Java in 21 Days,鉴于你说你没有编程背景,我强烈建议你看看Matt Weisfeld的The Oject Oriented Thought Process。我也同意这个线程上的所有人,他们说编程比“简单地”学习一种语言(特别是如果它是Java)更多。话虽如此,祝你好运和神速度。

PS我会给@Patrick McDonald +1幽默感,但我没有足够的代表!

PPS和@Robin的另一个虚拟+1。我想知道四个约克郡人什么时候进入这个线程......

答案 18 :(得分:1)

你能学会在十周内画画,雕刻或画画吗?任何人都可以学会按键进行编程,就像任何人都可以拿起画笔一样,但是需要时间和才能来培养开发的艺术性。帮自己一个忙,花时间和精力去学习,而不是填鸭。通过共同努力了解如何开发所学到的经验教训将比为了满足某个任意日期更好地为你服务。

答案 19 :(得分:1)

你可以在10周内对Java有一个很好的理解,但如前所述,练习是完美的(或者至少更好......)。几个起点:

Java API将成为您的朋友: http://java.sun.com/j2se/1.5.0/docs/api/

Java有很多内置功能,所以尽量不要复制它(String函数和诸如此类的东西)。

此外,IDE可能会使某些事情变得更复杂,但它也可以帮助您找到适合API的方法。 Eclipse是一个很好的起点(它是免费的) http://www.eclipse.org/

希望有所帮助..

答案 20 :(得分:1)

可行,是的。但是你错过了编程背后的许多理论,所以尽管你可能对语言有足够的了解,但你不会知道如何编程。我建议你在面对面设计的时候拿一些初学者的书。最好的(至少对我来说)教学和帮助新语言的工具是这样的教程和论坛(不要忘记谷歌第一,但有很多初学者的问题通过简单的搜索回答)。

祝你好运!

答案 21 :(得分:0)

正如其他人所提到的,如果你有计算机编程背景,那么10周应该足够了。

如果你是杰夫阿特伍德,那么接近6-8周。

答案 22 :(得分:0)

10周?你疯了吗? Java API是大规模的,更不用说Java EE如何才能在10周内完成它?你可以在几个月内完成5%的这个。我要说至少需要一年时间才能为新手提供Java基础知识。我的意思是你不能只读一个关于某个主题的章节然后认为你理解它。您必须花费大量时间使用该概念或将API部分至少将其提交到内存中,从不介意实际掌握它。

实际上我会说至少有两年或三年的编程才能达到行业入门级标准。那就是你真的适用自己。

答案 23 :(得分:0)

我不明白为什么你不能这样做。我是一个书人,所以选择一本书并完成它。设置一些小项目并完成它们。 10周比我通常学习一门新语言更长。

玩得开心,希望你能学到很多东西。

我会发布我学过java的书,但是他们在家里,我不是。