はじめに
僕はRails
は触ったことがあるけどRuby
はほとんど触ったことがなかったので、今回はRubyスクリプト
を書いてみた。
※しかもGithub
に公開するのも初めて。
・・・と言っても、ここで紹介するのはRuby
の事ではなく作ったプログラムの査定についてです。
今作っているプログラムは幾らですか?
プログラムの値段って大体において適当ですよね?
私も適当ですw
そこで、思い立ったのが適当に係数を与えてプログラムを査定すると幾らくらいになるんだろうか?
と今日突然思い立ってこちらのプログラムを作って見ました。
実行方法
このプログラムはスクリプトなのでGithubからクローンして実行してください。
$ ruby how_much.rb rails_root_path [output_folder]
こんな感じで出力されます。
設定ファイルで自由に係数を変えれます。
config/app.yml
に値段の元となる係数などを定義していますので、プロジェクトに合わせて金額をつけてください。
# アプリケーションに関する設定内容
app:
# 基本設定
base:
# 対象外にするフォルダ
# ※外部から持ってきたフォルダは対象外にすると正確になる。
ignore_dir:
- .git
- tmp
- log
- test
- vendor
- .idea
# 対象外にするファイル
ignore_file:
- bootstrap.js
- bootstrap.min.js
- schema.rb
# デバッグフラグ
debug: false
# 解析するプログラム単位での設定
program:
# 基本設定
base:
# ファイル一つに対する金額
file_price: 800
# 一行毎に発生する金額(円)
line:
# 通常行の値段
line_price: 100
# 制御処理行の値段
proc_line_price: 300
# コメント行の値段
comment_line_price: 50
# メソッドに発生する値段(円)
method:
price: 500
# メソッド行数が長い場合に発生するペナルティ(コメントは含まず)
max_line: 20
# メソッド行数が長い場合に引かれる金額(通常の値段は別途入ります。)
# 設定行が長い場合は相殺されるので丁度良いかと。
max_line_over_price: -90
# Ruby設定(baseと同じ)
ruby:
# Migrate設定
migrate:
# ファイル一つに対する金額
file_price: 2000
...
パーサー
model
配下にパーサー(と呼んでい良いのか微妙なもの)があるので、プログラムに合わせて追加する事ができます。
もちろんプルリク
大歓迎です!
プログラムの説明について
惰性で作ったプログラムなので、、、説明するほどの事はないですが・・・
ストック数が多かったら別記事で説明します!
筆者について
筆者はTownSoftで活動している個人事業主です。
お仕事引き受けます!