self не нужен. И если где-то будет еще локальная переменная dir, то могут возникнуть проблемы.class LogParse
attr_accessor :dir
def initialize
@dir = 'test'
end
def some_method
puts dir
end
end
LogParse.new.some_method
def ask(string)
puts string
print '>'
@answer = gets.chomp
end
ask 'What movie do you want to rate?'
puts @answer
if @answer == 'porn'
ask 'What do you name?'
puts @answer
enddef ask(string)
puts string
print '>'
gets.chomp
end
answer1 = ask 'What movie do you want to rate?'
puts answer1
if answer1 == 'porn'
answer2 = ask 'What do you name?'
puts answer2
end
requireпозволяет подтягивать код из других файлов/библиотек.io/consoleвходит в стандартную библиотеку ruby. И что бы её использовать достаточно прописать require, и ничего дополнительно устанавливать не надо.noechoэто один из методов этой библиотеки.STDIN.noecho(&:gets)выполнит gets как обычно, но при этом отключит вывод данных обратно в терминал.https://ruby-doc.org/stdlib-2.5.0/libdoc/io/consol...