タグ

設計に関するGegegeMokekeのブックマーク (10)

  • 誰でもできるサービスレイヤの実装 - 24時間CakePHP

    イントロダクション CakePHPでは標準でサービスレイヤを提供していません。 しかし、CakePHPはフレームワークとしてその基礎部分は十分に提供してると言えます。これはアプリケーション側で実装すべきでしょう。 規模が一定を超えるアプリケーションではサービスレイヤの効能は特筆すべきものがあります。 それは「何をしているか」を端的に表すことができ、開発初期段階において「何が必要か」を明確にし、更にテストを容易にします。 また、トランザクションのサポートもサービス単位で実装することによって、明確に「1サービス1トランザクション」が表現できます。 サービスをモデルとして実装する 上記のサービスモデルは非常に単純化されたサービスモデルの一例です。 これは各モデルのマジックメソッドによる呼び出しを提供します。 saveNewArticleはその例で、使うモデルを一々定義する必要はありません。 コン

    誰でもできるサービスレイヤの実装 - 24時間CakePHP
  • MySQL を使ったお手軽メッセージキュー実装 - ドワンゴ 研究開発ブログ

    はじめに この記事では、MySQL を使って簡単なメッセージキューを手軽に実装する方法を解説します。 メッセージキューとは、メッセージを一時的に溜めておき、順次処理するための仕組みです。迅速なレスポンスが必要な Web アプリケーションにおいて、時間のかかる処理を非同期に行うために、バックグラウンドで順次処理していくような場合に利用できます。 簡単なメッセージキューと言っても、大規模な運用にも耐えられる程度の速度と堅牢性を持ちます。 また、ここで解説している方法で作られたメッセージキューは、弊社ウェブサービスであるニコニコ動画に最近追加されたtwitter連携機能でも利用しています。 メッセージキューを作るにあたって 今回実装するメッセージキューは メッセージの追加(push)を高速に行う事ができる メッセージの取得(pop)はある程度高速に行う事ができる 多くのクライアントから同時に p

  • マイクロソフト萩原正義氏MIJS講演「スケールアウト設計における問題点の考察と分析手法の提案」 : 小野和俊のブログ

    昨年末にMIJSのコンソーシアム内での交流会があり、前回のはてな伊藤さん講演に続き、理事会の方から講演者の選定とコンタクトを依頼されたので、マイクロソフトの萩原さんに「クラウドの時代のデータモデリング」の講演をお願いした。 今回萩原さんに講演をお願いしたのは、以前参加させていただいたマイクロソフト系のイベントでの萩原さんの講演が大変興味深い内容だったからだ。 以下、今回の講演を聞きながら私がメモした内容である。 「スケールアウト設計における問題点の考察と分析手法の提案」 現在マイクロソフトでクラウドの技術のうち、開発の現場に対して、どういうやり方をしなければいけないかを提案する仕事をしている。 今日お話しする内容は、インターネットや書籍で紹介されているものよりも、深いところを話していきたい。とはいえ1時間という短い時間なので、ポイントを絞って話をしていきたい。マイクロソフトはWindows

    マイクロソフト萩原正義氏MIJS講演「スケールアウト設計における問題点の考察と分析手法の提案」 : 小野和俊のブログ
    GegegeMokeke
    GegegeMokeke 2010/01/07
    スケールアウトじゃなくてもトレードオフや優先度やメリットデメリット、コストを天秤にかけて設計実装するのは重要
  • Creately | Visual Collaboration & Diagramming Platform

    Infinite whiteboard to visualize everything 1000+ Templates to get started fast Easy sharing and collaboration Data security with regional data storage Many exporting options including PDF & SVG

  • [ruby-list:385] about exception

  • はてなブログ | 無料ブログを作成しよう

    晴天の価値 2月中旬に出張で千葉へ行った。5日間の滞在中はずっと快晴で、気温は20℃に迫る春のような暖かさだった。仕事は朝から晩まで現場を走り回る過酷なもので、身体的にも精神的にも追い込まれた。毎朝、京葉線から見える美しい景色を眺めて正気を保っていた。太平洋へ燦々と…

    はてなブログ | 無料ブログを作成しよう
    GegegeMokeke
    GegegeMokeke 2008/05/20
    俺はコードしながら設計する派 数回スクラップビルド
  • SI業界を目指す君達へ贈る「何故システム開発はテンパるのか」 - novtan別館

    先日学生に聞かれたんですよ。 「下流工程は大変って聞きますが、上流は楽なんですよね?」 よろしい、君はよく勉強している。でも根的に間違っている。下流工程が辛いのは、上流工程でちゃんと仕事ができなかったからだ*1。 というわけで、主に学生向きに話を単純化して語ってみます。これが普通だとか、一般的だとか言うつもりはなく、違う視点もあるかと思いますが、一つの考え方として。 SIでのシステム開発は、建設業にたとえられます。が。 顧客の希望を聞き、設計し、施工し、引き渡す。こういった工程を踏む仕事ということで、システム開発はよく建設業にたとえられます。実際に工程管理の手法なども似通っています。ところが、大抵の場合、耐震偽造をした建築物よりもシステムのほうが脆弱に仕上がります。何故でしょうか。 一つには、建物の図面を引くには建築士の資格が必要ですが、システムの設計に資格は必要ありません。 もう一つ、

    SI業界を目指す君達へ贈る「何故システム開発はテンパるのか」 - novtan別館
    GegegeMokeke
    GegegeMokeke 2008/03/21
    システムって設計と製造が一体化してるんだよね。脳内でどこまで設計できるかがキモだな
  • 例外をインターセプトすべきか

    ユーザーがログインするときのメソッドを実装してくれ、と依頼されたと考えよう。 メソッド名は LoginUser() だ。 このメソッドは、既に実装済みのデータアクセスメソッドを呼び出す。 データアクセスメソッドは、「データベースに接続できなかった」、「該当データが存在しない」の2つの例外を送出する。 「該当データが存在しない」は例外として扱うべきではない、と思ったので、実装者に文句を言ってやった。データが存在しない事は例外状況でないと。 ひと悶着あったが、結局、広く使われてるので今更変更できないと言われた。 自分はそんな間抜けな実装は絶対にしない。そう誓った。 LoginUser() はどのような例外を送出すべきなのか。 ログイン名が違う、パスワードが違う等は例外として扱いたくないので、戻り値で返すようにしたい。そこで「該当データが存在しない」の例外は catch して、戻り値を fals

    GegegeMokeke
    GegegeMokeke 2008/01/28
    俺なら最初のやつで 「リソースを取得できませんでした」にするな
  • 1000px弱時代のWebデザイン

    相変わらず、1024x768のXGA環境のユーザーが約4割います。 見方を変えてみると、5割以上のユーザーが横幅1280px以上であるとも言えます。 ほとんどのユーザーが横幅1024px以上表示でき、半数以上のユーザーが1280px以上表示できるわけです。 2008年1月時点での最適なWebサイトの最大横幅 このことから、2008年1月時点での最適なWebサイトの最大横幅は、横幅1024pxのユーザーがストレス無く閲覧できる1000px以下になると言えます。 1024px限界まで使わないのは、ウィンドウ枠やスライダーバーの表示分を考慮しているためです。 余白なども考慮すると950px〜1000pxくらいが最適な最大横幅と言えるかもしれません。 Yahoo! JAPAN以外にも、ニコニコ動画やmixiなどのサイトも1000px近い横幅のデザインになっています。 ディスプレイ以外の要因 さらに

    1000px弱時代のWebデザイン
    GegegeMokeke
    GegegeMokeke 2008/01/27
    「Yahoo! JAPANだって950pxだよ!」 いいねこのキーワードww ・・・ま・・・この反撃に「Googleのように~」ってのがあるんだがw
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    GegegeMokeke
    GegegeMokeke 2008/01/27
    ログイン失敗することって俺は正常系だと思うので、例外処理するのはどうかと思う、そしたらログインの成否もキャッチで処理することになって例外が単なるbreakに成り下がるような気がします むずいね
  • 1