是否适合学习和使用JAVA的ACM包?

时间:2012-07-24 21:35:38

标签: java

现在我在youtube上观看斯坦福大学的频道,准确地说,我正在观看Mehran Sahami教授的Java讲座。我已经掌握了一定程度的Java理论知识,但我发现这些讲座非常有趣但是有一件事让我感到困惑,我想在进一步说明之前澄清它。

在示例中,与我在阅读的书籍中看到的内容有很多不同,甚至在Sun的原始文档中也是如此。在这些讲座中,主要方法似乎是public void run() public static void main(String[] args)。对于控制台输出,他只使用println()而不是System.out.println(),我建议更深入地学习Java语言,我将称之为“标准语法”,将会有更多不同之处。

根据我的理解,所有这些都来自于使用ACM软件包而且我真的不知道是否继续关注这对我有用或者只会让我更加困惑。这个ACM包是否有一些实际用途?它是否使Java语法比平时更加​​不同,所以我最终会得到一堆无用的命令?你觉得现在离开这些视频会更好吗,以后我可以使用有用的信息并更加了解过时的东西,或者差别不是很大?

提前致谢

Leron

4 个答案:

答案 0 :(得分:6)

我认为这不会妨碍学习Java。它提供了一个运行代码的框架,就像Java applet,Swing,Android或其他一些框架一样。它与vanilla Java不同,但ACM packagewell documented。一旦你掌握了基本概念,学习额外的东西,你将需要从ACM包中解脱出来并不困难。

答案 1 :(得分:4)

只要您认识到ACM代码中提供的“快捷方式”与标准语法之间的差异,我认为遵循这些讲座并不存在任何固有的危害。我听说过这个系列的一些不错的东西,如果你的目标是学习语言的基础知识(或填补现有知识的空白),那么我认为这是一个很好的资源。

另一方面,我从未见过在学术环境之外使用的ACM库。就个人而言,我只使用过一次,在单个项目中进行单项(非必修)课程,而我正在攻读本科学位。如果您已经熟悉该语言并了解基本概念,那么我会寻找更多不使用深奥或专门代码库的标准教程。在大多数情况下,ACM库似乎包含快捷方式和标准化框架,以帮助教授(和学习)核心概念,而不是担心语言中可能存在的确切语法或任何怪癖。

答案 2 :(得分:3)

如果我想总结一下,我会说ACM Java Libraries的主要目标是让你从语法中解脱出来,帮助你专注于这个概念

ACM Java Library包是向新手介绍编程概念的绝佳工具。正如您所看到的,演讲的标题是编程方法,而不是编程Java。

希望它澄清

答案 3 :(得分:0)

我处于同样的情况。我决定使用当前的Java技术进行分配,例如在JavaFX中执行图形部分,而不是学习我不会在其他任何地方使用的ACM。当然,对于绝对的初学者来说,这可能不是最好的方法,他们可能会发现最简单的方法就是坚持使用ACM。

如果它有帮助,我将我的课程作业放在GitHub中:
https://github.com/bmaupin/coursework/tree/master/cs106a-stanford

例如,这里是目标分配:https://github.com/bmaupin/coursework/blob/master/cs106a-stanford/Assignment2/Target.java