Rubyで小さなツールを作る時のtips
メインファイルの作成
main.rbを用意し処理を1ファイルにまとめます。 実行する同一処理の増加などによってはオブジェクト指向の考え方に則って構造化していきます。 走り出しから構造化を意識してコードを書くのではなく、とりあえず処理を実行できるところまで作ることを意識します。
別ファイルの読み込む
ファイル毎に処理を分けた場合には実行ファイルにファイルを読み込む必要がある
基本的はrequire
で読み込む。
同一ディレクトリ階層の場合は、requireでカレントディレクトリを示すドットを打つ
optparseでパラメータ管理
CLIで実行する際にオプションを渡したい時あります。
そんな時は optparse
を使うと便利です。
ARGVの機能を簡単に導入できます
require 'optparse' opt = OptionParser.new opt.on('-a') { |v| p v } opt.on('-b') { |v| p v } opt.parse!(ARGV)
ARGVはコマンドライン引数のこと argument vector (引数の配列)
手軽な構造体
OpenStruct
ruby-progressbarで進捗表示
実行時間が長い処理を行っている時進捗状況が目に見える形でわかると便利ですよね。
ruby-progressbar
を使うことで進捗状況を可視化することができます。
利用方法は簡単です。下記を参考に使ってみましょう
インストール
gem install ruby-progressbar
実行処理
require 'ruby-progressbar' pb = ProgressBar.create 10.times do pb.increment sleep 0.1 end pb.finish