Javadoc 有了暗色模式!
欢迎查看一项功能增强,用于为Javadoc生成的API文档添加深色主题。在右上角新增了一个按钮,点击后会弹出一个菜单,用于在不同主题之间切换。可选主题包括“浅色”、“深色”和“系统设置”(遵循系统级主题设置)。所选主题会在浏览器会话中保存并保持。
生成的文档可在此查看(第 5 版,仅限 java.base
模块)。
下方的截图展示了两种主题以及如何在它们之间切换。
欢迎查看一项功能增强,用于为Javadoc生成的API文档添加深色主题。在右上角新增了一个按钮,点击后会弹出一个菜单,用于在不同主题之间切换。可选主题包括“浅色”、“深色”和“系统设置”(遵循系统级主题设置)。所选主题会在浏览器会话中保存并保持。
生成的文档可在此查看(第 5 版,仅限 java.base
模块)。
下方的截图展示了两种主题以及如何在它们之间切换。
诚实问题:你们中有多少人会阅读Javadocs?
我只是让Maven和Gradle下载源代码,然后通过IDE阅读。
大约每天50次以上。
如果你访问搜索页面,然后点击“附加资源”,他们会告诉你如何设置浏览器,使用标签自动搜索javadocs。
如果我在浏览器中输入“javadoc”后跟一个空格,接下来输入的字母将被搜索到JavaDoc索引中。这样可以轻松跳转到文档。
只要有Javadocs,我就会一直阅读。Javadocs提供了下载源代码时会遗漏的上下文信息。
例如,度量单位很少写入变量名称,而是在 Javadocs 中提及。
我讨厌人们从源代码自动生成 Javadocs,因为这只是对代码的重复陈述,缺乏上下文。
我最讨厌的就是这种情况。还有源代码中的Javadoc注释,这些注释没有任何信息。
类Person
1行声明私有字符串地址
3-4行添加Javadoc注释“Person的地址”
比无用更糟糕
我正在处理一个API,其Javadoc文档只是对源代码的复制粘贴。从API作者那里获得答案本身就是一项艰巨的任务。我已经在会议上抱怨了一年,哈哈。
并非所有人都拥有源代码或知道如何获取它,所以我勉强理解这一点。从源代码生成Javadoc是可以接受的,只要源代码没有被污染。
我无法容忍的是将Javadoc标记直接写入源代码——这通常会使行数大幅增加——却没有添加任何额外信息。这使得查找人类撰写的非trivial信息变得像寻找彩蛋一样困难。
每当我想链接特定部分时,例如在 /r/javahelp 上。
完全正确。大多数时候我在 IDE 中阅读它,但我不会把截图发给别人……
我确实会这样做,有时比翻找IDE文档更方便
我曾为客户发布过一个API,并在网站上提供了Javadocs。我们内部也使用它。这迫使开发人员保持Javadocs的更新。
我偶尔会这样做。
我认为这两者本质上是相同的。这篇文章似乎暗示所有信息都来自同一个来源,只是呈现方式和消费方式不同。
一直如此。有些非常好的JavaDoc提供了大量在代码中难以理解的上下文,例如流。流的源代码极其复杂,只是添加了大量(有时有趣的)噪音。
GroupLayout 的文档非常出色,当年我做 Swing 时,它真的帮助我理解了布局管理器的概念。
JavaDoc 不是可读性强的代码,但它算是次优选择。
酷!
我支持这个 100%
JavaDoc 真正需要的是一个彻底的重新设计,以使整体文档更加友好。例如,我会给最常用的用例示例赋予更多的(远更多的)突出地位。
让我们比较Java与C#的文档,例如。
https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html
https://learn.microsoft.com/es-es/dotnet/standard/base-types/stringbuilder
Java 的文档甚至没有示例!
如果 Oracle 有人在看,请、请、请重新设计并现代化 Javadocs!
这并不是缺乏现代化,而是该类别的原始开发者没有提供示例。
你可以通过邮件列表发送消息,并提出修改 Javadoc 以提供示例。但他们可能会告诉你,该类太简单了,根本不需要示例。
“系统设置”选项指的是什么?环境变量?某种操作系统设置?
通常通过浏览器提供的操作系统设置。
当您在设备上安装浏览器时,它会从计算机中获取一些信息,包括操作系统、操作系统版本以及其他内容——包括操作系统的深色/浅色模式。
这是我五年前提出的请求 🙂
我四年前提出过一个请求,希望将搜索结果设置为链接(以便可以通过 Ctrl+点击在新标签页中打开)。现在才开始实施。
https://bugs.openjdk.org/browse/JDK-8284499
JDK 进展缓慢,但往往能做出正确的决策。
这对我很重要,因为我大部分开源项目的文档(除 README 外)都依赖 Javadoc。
我提供其中一个项目的链接:https://jstach.io/ezkv/
其余的文档大致类似,虽然我尝试过优化布局,但我的专长不在此处。(顺便一提,该 logo 是手动制作的 SVG XML,就像一场有趣的 logo 设计游戏……)
如果没人记得提及:干得漂亮,先生!
何时能实现方程渲染器?
不确定是否可行。请将请求发送至此邮件列表 — https://mail.openjdk.org/mailman/listinfo/javadoc-dev
这是javadoc功能的官方邮件列表。其他官方邮件列表可在此处找到 — https://mail.openjdk.org/mailman/listinfo
你已经可以轻松嵌入MathJax。几乎从一开始就能做到。
这是2012年的一篇文章,展示了这一点:
https://vitaut.net/posts/2012/beautiful-math-in-javadoc/
我认为 LaTeX 也是支持的
https://doclet.github.io/
编辑:我从未使用过这个特定的,但还有其他类似的。
天啊,XML。但总比没有好。
另外,我之所以发表这条评论,是因为我注意到<plus></plus>元素被打开后立即关闭,显然它并不打算包含所有被加法运算的元素[添加] 🙂 看来这对人类来说会是一场噩梦……
读完整篇文章。
仅仅因为我已经读完整篇文章——以及维基百科页面以确保文章没有拼写错误——并不意味着你让我做我已经做过的事情时,你的观点是显而易见的。我明白这可能让你感到满足。
除非你认为,当开发者编写只有自己能维护的代码时,这是一种天才的表现?
请恢复iframe渲染功能,拜托了,谢谢。
我确实有点怀念它,但右上角的搜索栏也基本满足需求。而且,当你想放大界面时,不清楚如何将左侧内容移开。
我主要是为了浏览Javadocs而怀念它。
我讨厌模态搜索。
你仍然可以使用这个来实现——https://docs.oracle.com/en/java/javase/24/docs/api/overview-tree.html
你讨厌它什么?
赞同!
我恳请添加高对比度深色模式选项,类似于这个示例 — example。
由于这是在网页浏览器中显示的,我认为所有这些问题最好通过浏览器扩展来解决。但这并不意味着不应该添加此功能。
浏览器如何实现这一点?最终,将一个主题转换为深色模式主题的方法并不清楚。这实际上是设计师需要解决的任务。