タグ

2009年10月14日のブックマーク (9件)

  • えせMVCについてそろそろ一言言っておくか - ひがやすを技術ブログ

    Ruby on Railsの最大の問題点は、それが持つ「一見そのフレームワークがMVCの形をとりながら、MVCの最も大切なところを外している『えせMVC』である」点にある RailsのえせMVC疑惑で盛り上がってますね。Railsが「えせMVCフレームワーク」ではないのは、みんな知っていると思うので、記事、コメントをみて勘違いしている人が多そうな部分に一言書いておきます。 まず、おかしいのはsatoshiさんのこの意見。 PhotoShareは主にRailsで作られているので、ModelはActiveRecordが担当しているわけだが、Modelのレイヤーが非常に薄いために(O/Rマッピングをしているだけ)、データベースの整合性の責任がController側にある。そのため、ちょっとした機能変更のたびにAPIレベルでのテストを大量に走らせなければならないし、それでもどうしてもミスが生じてし

    えせMVCについてそろそろ一言言っておくか - ひがやすを技術ブログ
  • YappoLogs: HTTP::Engine meets PSGI

    « HTTP::Request::StreamingUpload - 省メモリでrequest bodyをupload | Main | HTTP::Engine 0.03001 has streaming response now / multipart/mixedなストリームをHTTP::Engine/Plackでpushする » HTTP::Engine meets PSGI I shipped HTTP::Engine 0.03. Interface::PSGI is enclosed from this time. async server became easy by PSGI. use strict; use warnings; use HTTP::Engine; use Plack::Loader; my $he1 = HTTP::Engine->new( interfac

  • NSTimerとNSThreadの違い - 西尾泰和のはてなダイアリー

    [[NSTimer scheduledTimerWithTimeInterval:10.0 target:self selector:@selector(aMethod:) userInfo:aInfo repeats:NO] fire] ってやった時に呼ばれるaMethodの引数はNSTimerのインスタンスだが [NSThread detachNewThreadSelector:@selector(aMethod:) toTarget:self withObject:aInfo]; ってやった時のaMethodの引数はaInfo自体。 なのでNSTimerの時には例えばaInfoがNSDictionaryなら NSDictionary* info = [timer userInfo]; とかやる。 あとNSTimerはあくまでメインスレッドの中で「あとでイベントを発生させる」ってスケジ

    NSTimerとNSThreadの違い - 西尾泰和のはてなダイアリー
  • 履いてるだけで掃除ができるスリッパ

    履いてるだけで掃除ができるスリッパ 2009-10-13-1 [Kawaii][Goods] 履いてるだけで掃除ができるスリッパです。 「マイクロファイバー(Micro Fiber)モップスリッパ」というものだそうです。 アトレ恵比寿で購入。 ハチさんですね。働きバチかな。 踏んづけられながらももくもくと掃除に励んでくれます。 けなげ!かわいい! は「びーー!びーー!」と言いながらすり足で歩いたりしています(蜂なだけにbee)。 素材の感触はこの前の傘袋[2009-10-10-4]と同じです。 ふわふわでニョロニョロです。 そうそう、ちょこっとネットショップで探してみたのですがハチは見つけられませんでした。 蜂が一番かわいいのになー。 他のはいろいろありました。

    履いてるだけで掃除ができるスリッパ
  • Sinatraでshotgunの代わりにRack::Reloaderを使う方法 - Hello, world! - s21g

    もともとSinatraではRack::Reloaderが上手く機能しないのでshotgunを使おうという流れだったのですが、諸般の事情でshotgunを使えない状況になったため、腰を入れてRack::Reloaderを使えるようにする方法を調べました。 結論として、以下のようにすれば使えました。 config.ru 1  configure :development do 2  class Sinatra::Reloader < Rack::Reloader 3  def safe_load(file, mtime, stderr = $stderr) 4  ::Sinatra::Application.reset! 5  use_in_file_templates! file 6  stderr.puts "#{self.class}: reseting routes" 7  supe

  • この打ち筋……そうかこいつが、「と成りのトトロ」か……!:ハム速

    この打ち筋……そうかこいつが、「と成りのトトロ」か……! カテゴリ☆☆☆ 1 :以下、名無しにかわりましてVIPがお送りします:2009/10/10(土) 09:05:03.36 ID:CxzkRlJMO 早く組まなければな。 矢倉の進化系、「天空の城」を……! 4 :以下、名無しにかわりましてVIPがお送りします:2009/10/10(土) 09:07:41.88 ID:NV9Pq4oe0 「飛べない歩はただの歩だ」だ 以下、名無しにかわりましてVIPがお送りします:2009/10/10(土) 09:08:26.99 ID:SVezoUpNO こんなのに頬が緩んだことが悔しい 6 :以下、名無しにかわりましてVIPがお送りします:2009/10/10(土) 09:09:04.85 ID:rWFku3wiO 上級者スレッド 7 :以下、名無しにかわりましてVIPがお送りし

  • ネットブックのWiMAXモデルは想像以上のおすすめ! - 日経トレンディネット

    ユーザー視点の辛口評価で好評の戸田覚氏による連載。今回は、人気のネットブックとWiMAXを組み合わせたときの使い勝手を検証してみることにした。従来のようにアダプターを認識させる必要がない、ことが感動するほどお気楽だったという戸田氏。果たしてその結論とは? 最近は、データ通信が百花繚乱(りょうらん)状態だ。いわゆる3G系の通信が定番なのだが、そこへWiMAXが割って入り、対応エリアを日夜拡充している。 パソコン体にも、ドコモなどのWWAN内蔵モデルに加え、WiMAX内蔵モデルも登場し始めている。今回は、ネットブック+WiMAXの組み合わせの使い勝手を試してみよう。テストしたのは、dynabook UXWiMAX内蔵モデル(UX/27JBLMA)だ。 dynabook UXは、これまでにもさんざんレビューしてきたので、体についての言及は、新たに気づいたポイントにとどめる。 初めて黒ボディ

    ネットブックのWiMAXモデルは想像以上のおすすめ! - 日経トレンディネット
  • おさかなラボ - Coroの並列をあっさり理解するための3つのサンプルスクリプト

    Coroが非同期にルーチンを扱う(コルーチンを扱う)モジュールだということはご存知だと思うが、いまいちピンと来ていない人も多いのではないだろうか。これは、1つにCoroやCoro::Introの例題が悪すぎると思う。例えば、Coro::Introのサンプルスクリプトはこうだ。 use Coro; async { print "async 1\n"; cede; print "async 2\n"; }; print "main 1\n"; cede; print "main 2\n"; cede; このスクリプトは確かに面白い挙動をするが、スレッドを実現してるんだよと言われるとちょっと「?」である。こんなのgoto文でできるじゃんみたいな。そしていきなりセマフォやチャネルの話に飛んでしまい、肝心の「Coroはスレッドが実現できるんだよ」というところが分かりにくい。そこ

  • NSFetchedResultsController を使って CoreData を表示する

    iPhone Dev Center から CoreDataBooks というサンプルコードを入手してソースを読む。なるほど NSFetchedResultsController を使うと UITableView で CoreData を使うのが楽になりそうだ。 CoreDataBooks の動作はこんな感じ。 リストに詳細表示、それと項目の編集を行う3つのビューから構成される。データの格納に CoreData を採用していて UITableView との連携に NSFetchedResultsController を使っている。 NSFetchedResultsController の使い方を理解するためにこのコードを参考にしつつ、(テーブルが一つで)構造が単純な OneLiner を NSFetcedResultsController を使うバージョンに書き換えてみる。 MainView

    NSFetchedResultsController を使って CoreData を表示する