Почему так важно изучать метапрограммирование и собственные классы в Ruby?

В настоящее время я экспериментирую с Ruby и Rails, и я попал в несколько разделов в учебниках и книгах по метапрограммированию. Многие упоминают, что это важный компонент Ruby, но не вдавались в подробности. Как будто метапрограммирование - это последний рубеж для программистов на Ruby. Исходя из опыта .NET, я изо всех сил пытаюсь понять, почему он якобы так полезен.

  • Какие преимущества дает использование метапрограммирования?
  • Что такое собственный класс и чем он отличается от одиночного класса?
  • В каких ситуациях часто используется метапрограммирование?
  • Какие этические последствия возникают при использовании кода для изменения поведения другого кода, особенно кода, который вам не принадлежит?
8
задан dnatoli 23 August 2011 в 07:30
поделиться