2024年Clojure调查问卷中分享您的想法!

欢迎!请查看关于页面以获取更多关于如何使用本站的信息。

+2
工具
编辑

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

这些程序对经验丰富的程序员来说效果很好,他们可以轻松地弄清楚这些事情。然而,当谈到降低新手入门门槛时,这并不理想,会导致糟糕的第一印象。

我在针对几乎没有任何Clojure或编程经验的初学者的“入门Clojure”研讨会上提到了上述指南。我亲眼看到,人们在他们的系统上安装并使Clojure正确运行时遇到的困难,尤其是Windows用户。

允许用户在一步内安装Clojure及其所有依赖项,将使人们更容易安装Clojure并显著提高新手的用户体验,这对于增加曝光度和采用率至关重要。

为此,我建议为所有操作系统提供官方的“下载并双击安装程序”。为了获得灵感,请查看其他语言提供的安装程序,例如PythonGo。“只下载此安装程序并运行它。就这么简单。”

此外,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,也许在那些环境中以外,我认为将事情变成一个二进制安装的一个方法是用 babashka。我们可能能够制作一些启动项目,其中既可以使用 JVM Clojure,也可以使用 babashka。这样一来,人们就可以轻松安装所需的内容,以尝试语言并为生产性的东西提供一条很好的前进路径,使安装 Java 的努力更有价值。

感谢您的建议,Peter!我有一个(可能有点天真)的后续问题关于JVM:为什么很难制作出安装某些JVM版本的同时安装Clojure的二进制安装程序?我认为JVM是超级普遍、可移植和可嵌入的。再次,请原谅我的无知,因为我之前对Java和JVM的经验很少。
正如PEZ提到的babashka一样,bb clojure <args> 与 deps <args> 是相同的,因为babashka已经使用了deps.clj。所以,如果您已经有了bb,就没有必要单独安装deps.clj。
0 投票

大家好,我是一个只使用Windows进行开发环境的开发者。请注意,我还安装了双启动linux和WSL2,但我更喜欢使用带有cmd.exe的Windows。我正在使用Windows来开发Python、Elixir和Java。需要注意的是,Clojure需要安装PowerShell,并且似乎不提供任何替代方案。

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

原始问题中提出的解决方案;“只下载这个安装程序并运行它。就是这样。”将是理想的。在路径中安装可执行文件并使用它。您还可能想考虑讨论lein;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的深层血缘关系已经是一个巨大的助推器火箭,但未来直接与源代码存储库的连接,免受包装步骤或中间人经纪jars的限制,更接近Clojure的精神。

...