在我正在开发的软件包中,提供了几种不同的估算方法。通常,这些都取决于其他软件包提供的功能(在某些情况下,具有版本要求)。
到目前为止,我只是简单地将所有这些软件包放在我的描述文件的“依赖”部分,但是我自己的软件包现在“依赖”的软件包数量,即使大多数用户只有其中一个将永远是相关的,所以我希望只能根据需要安装/加载包?关于编写R软件包的文档有时候有点简洁,并且自最近的R版本以来有所改变,所以也许这里的任何人都可以提供最新的吗?
只是为了说明,这是典型的模式:
doSomethingImportant<-function(params, workerFunction)
{
#blabla
workerFunction(partofparams)
#moreblabla
}
然后我会
wfA<-function(partofparams)
{
#use something from package A
}
和
wfB<-function(partofparams)
{
#use something from package B
}
用户可以将此函数称为:
result<-doSomethingImportant(params, wfA)
每个用户通常优先选择其中一个wfX。理想情况下,当用户(第一个)使用其中一个wfX时,我希望按需安装/加载它,但如果不可能,我想尽快发出警告它会失败(在事实上,在我的情况下,在从doSomethingImportant调用workerFunction的任何实际尝试之前可能会有很多准备工作,如果最终没有正确的包,那么这将全部丢失。
您能否建议如何正确处理此问题并尽可能方便用户使用?