Ruby

Ruby/PythonライクにJSが書けるCoffeeScriptでコーヒーブレイク

Python知らないんだけど気分転換に。適当に。 http://jashkenas.github.com/coffee-script/ Jeremy Ashkenas氏がRuby/Pythonライクな文法でJavaScriptを記述する、興味深い試みをおこなっている。同氏が開発した「CoffeeScript」と呼ばれる簡易言語は、"a li…

郵便番号の検索プログラム

とりあえず適当にやりまくればいいってもんじゃないけど、もう考えたって仕方がない。Ralisに移る前にいろいろやっておかないとね。郵便番号を検索するぜ。これはたのしいRubyにのっているもんです。http://www.post.japanpost.jp/zipcode/download.html ま…

mailread.rbを使ってみる

>Ruby\lib\ruby\1.8\mailread.rbのソース class Mail def initialize(f) unless defined? f.gets f = open(f, "r") opened = true end @header = {} @body = [] begin while line = f.gets() line.chop! next if /^From /=~line # skip From-line break if /…

ソースのコメント部分だけを削除したいプログラム1

というプログラムをためしにやっていました。なんだったっけ。1.9で無くなった?mailread.rbをみてみたら、なんかコメントうぜぇとか思いまして。英語読めんわからん。mailreadを読んでみようという前に、勉強がてらコメント部分だけとってしまおうという簡…

はじめてのRubyプログラミングについて

はじめてのRubyプログラミング (TECHNICAL MASTER) 山本 団Amazonランキング:98276位Amazonおすすめ度:Amazonで詳細を見るBooklogでレビューを見る by Booklogこれのこと。その前に、たのしいRuby 第2版 Rubyではじめる気軽なプログラミング 高橋 征義,後…

Ruby勉その23-エラー処理と例外2

例外が起ころうが起こらまいが、常に実行したい処理がある場合はensure節に後処理を記入できるみたいです。後処理っていうみたい。 後処理 構文は、 begin 例外を発生させる可能性のある処理 rescue =>変数 ensure 例外の有無にかかわらず実行される処理 end…

Ruby勉その22「-エラー処理と例外1

というわけで例外処理に入ります。こういうの実装するのって大変なように思うんだけど。だいたいイメージできるものなんだろうか。いろいろテストしてみてから実装したりするのかな。とりあえずやっていきます。 エラー処理について エラー処理の例。 データ…

Ruby勉その21-クラスとモジュール5

モジュールについて。あと例外処理やったら、実践に入ろうかと思います。クラスとMix-inとイテレータについては読めば良いや。Mix-inは時間かかる。 モジュールとは クラスはデータと処理を持った「もの」を表現するためのもので、モジュールとは大雑把に言…

Ruby勉その19-クラスとモジュール3

中盤の山場ですね。しっかり学んでいきます。 定数 クラス内でも定数を定義することができると。例を書いてみます。 class HelloWorld Version = "1.0" end 定数定義してます。私はこれをみたときただの変数じゃねーかと思ったのですが、あー定数って最初大…

Ruby勉その20-クラスとモジュール4

やばいペースが落ちてきた。インフルエンザでリズムが狂ったよ。だいぶ尾を引いた。というかバレンタインだ。チョコくれるクラスならたくさんあるんでしょうが、オブジェクトがないんでしょうね。認識これであってますか。 オブジェクト指向 プログラムの処…

Ruby勉その18-クラスとモジュール2

では実際にクラスを作ってみます。クラスの定義には様々あるそうでくそったれ。覚えるのとか嫌なんだよなー。とりあえず作ってみます。 class HelloWorld def initialize(myname="Ruby") @name = myname end def hello print "Hello, world. I am ", @name, …

Ruby勉その17-クラスとモジュール1

進行具合が悪い。インフルエンザめー。 クラスとインスタンス クラスとはオブジェクトの種類を表すもの。型といい換えてもいいかもしれませんですって。Rubyのオブジェクトは例外なくなんらかのクラスに属している。何かのクラスのインスタンスであるってこ…

Ruby勉その15-メソッド1

インフルエンザはきつい。まだ頭痛い。 「メソッドはオブジェクトに定義されているもので、そのオブジェクトに関連する操作を行うために使われる。」ってかいてあるけれど、クラスじゃなくて?それともオブジェクトクラスのオブジェクトのこと?こういうの困…

Ruby勉その16-メソッド2

じゃあ実際にメソッドの定義をしてみようかな。メソッド定義の一般的な構文は、 def メソッド名(引数, 引数...) 実行したい処理 end となります。別に難しいということもなく。いや実際、処理どうやってかきゃいいかとか、そういうのはイメージできないもん…

Ruby勉その14-繰り返し処理3

