Задать вопрос
BitNeBolt
@BitNeBolt

Можно ли использовать это решение вместо аннотаций?

В этой статье разобрано применение аннотации: пользователь вводит команду и аргументы, а программа её выполняет.

Будет ли следующее решение сходим в производительности и удобстве использования:

Создать статический класс, в котором хранить словарь: {команда : ссылка на функцию}. Затем, при получении команды и аргументов вызывать функцию с передачей аргументов?
  • Вопрос задан
  • 87 просмотров
Подписаться 2 Простой Комментировать
Решения вопроса 1
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
Да, без проблем! Я часто именно так и делаю. Все равно используется рефлексия, что в аннотациях, что при конструировании напрямую.
За аннотации - можно аннотировать все что угодно, хоть класс, хоть параметр, хоть функцию.
Без аннотации - нужно придерживаться какого-то интерфейса, особенно, если функции - классы, а так - все едино.

PS. Собственно в конце статьи и указано практически тоже самое
Абсолютно бесспорно, что данную задачу можно решить множеством других путей. Да, всё что можно сделать при помощи аннотаций/рефлекций можно сделать и без них, вопрос лишь в удобстве, оптимальности и размерах кода, конечно же, совать Аннотацию везде где есть малейший намек на то, что получится её использовать - тоже не самый рациональный вариант, во всем нужно знать меру =). Но при написании API, Библиотек или программ, в которых возможно повторение однотипного (но не совсем одинакового) кода, аннотации - бесспорно оптимальное решение.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы