Для кроссплатформенного (iOS, android) проекта я рассматриваю использование Dart с UI-программированием в Flutter .
Для прямого перевода нынешнего кода Котлина я хочу вызывать функции по их именам. Чтобы быть более точным, я ищу, как написать функцию getFunctionByName так, чтобы следующий код выводил «Ответ 42».?
void function42(String s) {
print(s + " 42.");
}
void main() {
int number = 42;
String calculatedFunctionName = "function" + number.toString();
String calculatedArgument = "The answer is";
Function f = getFunctionByName(calculatedFunctionName);
f(calculatedArgument);
}
То, что я пытаюсь достичь, работает в Kotlin и, кажется, работает в Dart , но когда я попробовал связанный код Dart в проекте Flutter, импорт
import 'dart:mirrors';
не работает для меня. Есть целая нить об отражении во Флаттере , которую я интерпретирую так, что во время написания отражение не работает во Флаттере. Но может быть есть обходной путь для конкретной вещи, которую я хочу сделать?