Я перехожу от простого кода R к функциям R.Чтобы использовать замыкание R, я обернул 2 функции (аутентификация и загрузка), из которых (загрузка) зависит от необходимости ввода данных от аутентификации.
Насколько я понимаю, если я создаю замыкание, переменные внутризакрытие должно быть доступным для всей внутренней части закрытия.Если это так, то как функция howcome [downloadData] не может извлечь переменные из [authenticationKeys]?
В настоящее время я решаю проблему, располагая (аутентифицировать) и (загружать) в отдельных файлах R и помещая их в главный файл..Р.Проблема, однако, в том, что я затем получаю результат переменных в глобальную область, которая, кажется, не рекомендуется.Кроме того, благодаря поиску файлов я не могу использовать аргументы функций и не могу использовать преимущества функционального программирования, вызывая при необходимости только части кода.
runAll <- function() {
# Authentication
authenticate <- function() {
auhtenticationKeys <- list (
"key1" = 1,
"key2" = 2,
"key3" = 3
)
}
authenticate()
# Download
downloadData <- function() {
# Access authentication keys:
auhtenticationKeys$key1
auhtenticationKeys$key2
auhtenticationKeys$key3
myData <- list (
"open" = 10,
"high" = 11,
"low" = 12,
"close" = 13
)
}
downloadData()
}
runAll()