Vectorに登録してあったソフト .NET Checkerですが、長い間放置しまくってたので、今回思い切って削除することとなりました。
というか、忘れすぎてて、間違って消したのか何なのか、もうソースコードが手元に無いんですよw
WTLを使ったイケてるWindowsアプリケーションだったような気がしますが、WTLの勉強ついでに5時間ぐらいで適当に仕上げたブツなので、あまり胸を張って公開できるようなものではないんです。ただ、実装している検出ロジックはなかなか有用だと思うので、今度どっかでまとめておきます。(検出方法とか、サンプルソースとかをTIPSのような感じで)
さて、それはそうと、明日から5日間(平日まるまる)島根へ出張に行ってきます。あっちではビジネスホテルなので、インターネット環境は普通にあるはずですが、更新しなかったからって心配しないでください><。
Rubyを見ていると、よく、mix-inだとか、メタプログラミングという言葉が出てきます。
最近話題(?)なのがこの、メタプログラミングというもの。
メタプログラミングというのは、IBMのサイトでは、
プログラムを記述してプログラム本体あるいはプログラムの部品を生成する技法
とされています。要するに、直接手で情報を記述するのではなく、プログラムをプログラム的に記述してみよう、というような変な手法です。
Rubyはよく知りませんが、Pythonではメタプログラミング的な要素として、メタクラスという怪しげなものがあります。
メタクラスというのは、クラスをインスタンスを生成するための定義と考えると、クラスを生成するための定義と考えられるものです。クラスを生成するための定義情報なので、そのクラスには定義されていなかったメソッドを追加したりすることができる優れものです。詳しい実装方法などはIBMのページ「Pythonでのメタクラス・プログラミング」や、孫請プログラミングの「Pythonプログラミング」をどうぞ。(特に後者のページはわかりやすくていいです)
メタプログラミングを行うと、とりあえずAOP的な応用は出来そうです。他にどんなことが出来るのかは正直よくわかってませんが、応用は色々とできそうだなーとは感じます。
あと、全然話は変わりますが、今日はRubyのことを少しだけ勉強してみました。
Rubyはやっぱりなんというか少し馴染まない…。少しだけあるPerl的なところが妙に体に合いません。私にはPythonのほうが合ってるかもしれない(’A‘) っていうか、インデント=2が標準なのが妙に気に入らないんですが!やっぱインデントは4ですよ、4。
あんまり横幅の取れないエディタで編集するとき(80文字ぐらいで折り返すルールとか)は2のほうがいいんじゃないかとは思いますが。実際どうなんでしょう。
何やら、ずっとお世話になっているデジロック(XREAとかValue-Domainの運営会社) で、そろそろ新しいサービスが始まるらしい。
デジロックの公式サイトを見ると、前々からサポートフォーラムなどでは話があがっていた有料のレンタルサーバサービスと、あんまり聞かないVPSサービスの話がちょろっと。
VPSというのは最近だんだんとサービスが増えてきているVirtual Private Serverというもの。サーバを利用者ごとに仮想化し、OSなどの環境をユーザ一人一人が別々に持つというサービスらしい。
これを使うと、結構自由に何でも出来るみたいなんだけど、構造上IPアドレスを1ユーザに1アドレス割り当てないとまともなサービスが出来ないので、日本みたいにIPアドレスがなかなかもらえない国では料金が割高になるという問題や、ちょっと不安定という問題もある模様。
しかしながら、XREAやValue-Domainで圧倒的な支持を取り付けた同社だけに、また新しいサービスも何かやってくれるんじゃないかとみんな期待してるぽいです。
そんなわけで私も期待してます。どうせそんなに使えないから、よっぽど安くない限りは借りないと思うけど…。
Ruby on Railsが自由に動かせる環境は正直欲しいです。
Djangoの事とかをちょろっと書いた怪しいサイトを作ってましたが、なかなか時間が取れないので一区切り付けたかったのと、このDEZZ.NETっていうドメインが気に入ってるので、こちらに移動してきました。
前にちょろっとこのドメインは使ってましたが、もう当時の人は誰も来ないでしょうw
というわけでちまちまと開始。
Rubyなんかを勉強してみたかったり。。