Я люблю Руби! Мне это нравится по той же причине, по которой мне нравится программировать на Python. Он настолько интуитивно понятен, а встроенные методы упрощают решение проблем. Если вы когда-нибудь задавались вопросом: «Есть ли способ для этого?», вероятно, он есть.

Вам не обязательно использовать встроенные методы Ruby, но их очень много, и вы даже можете связать их вместе, чтобы достичь желаемого результата. Эти встроенные методы могут помочь вам сократить длину программирования, превратив то, что заняло бы 5–6 строк, в 1.

Ниже я привел несколько примеров того, как с помощью этих методов можно рефакторить код ruby ​​для более упорядоченного программирования.

Во-первых, вот базовый цикл для поиска слова «игла» и возврата индекса, в котором это слово было найдено в массиве:

Вот пример того, как это можно реорганизовать, используя встроенный в Ruby метод .index для возврата той же информации:

В следующем примере цель состоит в том, чтобы суммировать наименьшие значения из двумерного массива или найти сумму минимальных значений в каждой строке. Базовое решение цикла может выглядеть так:

А вот рефакторинг решения, в котором используется встроенный метод .sum и вставляется метод .min для поиска наименьшего числа из каждого массива:

Есть несколько способов найти эти доступные методы. Гуглом можно пользоваться, конечно. Если вы добавите .methods к классу, например String.methods, вы получите список доступных методов. Вы также можете проверить https://ruby-doc.org/core-2.3.1/ для получения актуальной информации.

Попробуйте рефакторинг, надеюсь, вы полюбите Ruby так же сильно, как и я!