我应该为SCJP准备多久?

好吧,我知道这可能听起来有些愚蠢,因为这取决于人,但平均而言,我应该花多少时间来准备SCJP? 我已经有了一些Java经验(我的大学有一些中小型项目,从实现一个简单的“船”游戏到一些客户端 – 服务器的东西)。

我想在7月7日左右拍摄它所以我有大约7-8个月,是否足够/太多/不够?

此外,我一直在寻找一本好书,还有什么比Kathy Sierra和Bert Bates的“Java认证程序员Java 6学习指南”更好的了吗? 那么一些实际问题(比如“实现这个和这个”或“编写一段代码……”)?

啊,这真的值得(我自己花钱)。 我不是在问它是否会让我成为一个更好的程序员(因为我已经看到了stackoverflow上的这样一个线程)但雇主是否也关心它?

我花了3个星期准备Java 6考试,我有0个专业的Java编程经验。 对于每天使用该语言的人(如java程序员),它应该更容易。 我很高兴能尽快完成它,所以我在http://www.amazon.com/SCJP-Certified-Programmer-Java-310-订购了Kathy Sierra SCJP Sun认证程序员Java 6学习指南065 / dp / 0071591060并且有一天将它发送给我,以便我在星期六收到它。 一旦它来了,我就开始阅读。 这花了大约两个星期,因为这本书是一本800页的怪物,书中有一些自我测试,它们都给你很好的练习,并教你一些特定的细节,这本书在实际章节中没有提到(很多你可以猜到但不是所有…)。 在过去的一周里,我查看了所有的2分钟练习并重新阅读了API重的章节。 还有很多表(重要的字符串方法,线程方法,文件API方法和并发)。 我还参加了本书中的两门硕士考试。 我把他们带到了学习模式并尝试了问题,然后如果说错了,我去试图找出它为什么是错的,然后我去参考/提示我是否需要。 在考试当天,我在考试前一小时检查了文件/字符串/馆藏API并将其取出。

考虑到我根本没有任何Java工作经验并且在3周内准备好了,我的得分为90%。 任何专业的Java开发人员都应该更容易准备/采取。 虽然我知道Java已经出现了,但是我将它用于大学的偶尔的研究生和本科课程,所以我不是全新的。 另外,我知道其他C语言所以我已经习惯了很多控制结构等…但是如果我能在三周内弄清楚API /语言的工作情况足以获得90%任何有经验的java程序员应该没有问题弄清楚足以通过。 这本书仍然是巨人,每天乘坐2小时的火车去上class是一个很大的帮助。

有些人说你必须写一百个小程序来解决问题。 但这本书在细节方面相当不错。 编写程序最重要的事情(也许我写的10)是构造函数/初始化程序块/静态初始化程序块/找出确切的inheritance内容并巩固订单。 在将子类作为其父类进行转换时,重要的是要查看访问变量/重载方法时会发生什么。 虽然重载方法很简单,但预期的是,访问变量并不是那么简单。 相信我,写一些关于它的程序,特别是在超类型/子类型具有相同名称的实例变量的情况下。

我认为我从SCJP中获得的主要内容是对该语言的广泛概述。 Java是一种野兽,API /语言是巨大的。 通常我只是使用Java中每个项目/活动所需的语言部分,并在我去的时候查找API。 一些关键词(如瞬态)我只是不知道。 还有一些采访琐事(如果你覆盖等于你必须覆盖的其他东西)我不知道(至少根据朋友告诉我的情况)。 我也不知道像国际化类Locale,Calendar,DateFormat,NumberFormat和Date这样的东西。 真的,如果我正在编写严肃的Java软件,我可能会使用Calendar来满足日期算术需求。 我不认为它会帮助我找到一份Java工作,因为每个人似乎都希望在获得面试之前获得Java经验。 但是如果我接受过面试,那么我从准备考试中获得的知识肯定会帮助我更好地回答问题(尽管我确信很多具体的API细节会随着时间的推移而消失)。 现在我对Java也更有信心。 我仍然不能说我可以在白板上掀起一个完全有效的Java程序,因为API非常复杂。 像C这样的语言非常小,包括stdio.h / stdlib.h / string.h和memorize 30函数,你可以做很多事情。 Java有更多的包/类要包含更多的API。 还有表达式,有大量的规则,促销,铸造,自动装箱等,这很容易搞砸。 虽然C优先考虑地狱,但是右括号你可以侥幸逃脱。 Java对事物更严格(即if(0)是一个错误)。 但考试是值得的只是为了一些额外的琐事,虽然考试有点令人沮丧,如果你看这本书它几乎告诉你,考试故意挑选棘手的问题和边缘案例,试图混淆你。 它会故意给出不好的缩进和其他东西试图变得棘手。 我讨厌这一点,因为它不是专注于你合理地了解材料,而是专注于试图让你迷惑。

有一点需要注意的是,不要被师父考试抛出。 我尝试在考试模式中选择一个,他们在1.5小时内提出了75个问题,我几乎决定推迟考试。 真正的考试是60个问题,你得到3个小时。 此外,实际考试的问题比主考试更容易。 我的硕士考试成绩是37%….我最后两次我只是在学习指导模式下,尝试每个问题/如果答案是错误再次/看了一次A考试和一次B考试…我在考试中做得很好,我真的很高兴我没有把它推迟到学习指南,因为现在它结束了,我可以放松….

在降落伞书中,作者讲述了他如何喜欢向他的朋友炫耀简历,他们评论说“这个简历永远不会让任何人受雇!”,他回答说“哦,但它已经做了!”。 经验教训是每个雇主都不同

因此,真正的问题不是SCJP是否会帮助您找到工作,而是它是否能帮助您找到想要工作的地方的工作。 谷歌有很多非常聪明的程序员,他们使用Java,以及我认识的所有在那里工作的人,没有采取过SCJP,所以这可能不是一个大问题。