繰り返しの制御をする命令が3つありまして。 break 繰り返しを中断して抜ける next 次の回の繰り返しに処理を移す redo 同じ条件で繰り返しをやり直す というものです。これらは繰り返しやイテレータを制御する命令で、なんか使いどころがようわからん。とり…

Ruby勉その12-繰り返し処理1

もうちょっと小分けしてやっていこう。ながくて後から読む気にもならなくなる。間違ったところとか確認していきたいしね。 繰り返し それで繰り返しの処理。これは頻繁に使うらしいね。たとえばどういうときに使うんだろう。わからんけど。イテレータとかあ…

Ruby勉その13-繰り返し処理2

while文から。まあなんて不幸でしょうか。1度書いたモンが消えるという。自動バックアップて意味ないんじゃねーのかこのやろう。やりなおせば頭入るだろうからいいけど。えーと、while文というのはなんでもできる単純な繰り返しです。構文は、 while 条件 do…

Ruby勉その11-条件判断

制御文とか書いてましたけど、こちらでは制御構造といっていますのでそうしましょう。で、制御構造の中でも条件判断について勉学していきます。とてつもなく長くなっているので、絶対鬱陶しい。まずは例題からやっていますね。 #西暦から平成に変換する ad =…

Ruby勉その9-コマンド

コマンドラインからデータを受取って処理を行う方法。どっちかっていうと、こういう機能のことが知りたいですよね。入力してそれを処理するものです。たぶんこれはコマンドプロンプトからしかできそうもないので、仕方が無くそっちから実行したりしてみまし…

Ruby勉まとめ

とりあえずまとめておこうかと。でも違うとこたくさんあるから使えないよ。個人的なもの。参考著。たのしいRuby 第2版 Rubyではじめる気軽なプログラミング作者: 高橋征義,後藤裕蔵出版社/メーカー: ソフトバンククリエイティブ発売日: 2006/08/05メディア: …

Ruby勉その10-オブジェクトと変数・定数

やっと第2部ですよ奥さん。今度はそれぞれの概念のについての説明ってところでしょうか。ただの文章です。Rubyはデータの基本単位がオブジェクトなのですね。だからなんもかんも、すべてはオブジェクトなのだといえるらしい。納得はできるんだけど、いろいろ…

Ruby勉その7-ハッシュ

というわけでハァァッシュ!です。ハッシュやる前は、「なんて近代的な名前なんだ。ビームがでるに違いない」と思っていましたが、連想配列のことだったんですね。連想配列ならある程度phpでやったことがあるのでできるとおもっていたら、全部ぶっ飛んでた。…

Ruby勉その8-正規表現

これ一番苦手というか、意味がわからない。そういえばはてブのホッテントリで正規表現はXMLがどーのこーのとかありましたけど、意味わからない。よって知らなくて良いのです。 正規表現 で、正規表現でできることは、 文字列パターンの一致(マッチング) 文…

Ruby勉その6-配列

消えたorz すっとばそうかと思ったけどもういいよ。確認になるし。 配列 配列とはいくつかのオブジェクトをまとめるオブジェクトとのこと。配列ってのは結局変数なんだから、その変数に敷居作ってそれぞれのオブジェクトをまとめられるってことかな。書き方…

Ruby勉その4-制御文とか

いつも思うんだけど、制御文ていろいろからまってくるとわけわからなくなるのです。phpのプログラムみてるとそれでうあああああああってなる。javaはそんなのみたことないからあれですが、たぶんうあああああってなると思う。そういえばphpってクラスで作ら…

Ruby勉その5-制御文2とメソッド作成とおまけ

時間かけすぎた。疑問点はまとめて、効率よく学習していこう。この本1ヶ月ぐらいで終らそうと思っていたんだけど、いけるんかな。 制御文2 というわけでもう1つ構文ではなくメソッドで繰り返し処理。 timesメソッド 繰り返す回数が決まっているときは、time…

Ruby勉その1-Rubyの文字列

ちなみにこれは教える目的とかいっさないから、もっさいがっさい適当です。 hallo worldから とりあえずhello worldから出力してみようかな。というか、そもそもの初心者だったら「文字列」って文字で疑問に思いますよね。少なくとも私は、「なんだよ列って…

Ruby勉その2-数値と表示

さあ休憩終わり。 数値の表示 というわけで数字を表示するのだ。えーと、とりあえずprintでやってみよう。 print("1") で実行すると、 1 と出ました。よくできました。終わり。ダブルクォートなくても、表示できるんすねー。まあ、シングルでもなんでもでき…

Ruby勉その3-変数とかコメントとか

はいというわけでシンデレラの時間にまたやることになりました。ガンガンやっていこう。もう勢いでやるっきゃないし、オブジェクト指向の概念をちょっと理解してからうっはうはに広がってんだこんちくしょう文句あるか。というわけでまずは変数。 変数やりま…