初步想法
在安装Clojure CLI时包括一个`.config/clojure/tools/project.edn`配置文件,当执行命令`clojure -Tproject create`时会运行seancorfield/deps-new。
这似乎可以提供一个解决方案,以解决当前问题,而不引入显著的设计変更到Clojure CLI。
或者该类可以克隆(或下载用户配置的zip存档),其中包含相关的别名和工具,提供此功能而无需直接为Clojure CLI设计项目工具。
> 假定git clone在范围内,因为有很多方法可以这样做,例如桌面UI、Web UI等,所以似乎不会超出原作者的目标受众(我多次与使用无代码产品的人采用这种方法)
理解超最小型项目的价值
我难以理解极端最小型Clojure项目的好处,部分原因是我认为需求中并未详细说明其用途(课程大纲的范围是什么)
进一步说明Clojure的授课方法和所教授内容的范围,将有助于理解这一价值。否则,它似乎非常具体地针对原作者的需求,而不是对社区有用的工具。
我的顾虑是
1. 依赖于隐含的配置知识
如果项目配置文件中只有`{}`,那么自然会引发关于它是如何工作的疑问,进而引出讨论:Clojure CLI是如何引入Clojure依赖并添加`src`到类路径的。
2. 缺少学习示例
包括最简单的`:paths`和`:deps`配置可以提供一个简单的方式来展示添加额外配置时所需的语法(这很难说是否在范围之外)
同样可以认为包括别名,例如测试运行器
3. 为特定用途创建东西
我认为在没有考虑更广泛社区需求的情况下,不应在Clojure CLI中引入项目创建工具。至少在发布的版本特征之外。
重提旧事
clj-new和deps-new已经提供创建项目的方法,一个最小的临时模板似乎满足了原作者的需求(据我有限的理解)
https://github.com/seancorfield/deps-new#create-a-minimal-scratch-project
这可以作为课程安装说明的一部分(包括Java和Clojure CLI)或复制到学生电脑上的用户配置。
还有更多的问题,但那完全取决于原作者请求的范围。