タグ

2009年7月8日のブックマーク (6件)

  • 本当にnewっていらない子。

    なんかPerlblessっぽい。 JavaScriptのnewって当にいらない子?(http://d.hatena.ne.jp/jdg/20090706/1246840565) というよりperlのnewっぽい。なぜか。 classでクラスを定義してnewでインスタンスを生成する言語を「一般的オブジェクト指向言語」とすると、 一般的オブジェクト指向言語とjavascriptの似ていないところはclassがないところ。一般的オブジェクト指向言語とperlの似ていないところはnewがないところ。つまり、javascriptでnewを(直接)使わず、class(のようなもの)を作ればperlっぽくなる。 そもそもnewって何するの?オブジェクトを作る。オブジェクトを作るには3つの動作が必要である。 領域を作るクラスと結びつける初期化する通常は言語仕様でこれらを行う"new"という命令が用意さ

    本当にnewっていらない子。
  • 最悪なHello World | Happy My Life

    To all who Think Themselves a Programmerより。 サンフランシスコのある会社での求人なのだが、この会社では書類選考として、どの言語を使用してもいいので最悪なHelloWorld(画面にHello Worldと表示させるだけのプログラム)を書いてもらい、それを採用基準にしている。 最善のコードではなく、最悪な手法で試すとはなかなか面白い。言語選びなどでも個性が出るので、その人の潜在的なスキルが試される。日じゃこんな手法を採用している企業なんて少ないよなぁ。 採用された例 原文より抜粋して掲載。変態的(褒め言葉)なHello Worldの世界へご招待。 その1 y = lambda { |f| lambda { |x| lambda { |n| (f.call (x.call x)).call n } }. call lambda { |x| lambd

    k1LoW
    k1LoW 2009/07/08
  • Keith Devens .com - PHP XML Library, version 1.2b

    Introduction Examples Notes Download the source Contact me History Introduction Face it, XML is a pain. This simple library tries to make it much less painful. It allows you to easily parse XML into a PHP data structure, and it allows you to serialize PHP data structures into XML. Many other programming languages have easy-to-use XML interfaces (Python's is particularly nice, AFAIK. Lots of

    k1LoW
    k1LoW 2009/07/08
  • クローラーを作るためのフレームワーク·Anemone MOONGIFT

    RSSフィードやWeb API、Mashupなどの単語が注目を集める中、Webクローラーを通じて外部のWebサイトにあるデータをかき集め、それを解析して別な形にするというのはよく見られるものになってきた。 あるURLを指定し、そこからリンクされているURLを一覧表示できる そうした数々のシステムの中で、クローラーとなる基盤は大きな違いはない。Webサイトのデータを取得し、次のリンクを洗い出して取得していくようなものだ。そうした共通動作部分を切り出したフレームワークがAnemoneだ。 今回紹介するオープンソース・ソフトウェアはAnemone、Webクローラを開発するためのフレームワークだ。 Anemoneは任意のWebサイトにアクセスし、その内容を解析するWebクローラーだ。例えばあるURLに付けられているリンクを一覧で取得するようなことも簡単にできる。外部サイトなのかどうかも区別できるの

    クローラーを作るためのフレームワーク·Anemone MOONGIFT
  • llameradaの日記 - JavaScript でマルチスレッド・デザインパターン

    JavaScriptでデザインパターンを書いてみる。とはいえ、いまさらFactoryパターンなど書いても面白くないので、マルチスレッド・デザインパターンにする。 もちろん、JavaScriptの言語仕様にスレッドなどない。しかし、ブラウザ環境では実質的にスレッドが存在する。スレッドが発生する場面には2種類ある。1つは、イベントである。例えば、ユーザのクリック動作によってonclickイベントが発生した時、onclickイベントハンドラだけを処理するスレッドが発生するとみなせる。もう1つは、setTimeoutとsetIntervalメソッドである。これらのメソッドでは、一定時間後に、別の処理を実行させるが、この処理は現在の処理と並行的に実行される。つまり、スレッドとみなせる。個人的には、setTimeoutをアニメーションなどの小細工だけに使うのはもったいないと思う。setTimeoutの

    llameradaの日記 - JavaScript でマルチスレッド・デザインパターン
  • IT戦記 - JavaScript を学ぶ際に一番重要なのに、誤解されがちな setTimeout 系の概念

    おそらく、JavaScript を使いこなす肝は setInterval、setTimeout、イベントによる関数の実行を理解することだと思う 例えば 次のコードの結果を考えたとき document.write("hoge\n"); setTimeout(function(){ document.write("fuga\n") }, 1000); document.write("piyo\n");普通に JavaScript を使いこなしてる人なら、hoge → piyo と表示して、 1 秒後に fuga が表示されるな。って思うはずなんです。 でも、 JavaScript を始めたばっかりの人の中には、 hoge と表示したあと 1 秒後に fuga → piyo と表示するな。って思ってる人が非常に多い。(経験的に) 何故か? たぶん、どのサイトの setTimeout の説明を見て

    IT戦記 - JavaScript を学ぶ際に一番重要なのに、誤解されがちな setTimeout 系の概念