Refactor, Refactor, Refactor
Published on 02 Dec 2016
by Alexander Garber
![]() |
Original Code
from_file, to_file = ARGV
puts "Copying from #{from_file} to #{to_file}"
# we could do these two on one line, how?
in_file = open(from_file)
indata = in_file.read
puts "The input file #{indata.length} bites long"
puts "Does the output file exist? #{File.exist?(to_file)}"
puts "Ready, hit RETURN to continue, CTRL-C to abort."
$stdin.gets
out_file = open(to_file, 'w')
out_file.write(indata)
puts "Alright, all done."
out_file.close
in_file.close
Extremely Refactored Code
Acknowledgement: Picture from Flickr
File.new(ARGV[0], 'w').write(File.read(ARGV[1]))