ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

Googleのトップページが鉄腕アトムに!!。。。

2008-04-07 22:08:29 | Weblog

おおお・・・

ここのニュース
Googleのロゴが鉄腕アトムに 誕生日を記念
http://www.itmedia.co.jp/news/articles/0804/07/news063.html


にあるように、4月7日22:00現在、
Googleの日本語版のトップページ
http://www.google.co.jp/

が、鉄腕アトムになってるう!!

こんなかんじ




  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Ruby1.9、Windowsで-その3 数値演算

2008-04-07 17:41:35 | Ruby

シリーズ「Ruby1.9、Windowsで」です。

 前回、「2-2-1.1変数のあらわし方」をやっていて、今回「2-2-1-4 日付、時間」の予定だったのですが、冷静に考えたら、時刻って・・・
   年、月、日、時、分、秒
 って、複数の値でしした。つまり、この「2-2-1.1変数のあらわし方」でやるところではないので、複数の値についてやるときに、書くことにします。
 ということで、今回はその先の「3-1-1.数値の処理(数値演算)」です。

 今回も、irb(インタープリタで、すぐ確認できるやつ)を使い

 お勉強資料に、
オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル 
http://www.ruby-lang.org/ja/man/html/index.html

を使います。



■算術演算

足し算、引き算、掛け算、割り算、あまりは、+ - * / % と用意されているようです。
累乗は、** です。
a=5+2.8のように、整数小数混在もOKです。
ここで、

a=5.5
b=a%5
というように、小数に対するあまりももとめることができます。
(ちなみに上記の場合、あまり0.5になります)

でも、++,--(インクリメント演算子/デクリメント演算子)はないようです。
代入演算というそうですけど、a+=3とか、a -=5とかいう、+=,-=はあるみたいです。





■その他の演算

 ビット演算
 比較演算子
 代入演算

などがあるようです。

くわしくは、
Ruby/演算子
http://www.bugbearr.jp/?Ruby%2F%E6%BC%94%E7%AE%97%E5%AD%90

を参照してください。




っていうことで、今回はここまで



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

モデルから、プログラムを作成するには(MDA)、UMLだけでは、足りない?

2008-04-07 13:59:06 | Weblog

 オブジェクト指向で、修正による影響をうけにくくする方策で書いてきたことを総合すると、システムを作るには、

 ・出力したい結果から、(正規化などして)必要なデータを割り出し、
 ・その必要なデータを生成する業務プロセスを抽出して、

 入力したものが業務プロセスにより加工され、目標となる出力ができることを確認しないといけない。
 (逆にいえば、これが出来れば、システムは作れる)

この「入力したものが業務プロセスにより加工され、目標となる出力ができる」過程がモデルであり、ここには、
 ・「入力されるもの」、「出力されるもの」といった情報と
 ・それを処理する業務プロセス(処理)
が記述されていることになる(情報+処理=情報処理)。

 この情報部分のモデルがプログラミング上におち(=テーブル、ファイルなどで表現される)
 業務プロセスに対応するプロセス(メソッド、関数)が、すでにあるか、あるいは、既存のものから作れるとき、

モデルはプログラムから自動生成しうる。このモデルから、プログラムへの自動生成がMDAだった。
逆に言うと、情報部分と処理部分が、関連付けてかかれることがなければ、自動生成のしようがないことになる。




 一方、UMLは、情報と処理の流れが同時にかかれることはない。

 情報と処理の両方が含まれるのは、クラス図である。
 で、たしかにクラス図からクラスはつくれるかもしれないが、クラスのメソッドの処理内容はクラス図にはかかれないので、そこまで自動生成できない。
 アクティビティ図、ユースケース図には、今度は、情報(データ)をそこまで詳しく書き込まない。

 このようなかんじで、UMLには、情報とモデル、完全にかかれることがないので、モデルがプログラムに落としこめるレベルまで、はっきりしない。そのため、これでは、MDAとして、プログラムの自動生成までいくかどうか、疑問である・・・


・・・とか書いたら、UMLやってるひとに、おこられそうだ。。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

正規表現でのチェック方法を考える-その2 整数と通貨記号

2008-04-07 10:52:00 | 正規表現

 チェックは、正規表現でやれば、いろんな言語でいけそうなので、正規表現で、いろんな値をチェックする方法を考える、シリーズ「正規表現でのチェック方法を考える」
 前回は、正の整数を考えたので、今回は、整数(負の数も含む)と、ついでに、通貨記号についても考えてみたいと思います。

 なお、このシリーズにおいて、説明文中の¥は、断りがなければ、半角の円マーク(ないしは、バックスラッシュ)に変えてください(入力が面倒なので全角にしています)




■負の数もふくむ場合

 前回、整数を、

   /^(0|[1-9]¥d*)$/

 と表現しました。ここで、-の記号をつけるわけですが、
-0
 っていうのは、へんです。ふつう、0には、符号をつけません。
 そこで、数字のほうだけに、-が、1個あってもよい(つまり?)として、

    /^(0|-?[1-9]¥d*)$/

 としておきましょう。




■通貨記号

 ここでは、円か、ドルとします。
 これが、あっても、なくてもよい。
 かつ、¥0っていうのは、存在するので、
 0と、それ以外の数字の前に、通貨記号をつけ、

   /^(¥¥|¥$)?(0|-?[1-9]¥d*)$/

 としておきましょう。
 なお、他の通貨があれば、¥¥|¥$のあとに、
 | をかいて、そのあと、通貨記号をかいていけばOK




■JavaScriptサンプル
 こんなかんじ
<HTML>
<HEAD>
<TITLE>JavaScriptテスト広場</TITLE>
<SCRIPT LANGUAGE="JavaScript"> 
<!--
function load()
{
}

function mycheck(val)
{
	if (val.search(/^(¥¥|¥$)?(0|-?[1-9]¥d*)$/)	!=	-1 )
	{
	}
	else
	{
		alert("エラー");
	}
}
-->
</SCRIPT>

</HEAD>
<BODY onload="load()">
<FORM NAME="buf">
<INPUT NAME="Text1" TYPE="hidden">
</FORM>

<FORM NAME="zikko">
<INPUT NAME="text1" TYPE="TEXT">
<INPUT NAME="button1" TYPE="BUTTON" VALUE="実行" onclick=mycheck(text1.value)>
</FORM>
</BODY>
</HTML>

(上記< > ¥は、本当は半角です)




こんかいはここまで



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする