Я нещодавно більше вивчав динамічні типи в C #. З деякими прикладами, які я зрозумів, як тільки компілюється код, його не потрібно перекомпілювати знову, але можна виконати безпосередньо.
Я вважаю, що гнучкість, надана ключовим словом, фактично може змінювати тип даних за бажанням - велика перевага .
Питання,
Чи є якісь специфічні недоліки, окрім неправильних викликів динамічного методу, які викидають винятки з часу запуску, про які розробники повинні знати перед початком реалізації.
dynamic
в C # означає, що вам не доведеться відмовлятися від IronPython, якщо все, що вам потрібно, - це динамічне введення невеликої частини вашого коду. Для оцінювача виразів я мав великий успіх, використовуючи dynamic
для представлення операнди виразу та результати оцінювання.
dynamic
, плюс я хотів би, щоб я знав про IronPython, коли я розробляв .Net - це могло б зробити деякі речі, які ми намагалися зробити набагато простіше.
object
чи прямого типу ролі кодовим запахом. Майже в кожному випадку це означало, що я або хтось із моєї команди не створили відповідний інтерфейс для цієї функції. Я здогадуюсь, що якби я зараз використовував C # 4, я б почувався майже так само, як і щодо використанняdynamic
. Я можу побачити випадок для цього, якщо ви зробите все динамічним, але в цьому випадку ви, можливо, також вибрали в першу чергу динамічну набрану мову. * 8 ')