コンストラクタをapplyする

新しいオブジェクトを定義するには、やり方や好みで色々ある。

■まず単純にコンストラクタ定義する方法

var Cat=funtion(name){ 
  this.name=name;
};
Cat.prototype.bark=funtion(){
   alert('にゃー');
};
var mycat=new Cat('ミケ');
console.log(mycat.name, mycat.bark());

■コンストラクタに無名関数をapplyする方法

var Cat=function(){};

(function(){
  this.name='ミケ';
  this.bark=function(){
    alert('にゃー');
  };
}).apply(Cat.prototype);

var mycat=new Cat();
console.log(mycat.name, mycat.bark())

■Class作成メソッドを定義する
prototype.js(今更やね)の冒頭での面白いコード。
一瞬意味が分かりにくいが、
このcreateメソッドを呼び出すと、コンストラクタ関数が返されるようになっていて、
さらには自由な初期化のためのinitializeというメソッドをapplyしている。

※"Class"なんていうオブジェクト名は便宜的なもので、javascriptにはClassの機能はない。

//これがprototype.jsに組み込まれている
var Class={
  create:function(){
    return function(){this.initialize.apply(this,arguments)}
  }
};

//使い方
var Cat=Class.create();

Cat.prototype={
  initialize:function(name){
    this.name=name;
  },
  bark:function(){
   alert('にゃー');
  }
};

var mycat=new Cat('ミケ');
console.log(mycat.name, mycat.bark()); 


Now reading

レイアウトの法則―アートとアフォーダンス

レイアウトの法則―アートとアフォーダンス

OpenSuseを使ってみようと

LinuxはこれまでUbuntuしか使ったことがなく、他のも使ってみたいと思った。
今回の作業をしている環境はUbuntu10.04である。

手始めにLiveUSBを作ろうということで、まずイメージを公式サイトからダウンロードする。
OpenSuseの「KDE版ライブCD」の最新版を使う。現在は12.1が最新。

次に、Ubuntuには元々「USBスタートアップ・ディスク」のツールが入っているが、これはどうやらUbuntu専用っぽいので(確認はしていない)、別にimage writerをインストール(Synapticから)する。


・・・あっさりとLiveUSBの作成完了。


LiveUSBを挿したAspireOneをF12で起動。OpenSuseを起動することができた。
KDEは綺麗。無線Lanもすぐ認識。しかしちょっと重い気がする。

と、それから色々試したかったが、残念ながらできた作業はここまで。
もう少し弄ってみて、次にHDD側にインストールしたい。


ほんとに自由な時間が少ない。



昔に読んだ小説でも貼っとく感じ

飛行少女 上

飛行少女 上

飛行少女 下

飛行少女 下

ベロニカは死ぬことにした (角川文庫)

ベロニカは死ぬことにした (角川文庫)

vistaでソフトウェアの実行時のダイアログ

え?vistaTOYOTA車の??と言われそうだが、
会社で今使用している僕のマシンはWindows vista。に相成った。

vistaでは事あるごとに管理者の権限を訪ねてくるのだが、
フリーソフト等を使うときに「発行元を確認できませんでした。このソフトウェアを実行しますか?」
とか言う親切丁寧なアラートが毎回出て面倒だった。


何か方法はあるであろうと調べた所、
実行ファイルのプロパティから「ブロック解除」というのをしてやればどうやら良いらしいということのようだったが、これがうまくいかない。


ブロック解除→しました→ソフト起動→またアラート→またプロパティ見る→解除できてないヽ(`Д´)ノ→何これ。の繰り返し。


さらに調べた所、Cドライブに入っているのではダメだという。
別のドライブ(ボリュームEだった)に移して(コピペで)、そこで解除してやる。
解除したファイルをもとの場所に移して(上書き)して、程無くアラートなしで実行できるようになった。
他にやり方あるのかな。

Mozcのインストール

MozcとはGoogleIMEのオープンソース版のやつ。

Ubuntu10.10以降では、公式リポジトリに含まれているようですが、今回入れるのはUbuntu10.04。

まずは開発用リポジトリから追加。

$ sudo add-apt-repository ppa:japanese-testers/ppa

更新しておく

$ sudo apt-get update
$ sudo apt-get upgrade

インストール

$ sudo apt-get install ibus-mozc

それから「ibusの設定」からMozcをデフォルトに設定しようとするも、
Mozcが見当たらないので、一度システムをログアウトしてログインしなおすことで、
Mozcが現れて無事設定が完了。


今、読んでるの

変身 (新潮文庫)

変身 (新潮文庫)

新しいヘーゲル (講談社現代新書)

新しいヘーゲル (講談社現代新書)


読みたいの