Я думаю, что большая часть отвращения, которое люди выражают этой функции, сводится к тому, что «это плохая языковая функция, потому что она позволит плохим разработчикам писать плохой код». Если подумать, по этой логике все языковые возможности плохие.
Когда я сталкиваюсь с блоком VB-кода, которому какой-то гений поставил префикс On Error Resume Next
, я проклинаю не VB. Может быть, я должен, я полагаю. Но по моему опыту, человек, который полон решимости положить пенни в блок предохранителей, найдет способ. Даже если вы опустошите его карманы, он вылепит свои собственные копейки.
Я, я с нетерпением жду более полезного способа взаимодействия между C # и Python. Я пишу все больше и больше кода, который делает это. Ключевое слово dynamic
не может прийти достаточно скоро для этого конкретного случая использования, потому что нынешний способ сделать это заставляет меня чувствовать, что я советский академик в 1950-х, который едет на Запад для конференции: есть огромное количество правил и документов, прежде чем я уйду, я почти уверен, что кто-то будет наблюдать за мной все время, пока я там, и большая часть того, что я заберу, пока я там, будет забрана у меня на границе, когда Я возвращаюсь.