Обе стратегии могут быть действительными и ценными при определенных обстоятельствах.
Когда это возможно, стратегия интерпретации модели, вероятно, лучше скомпилированной, поскольку вам просто нужно изменить свою постоянную модель, чтобы изменить поведение вашей модели.развернутое приложение, без перекомпиляции и развертывания.
Но вам, вероятно, нужно использовать стратегию компиляции, когда:
- вы не можете выразить (или не хотите) 100% требуемой реальностив ваших моделях.В этом случае вы, вероятно, захотите написать ручной код в сгенерированном коде.
- производительность является ключевой проблемой для вашего приложения
Недавно я разработал редактор моделей GUI, интерпретируя его модели наМуха, чтобы сделать полностью работоспособными редакторы форм.Производительность не была проблемой, но, тем не менее, был сгенерирован код для этих графических интерфейсов, поскольку у нас были огромные графические интерфейсы с тысячами параметров (для динамического приложения космического полета) и множество пользовательских поведений пользовательского интерфейса, которые требовали полной реализации дополнительного исходного кода.