Ruby/Идеология: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 501:
Но все равно, предыдущий код "кривой", так как придется писать отдельный код (внутри метода) для обработки данных класса <code>String</code> и <code>Array</code>. А чем меньше метод, тем лучше (имеется в виду размер кода). Правильней было бы использовать такую возможность Ruby, как расширение класса.
 
{{info|Расширение класса — это механизм, который позволяет динамически добавить или переопределить метод. Это новое ООП[[w:Объектно-ориентированное программирование|ООП]]-понятие, которое подменяет собой [[w:Полиморфизм в языках программирования|полиморфизм]] в динамических ООП-языках}}
 
Давайте реализуем предыдущий код, но с использованием расширения класса.