Есть ли сценарий, когда программист использует IL в качестве основного языка для написания кода - PullRequest
3 голосов
/ 03 апреля 2011

Большинство разработчиков используют один из основных языков .NET (например, c #, vb.net, c ++ / cli и т. Д.) Для создания своих приложений / разработчиков.Мне было просто интересно, будет ли кто-нибудь использовать Intermediate Language (IL) в качестве основного языка для своей повседневной работы программистом.

Ответы [ 3 ]

1 голос
/ 03 апреля 2011

Я не могу представить ситуацию, когда вам это понадобится. Если предположить, что компиляторы .NET достойны, было бы разумно (и более эффективно с точки зрения затрат времени на кодирование) оставить оптимизацию на уровне IL компилятору, а не доверять себе их выполнение.

За время, необходимое для написания некоторого кода на IL, вы могли бы в 10 раз увеличить объем работы на C #, и компилятор .NET, скорее всего, справился бы лучше, чем мы бы тоже оптимизировали его.

1 голос
/ 04 апреля 2011

Хотя я согласен с другими ответами, я хотел бы добавить, что есть несколько случаев, когда полезно написать IL:

  • генерация динамического кода (с использованием Reflection.Emit),хотя обычно это делается для очень короткого фрагмента кода IL
  • Если вам нужно сделать что-то, что поддерживается CLR, но не вашим обычным языком
1 голос
/ 03 апреля 2011

Нет, нет никаких причин для программирования на IL, если вы не обязаны это делать.

IL не изобретен как язык программирования. Это (как следует из названия) промежуточный язык - тот, который генерируется как вывод языка высокого уровня, а затем компилируется в машинный код, обычно во время выполнения JIT-компилятором.

...