现在,一些更个性化(即不太普遍)的反馈:

如果你在我的公司面试,实际上可能会受到伤害(特别是如果你提请注意它),如果看起来你只是一个Java程序员 ,那对你没有帮助。 我们需要优秀的程序员,而不是优秀的Java程序员。

我没有参加SCJP,但我怀疑它与其他所有标准化测试一样:它与你的Java能力一样,关于你的SCJP接受能力。 在面试时,我们将查看您已编写的代码(开源项目很棒),以及您在面试中编写的代码。 孙认为你的不是我们关心的问题。 (我们不能在一年内完全召唤Gosling并说“Dude,你告诉我们这个失败者知道Java!你完全欠我们一年的开发时间”。)

有人建议,如果其他所有人都相同,它会让你看起来比其他候选人好。 首先,在采访方面,所有其他方面都是不平等的。 事实上,我很少采访某人而且是中立的:它要么是立即的“否”,要么是强调“是”。 其次,除非它是一个非常小的公司,每个人都需要更多伟大的程序员,所以如果两个“是”同时走进大门,我们将雇用他们两个。 是的,即使在今天,在这个经济体中。

因此,找出你想去哪里工作(一个特定的地方,或一种类型的地方),看看SCJP是否会帮助你。 在您可能节省的时间内,还有很多其他方法可以擅长Java。 首先,编写真正的Java程序。 :-)如果你开源他们,所以每个人都可以看到你做过的很酷的东西。 如果您撰写关于所有血腥细节的博客,可获得双倍奖励。 其次,学习Java以外的东西。 例如,如果你花了6个月的时间学习Haskell,我保证它会对你的Java有很大的帮助。

我准备了大约3个月的1.4 Java版本SCJP与O’Reilly的书(不是头部第一遗憾)我认为1.5规范的SCJP考试更难以感谢仿制药。

无论如何,最重要的是在测试期间集中注意力,几乎所有问题都有一个技巧,正如你在准备书模拟测试中看到的那样。

这实际上取决于你正在进行的认证。 如果您只是想通过考试,您可能会在大约三个月内完成考试。

但是,如果你正在学习如何深入了解 JDK和内部,那么我会说更多的是六到九个月

你提到的这本书应该没问题,但请确保你做的是示例程序,并真正探索每章中提供给你的概念。 我肯定会推荐的一个站点是JavaCertificate.com:

http://www.javacertificate.com/

值得花钱来做练习题和模拟考试,但不要太早做。

强烈建议你做SCJP,它会让你领先于大多数平庸的Java黑客。 不幸的是,我所知道的大多数雇主并不知道认证 – 也不是它的好处。 我真的希望Sun能够对你最终获得的认证进行评分 – 90%和以上是1级,80 – 90%是2级等等……

从Sun认证专家维基百科页面 ,我了解SCJP是许多其他Java相关认证的先决条件,所以我确实说它确实真的。 它不仅在你的简历上看起来很好,而且它将开辟新的认证机会之路,让你在长期内获得更好的就业机会,不仅是因为认证,还因为你将获得的经验。

有关此问题的广泛讨论,您可以查看此论坛post。

我从未知道获得认证的帮助很大,但我不住在美国或IT行业的热床。 其他人可能会对这个话题有更多的了解,但我只能假设在一个更具震撼力的IT城市,如硅谷或纽约,如果两个或更多的候选人均匀匹配,它可能看起来更令人印象深刻。 但如果你在面试技巧或当场思考等方面表现不佳,那么获得认证可能无济于事。

你提到的这本书听起来不错,可能就足够了。 我也一直很喜欢头部第一系列,在你的情况下, Head First Java可能值得一看(还有Kathy Sierra和Bert Bates)。

与SCJP有关的其他一些post也可能有所帮助:

scjp有帮助吗?

是一个值得的scjp证书

虽然我花了很长时间准备SCJP考试(因为我当天正在工作),但我认为7个月足够长,也许太长了,这取决于你的疯狂技能。

我当时唯一拥有的资源是Kathy Sierra和Bert Bates的Java认证程序员Java 5学习指南。 我认为这是我需要的所有资源。 虽然我不得不承认我必须一遍又一遍地阅读这些章节并多次回答测验和练习考试,以确保我能够掌握它。

据我所知,诸如“实现这个和这个”或“编写一段代码……”之类的问题是SCJD考试,而不是SCJP。 Sierra和Bates的书中也提到了这一点,以及有关考试的其他信息。

对认证的看法当然似乎是混合的。 一些雇主说,如果你没有雇主,他们就不会雇用; 别人不在乎; 和其他人似乎对证书充满敌意。 所以,有一个可以帮助,但不一定。 我的观点是,如果你用它来提高你的技能,那么就得到它。 如果您的技能已经达到了认证很容易的程度,那么只有当您确信它能帮助您获得您想要的工作时……或者如果您的雇主要求您获得该项工作,这是值得的。

至于花在准备上的时间,这也各不相同。 一些因素:

  • 你知道多少
  • 你有多少时间
  • 您希望在测试中表现如何

我认为3到6个月的学习应该足以通过,如果你已经擅长Java了,可能会更少。 根据我自己的经验,我对Java很熟悉,但几次研究SCJP。 我没有截止日期,想要“测试”测试,所以考虑了6 – 8个月的学习时间。 然而,生活会带来分心,我会暂停学习。 我没有经常使用Java,所以当我恢复时我将不得不重新开始。 最终生活呈现出最终的分心(一个孩子),我仍然没有得到SCJP。 (但是,我开始定期使用Java,因此可能会改变。)

JavaRanch是另一个用于SCJP准备的好站点。