有没有办法为R闪亮的应用程序生成文档?
在没有文档的情况下维护一个闪亮的应用程序变得非常困难。
似乎所有测试/文档的生态系统都是为R包结构创建的。也许我们可以为闪亮的应用程序模拟/扩展此行为?
一个例子:
反应式表达式通常是R闪亮元素,可以包含复杂的数据结构。
filtered_dat <- reactive({
dx[ NAME == input$crr & TOU == input$tou &
PlotYear == input$year. & PlotMonth == input$season]
})
为了提供更多上下文,我在这里使用R shiny构建完整的Web应用程序。所有业务逻辑都包含在一个独立的包中。
为了测试Ui,我认为它很复杂(例如可以使用Rselenium),但是从roxygen2
注释生成doc只是解析。拥有这样的工具应该很容易。
答案 0 :(得分:1)
这是一个很好的问题。你如何用Shiny创建一个复杂的清晰Web应用程序?我相信组织一个庞大的项目是Shiny架构的弱点。
首先,Shiny仅在一个html文档中创建一个Web。本文档分为几层,以开发正确管理图层所需的庞大应用程序。但是,这件事存在一个重大问题,你如何组织代码呢?
嗯,这里有不同的方法可以做到这一点。事实上,您可以应用不同的方法,如Joe Cheng:
就我而言,在一个庞大的项目中,我实现了MVC模式,但使其适应了Shiny体系结构。
答案 1 :(得分:1)
没有一个理想的解决方案,但这基本上就是我正在做的事情,以处理我的闪亮应用程序,以创建一个强大的,“文档化”的闪亮应用程序:
典型的包将具有以下结构:
R
ui-view1.R
ui-view2.R
server-server1.R
server-server2.R
controls.R
这是一个例子:
app
ui.R
server.R
global.R
views
view1.R
view2.R
servers
server1.R
server2.R
init
global1.R
gloabl2.R