ARGVの使い方

アーグブイと読むらしい。

コマンドラインから引数として与えられた文字列を要素として持っている配列、と

書いてあるけど、コマンドラインから実行したことが無かったので、

どのタイミングで引数を与えるの?とか、

コマンドライン使わないとダメなの?と思ったけれど、

そこはIDEでも普通に

実行の構成→引数タブ→プログラムの引数

から同じことが出来るらしい。

 

ところでこのARGVという配列、仕様はなんとなく分かったけれど、

いまいち使いどころが想像できない・・・。

わざわざ実行時に与えずとも、プログラムの中で

配列作っちゃえばいいんじゃないの?と思ったけど、その辺どうなんだろう。

ファイルに出力

ファイル関係でまた詰まったのでメモ。

 

open("ファイル名","w")

というメソッドで新規ファイルが作成され、

file = open("ファイル名","w")
処理
file.close

あるいは、

open("ファイル名","w") do |file|
処理
end

で、開く(無ければ新規で作る)ファイルに対して書き込むことができる。

ファイル名の後のwはoptionの一つで、書き込み専用としてファイルを開く(作る)。

他にも読み込み専用、読み書き両用等のoptionがある模様。

ファイルの取り込み

1から10まで順に1ずつ加算し出力するメソッドを作り、

ファイルを取り込むrequireメソッドで呼び出そうと思ったら、

cannot load such file -- number (LoadError)

何回やっても上のエラーが出てしまって先に進めない。

いくら見直しても原因がよく分からないので、ググって調べたところこんな記事が。

Ruby1.9.2以降でrequireする際の注意点 - Qiita

1.9.0時点に出版された本を見ながらやっていたので、

仕様変更を知らずに躓いてた模様。

要約すると、Ruby1.9.2以降は、require "ファイル名"だと読み込まなくなったらしい。

呼び出し元と呼び出すライブラリが同じフォルダにある場合は

require "./ファイル名"

でいいし、違うフォルダにある場合は

require_relative "ファイル名"

というメソッドを使えばいいとか。

同じフォルダにある場合は、どちらのメソッドでも呼び出せるので、

とりあえずrequire_relativeを使っていれば問題は無いのかな?

 

開発環境

マシンは開発・実行ともにwindows8.1。

何一つ環境がない状態からのスタートなので、まずはエディタを入れるとこから。

コード書く→実行する→修正を素早く繰り返せばその分早く身に付きそうだったので、

エディタと実行が同じ画面で出来る(IDEと呼ぶらしい?)RadRailsを選んでみた。

本当はEclipseを使ってみたかったんだけど、導入につまづいて2時間近く経った辺りで

諦めてRadRailsにした。

基本的には途中で分からない単語1つでも出たらすぐググるというスタンスだけど、

それだと最初分からないことだらけで先に進めなさそうなので、

ある程度は無視してとりあえずやってみる方が効率いいのかな?分からないけど。

Ruby始めました

今就いている仕事が続けられそうにないので、プログラマー目指すことにした。

その関係の仕事をしている友人の勧めで、ひとまずRubyから勉強しようと思う。

完全に0からのスタートだけど頑張るぞい!