莆田专业网站建设公司,wordpress多说评论插件,网站备案登录密码找回,中国免费建站网java小细节他们说#xff0c;Java太冗长了。 您可以找到Hello World程序的比较#xff0c;这些程序在ruby中使用2行#xff0c;在Java中使用10行#xff0c;而要读取文件#xff0c;您需要使用Java 20行和php中1行。 尽管示例经常被夸大#xff08;例如#xff0c;计算导… java小细节 他们说Java太冗长了。 您可以找到Hello World程序的比较这些程序在ruby中使用2行在Java中使用10行而要读取文件您需要使用Java 20行和php中1行。 尽管示例经常被夸大例如计算导入次数但确实Java程序需要更多的代码行。 但这根本不是一件坏事。 相反这是我真正喜欢的东西。 实际上这与语言的冗长无关–除了匿名类-而不是闭包之外没有什么其他语言过于冗长。 它是关于核心库的。 所以–我喜欢以冗长的方式编写核心库的方式。 两个例子 拿java.io。 包。 读取和写入文件流等。这有点难掌握一开始您需要复制粘贴很长的代码片段以仅读取文件。 但这迫使您了解流和读者的抽象。 其他语言则很简单 var contents readFile(path)很酷但是您永远不会被迫了解I / O管理的工作原理。 如果读取失败会怎样 对文件进行部分读取就足够了吗 您可以讨价还价吗 您应该关闭资源还是将其自动关闭 您无需为打招呼世界程序回答这些问题但很快就需要了解它们。 不太冗长的语言对您隐藏了它们并推迟了这种“抽象启示”。 Servlet API。 乍一看它看起来有些毛茸茸的类和接口。 但是很快您就会意识到整个过程是如何工作的–不仅在Java中而且在http请求的一般生命周期中。 因为您需要一个Servlet对象请求和响应对象以及要写入的输出流所以您了解了整个请求-响应周期。 我这里有一个个人例子。 我已经在学校写PHP一年了。 然后一个月的Java和servlet使我完全明白了整个过程。 PHP非常易于使用– $_GET[foo], session_start()以及之间的一堆HTML。 因此我不必理会底层的机制。 Java迫使我这么做。 您可能会说–很好它迫使您学习这些重要的概念和抽象但是它也应该为您提供一种轻松完成事情的方法。 但是如果核心库本身具有这些选项则所有教程都将显示这些选项而较低级的API将会被遗忘。 因此解决方案是–第三方库。 Apache和Google给您这些。 有了番石榴和apache commons您便拥有了所有这些单线。 Joiner.on(,).join(array) FileUtils.readLines(..) Joiner.on(,).join(array)等等。但是您不是从这些库开始的而是学习了如何在较低的层次上工作–仍然需要知道。 参考资料 为什么我喜欢我们的JCG合作伙伴 Bozhidar Bozhanov在Bozho的技术博客上看到的 Java的详尽程度 相关文章 讨厌Java吗 您正在打错仗。 选择一种新的编程语言来学习 编写不烂的代码 如果我有更多的时间我会写更少的代码 翻译自: https://www.javacodegeeks.com/2012/01/why-i-like-verbosity-of-java.htmljava小细节