2024 Clojure状态调查!分享您的想法吧。

欢迎!请参阅关于页面以了解更多有关如何使用本网站的信息。

+2个投票
工具
编辑

官方入门指南展示了如何在macOS、Linux和Windows上使用命令行工具安装Clojure及其依赖项。

这些程序对有经验的程序员来说效果很好,他们可以轻松找到解决方案。然而,对于降低入门门槛以适应初学者而言,这并不是最佳选择,这也可能导致第一印象不佳。

我在针对那些几乎没有Clojure或编程经验的初学者举办的“入门Clojure”研讨会中使用了上面提到的指南。我亲眼目睹了人们如何在他们的系统中安装Clojure并正确使用它,尤其是Windows用户。

如果用户可以一步安装Clojure及其所有依赖项,这将使人们更容易安装Clojure,并显著改善新手的用户体验,这对于提高曝光率和采用率至关重要。

为此,我建议为所有操作系统提供官方的“下载并双击安装程序”。为了获得灵感,您可以查看其他语言如Python或Go提供的安装程序。例如,“只需下载此安装程序并运行即可。”

此外,Scala有一个出色的网站,有两个选项来指导初学者和高级用户使用不同的安装指南。鼓励初学者在不安装任何软件的情况下在浏览器中尝试Scala。对于Clojure,我们可以引导初学者尝试CalvaMaria

总之:我们可以从其他编程语言生态系统中汲取灵感,为新手的安装过程创造更顺畅的体验。新手的体验从发现到安装过程。

请注意,在Clojurians Slack中有一个相关的讨论正在进行中。

4 个答案

+3

使事情变得更简单的一个尝试是deps.clj项目,它提供了官方Clojure工具的即插即用替代品。请参见https://github.com/borkdude/deps.clj。它提供了一个独立的二进制文件、uberjar和babashka脚本,它们都执行相同的功能。我特别听说Windows用户安装它非常容易。

感谢deps.clj,@borkdude!自从我们将其与Calva捆绑在一起后,我们已经能够帮助许多Windows用户尝试在编辑器中使用Clojure,并在开始安装Clojure之前建立一些兴趣。
+1

我认为没有一条路径可以一键二进制安装Clojure。需要Java,并且由于机器和操作系统的不同,安装方式会有很大差异。可能是一个开发容器,但它将问题转移到还需要安装Docker上。

在你这样的工作坊上,Leif Eric,以及可能在外面这个环境下,我想一种把Clojure变成一键二进制安装的方法是使用babashka。我们可能可以制作一些入门级项目,其中可以使用JVM Clojure或babashka。这样人们就可以有一个简单的方式来安装他们需要的,以便尝试这种语言进行一些有成效的工作,并为前进提供一条美好的路径,使安装Java的努力更加有价值。

感谢你的建议,彼得!我对 JVM 有一个(可能很天真)的后续问题:为什么在安装 Clojure 时安装某个 JVM 版本这么困难?我认为 JVM 是非常普遍、便携和可嵌入的。再次为我心中的无知道歉,因为我之前对 Java 和 JVM 的经验很少。
就像 PEZ 提到的 babashka 一样,bb clojure <args> 与 deps <args> 相同,因为 babashka 已经使用了 deps.clj。所以如果你已经有了 bb,就无需单独安装 deps.clj。
0 投票

大家好,我是一名仅使用 Windows 作为开发环境的开发者。请注意,我还安装了 Linux 双启动 WSL2,但我更喜欢使用 Windows 和 cmd.exe。我在 Windows 上使用 Python、Elixir 和 Java 进行开发。需要考虑的一点是,Clojure 需要安装 PowerShell,并且似乎没有提供任何替代方案。

我真的很推荐为不使用 PowerShell 的人提供安装 Clojure 的解决方案;我所认识的知道大多数使用 Windows 的开发者都不使用 PowerShell,而是使用好的 old cmd.exe。Powershell 主要用于 Windows 管理员;它对开发者和其他使用环境没有任何价值。

最初问题中提出的解决方案;“只下载此安装程序并运行。就这些。”将是理想的。将可执行文件安装到路径中并使用。你也可以考虑谈谈 lein;它在 Windows 上运行良好,无需 PowerShell,因此可以作为不想使用 PowerShell 的人的解决方案。

by
在我看来,“入门/其他运行Clojure的方式”应该提到Leiningen作为替代方案,因为它是“运行Clojure的另一种方式” ;) 此外,我发现Leiningen的用户界面仍然更好,尤其是对于新手用户。

安装和启动repl

## Leiningen

1. 获取“lein”脚本。
2. 运行:lein repl。
3. 连接您喜欢的编辑器。

## Clojure工具

1. 获取安装程序。
2. 运行它。
3. 运行“clj”或“clojure” -r。
4. 新手用户询问:clj和clojure之间有什么区别?
5. 哎哟,我已经启动了REPL,但我无法将我的编辑器连接到它...
0 投票
by

“对新手用户更易于安装”已完成!让我们将其拆分。

“对新手用户更易于安装”意味着无需使用管理员权限;无需承担承诺或面临意外的复杂结果;文件显然是分区的(例如,在1个目录内),以便于擦除并重试。

另一方面,“易于安装”不仅是一个更具挑战性的问题,而且也许有点次要。当某人对其试用感到兴奋时,让我们记住,这些人是最顶尖的1%,他们知道他们是否甚至“需要”安装,如果需要,他们会对被给予的任务性质之外的任何额外待遇感到高兴。

Leiningen树立了一个很好的榜样(很难超越“下载lein”和“./lein”),它甚至没有系统级安装的选项,避免了复杂化。尽管如此,Clojure的官方入门页面并不是一个建议Leiningen的好地方。Lein的深刻Maven血统是一个巨大的助推火箭,但直接与源代码仓库连接的未来,无需打包步骤或中间人 Broker jars,更接近Clojure的精神。

...