タグ

designpatternに関するcu39のブックマーク (28)

  • シングルトンがなぜ必要なのか

    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基的にいかなるプラットフォームでも作動します。

    シングルトンがなぜ必要なのか
  • 【JavaScript】デザインパターンを知ってみる。モジュール・パターン編 | バシャログ。

    JavaScriptで書くデザインパターンが気になっているので、手始めに一番よく見ているであろうモジュール・パターンについていろいろ調べてみました。 なぜ使うの? モジュール・パターンは名前の通り、処理を他の処理とぶつからないように安全に切り離し、モジュールの形として提供する考え方です。YUI などの大規模なフレームワークから小さなライブラリにも取り入れられています。以下のようなメリットがあります。 グローバル変数を極力減らして、機能をモジュールの形で提供できる。 コードの成長に合わせて構造を作れる コードを見通しやすくする 要件に応じて追加、置き換え、削除ができる シンプルな書き方 Sample というオブジェクトを作って、いろいろ便利な機能をつけていきたい、という場合、下記のような書き方ができます。 var Sample = { name: 'sampleくん', age: '30',

    【JavaScript】デザインパターンを知ってみる。モジュール・パターン編 | バシャログ。
  • Blog DevInterface | All our articles

    From concept to final application: discover how DevInterface makes your idea tangible in the world of mobile development. Explore our complete process, from design to realisation. Read more Explore the powerful impact of psychology in ecommerce and discover how it influences online purchasing decisions. Delve into the psychological strategies used by shops and better understand consumer behaviour.

    Blog DevInterface | All our articles
  • MVC is dead, it's time to MOVE on.

    MVC is a phenomenal idea. You have models, which are nice self-contained bits of state, views which are nice self-contained bits of UI, and controllers which are nice self-contained bits of … What? I’m certainly not the first person to notice this, but the problem with MVC as given is that you end up stuffing too much code into your controllers, because you don’t know where else to put it. To fix

  • Angular.jsとBackbone.jsのDOM依存を図解する - ジンジャー研究室

    果敢にもMVCフレームワークの図解を試みたので、どうぞ! MVCの動機 MVCという言葉が初めて登場してから30年以上たった今、最早なんだったのか分からないほどMVCの定義は混迷をきたしているわけだが、どれがMVCでMVVMでMVPであるという定義についてあれこれ考察するのは個人的には好きでなくて、「結局何がしたいのか」という動機がぶれていなければ何でも良いと思っている。 じゃあそれは一体何なのかということを自分なりに考えてみたところ、次の一言に落ち着いた。 「ModelはViewに依存したくない」 世間的には(?)ModelとViewを単に「分ける」と説明されることが多いが、私はそれだけでは納得していなくて、依存の方向こそが重要だと思っている。たとえ分かれているように見えてもModelがViewを参照していたら、情報の取得先や表現方法は固定化されてしまう。 ModelはViewの事情から

    Angular.jsとBackbone.jsのDOM依存を図解する - ジンジャー研究室
  • Ruby 2.0.0で学ぶ、14個のデザインパターンを作りました[GoF][Design Pattern] - 酒と泪とRubyとRailsと

    GoFのデザインパターンとは、「プログラミングのベストプラクティスを体系化したもの」です。このベスト・プラクティスをしっかりと理解して設計すれば、ソフトウェア設計の効率を高めることができます。またデザインパターンが「プログラミングの思想」の共有をよりスムーズにしてくれます。先人たちの試行錯誤の結果を効果的に利用して、プログラミングをもっと楽しんでしまいましょう! 🗻 デザインパターンのポイントGoFのデザインパターンには下のプリンシパルがあります。 変わるものを変わらないものから分離する インタフェースに対してプログラミングし、実装に対して行わない 継承より集約 委譲、委譲、委譲 必要になるまで作るな(You Ain’t Gonna Need It./YAGNI) 🤔 デザインパターン一覧 アブストラクトファクトリ ビルダ ファクトリメソッド シングルトンパターン アダプタ コンポジッ

    Ruby 2.0.0で学ぶ、14個のデザインパターンを作りました[GoF][Design Pattern] - 酒と泪とRubyとRailsと
  • I/O待ちを緩和させるのに効果的な Reactor パターン - I am bad at math

    クラウド上で動作するプログラムを組んでいく際、スケールすることを狙って多くのロジックがデカップリングされ、複数のサーバに分散されることと思いますが、そこで顕著になってくるボトルネックの一つがネットワークなどのI/O待ちです。 このI/O待ちを減少させるのに効果的なのが Reactor パターン。 このパターン自体は特に目新しいものでもないのですが、近年のクラウドブームで再び脚光を浴びそうなので自分の備忘録もかねて紹介します。 Reactor パターン http://en.wikipedia.org/wiki/Reactor_pattern この Reactor パターンはどういった場合に使用するかというと 複数のI/O待ちが想定される場合 というのが代表格のようです。今回はネットワークI/Oを想定していますが、データベースへの問い合わせに時間がかかる際にも有用となります。 例としてクローラ

    I/O待ちを緩和させるのに効果的な Reactor パターン - I am bad at math
  • PHPによるデザインパターン入門 - Do You PHP?

    PHPによるデザインパターン入門 秀和システムから発売となった「PHPによるデザインパターン入門」(ISBN4-7980-1516-4・ 2006/11/23発売)を執筆しました(共著です)。 「PHPを使ってGoFパターンを見ていこう」的な書籍になっています。GoFパターンについては、それぞれパターンの説明とサンプルコードという構成です。サンプルコードは、CentOS4.4/Windows XP(SP2)+PHP5.1.x/5.2.0で動作確認しています。 目次は以下の通りです。 1章 デザインパターンの世界へようこそ デザインパターンって何? デザインパターンとは? オブジェクト指向 GoFパターン デザインパターンのメリット・デメリット デザインパターンを使うメリット デザインパターンを使うデメリット PHPとオブジェクト指向 PHPとは? PHP5でのオブジェクト指向開発 2章

    PHPによるデザインパターン入門 - Do You PHP?
  • JavaScriptでオブジェクト志向的に、MVC的に書く - 憧れ駆動開発

    完全に手続き的に書くというより、すこしMVCというかMVVC的な構造に切り分けてかいたらいいのではという内容。チラ裏に移動させた

  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • http://www.rarestyle.net/main/patterns/patterns.aspx

  • 書籍「PHPによるデザインパターン入門」の原稿テキストを公開します - Do You PHP はてブロ

    ご報告が遅くなりましたが、去る2009/09/14に絶版となりました orz 出版から3年ですか。自分が最初に書いた(雑誌ではなく)で、いろいろな思い入れはあったんですが、やっぱりCakePHPなどのフレームワークとかJavascript関連などの"今、熱い"技術と違って、"ブーム"が去るのが早いですね。。。 製作に関わっていただいた方、また書店で手に取っていただいた方、ありがとうございました。 で、これに伴い、校正前の原稿テキストを(一部を除き)順次公開しようと思います。基的に『原稿テキストをHTML形式に変換したもの+図画そのまま』ですので、誤字/脱字、説明不足の箇所もあるかも知れませんがご了承ください。挿絵はありません。 http://www.doyouphp.jp/book/book_phpdp.shtml とりあえず、第1章、第4章のTemplateMethodを公開しま

    書籍「PHPによるデザインパターン入門」の原稿テキストを公開します - Do You PHP はてブロ
  • Ruby on Railsの「えせMVC」の弊害

    先日のエントリーでも少し触れたが、Ruby on Railsの最大の問題点は、それが持つ「一見そのフレームワークがMVCの形をとりながら、MVCの最も大切なところを外している『えせMVC』である」点にある。MVC(Model View Controller)がなぜ必要かを根底の部分でちゃんとと意識せずにRailsアプリケーションを作ると、後々ひどい目に会うので注意が必要である。 その意味では「RailsでMVCを学ぶ」などもっての他だし、「JavaにもRailsと同じようなフレームワークを作って業務用アプリの開発を効率化しよう」などという発想もとても危険である。 ということで、今日はまずはMVCの解説から。 MVCの発想の根底には、「モジュール化と情報の隠蔽により、プログラムがスパゲッティ化するの(コード間の相互依存関係が複雑に入り込んでしまってにっちもさっちも行かない状態になること)を避

  • VisualWorks Smalltalk の“アプリケーションモデル”で BMI checker 2 - Smalltalkのtは小文字です

    id:sumim:20080919:p1 の続き。umejavaさんにコメントやメールで教えていただいたので、フィールドの色が変わる版も。複数のウインドウが共通のモデルを共有したときにも動作するように細工してみました。 | app1 app2 window1 window2 | app1 := BMIChecker4 new. window1 := app1 open window. app2 := BMIChecker4 new. app2 height: app1 height. app2 weight: app1 weight. app2 bmi: app1 bmi. window2 := app2 open window. window1 moveTo: 100@100. window2 moveTo: window1 displayBox topRight + (20@0) 前の

    VisualWorks Smalltalk の“アプリケーションモデル”で BMI checker 2 - Smalltalkのtは小文字です
  • VisualWorks Smalltalk の“アプリケーションモデル”で BMI checker - Smalltalkのtは小文字です

    アプリケーションモデル これは、Fowler氏がVisualWorks Smalltalkのやり方を念頭において説明しているパターンだ。残念なことに私はSmalltalkに詳しくないので、私の理解が正しいか確かめる術がない(助けてsumimさん!!)。 http://blog.inomata.lolipop.jp/?eid=920323#p1 Smalltalk で書かれたコードがあったところでさしたる助けにはならないとは思いましたが、私自身の VisualWorks の GUIフレームワークに対する勉強も兼ねて BMI値チェッカー(計算機)のサンプルを書いてみました。ファウラーの指摘にもあるように、テキストフィールドの背景の色を変えるのはたいへんそうなので、未実装です。 BMIChecker open で起動できます。 Smalltalk defineClass: #BMIChecker

    VisualWorks Smalltalk の“アプリケーションモデル”で BMI checker - Smalltalkのtは小文字です
  • [WPF][C#]Model View ViewModelパターンでハローワールド

    MSDNマガジン 2009年2月号にある「Model-View-ViewModel デザイン パターンによる WPF アプリケーション」にあるModel-View-ViewModelパターンが素敵です。 ざっくり説明すると… Model 通常のクラス。 レガシーなC#やVBで作ったクラスたちです。 View XAMLです。大体UserControlです。 ViewModel INotifyPropertyChangedインターフェースや、IDataErrorInfoインターフェースを実装したViewに特化したクラスです。 ViewModelのデータをViewへ表示する仕組み ViewのDataContextにViewModelを入れてBindingして表示します。 IDataErrorInfoや、ValidationRuleを使って入力値の検証を行います。 Viewでのボタンクリック等の操

  • M-V-VMパターンについての記事を訳してみた4 原題"Introduction to Attached Behaviors in WPF" - SharpLab.

    このエントリは、M-V-VMパターンについてのエントリを訳してみる試みの四目です。今回は添付ビヘイビアというテクニックを解説した、CodeProject: Introduction to Attached Behaviors in WPFという記事を訳してみました。著者はMSDN MagazineのWPF のための MODEL-VIEW-VIEWMODEL (MVVM) デザイン パターンという記事も書かれたJosh Smithさん。Crack.NETの作者の方でもあります。 -訳ここから- 導入 Introduction この記事は添付ビヘイビアが何であるか、WPFアプリケーションでどう実装できるのかを解説します。この記事の読者はWPF、XAML、添付プロパティそしてModel-View-ViewModel(MVVM)パターンに多少親しんでいる必要があります。私の‘Simplifyin

  • M-V-VMパターンについてのエントリを訳してみた3 原題"CollectionViewModel" - SharpLab.

    このエントリは、M-V-VMパターンについてのエントリを訳してみる試みの三目です。前回のDavid Hill’s WebLog : The ViewModel Patternという記事の続きの記事です。前回の記事で言及されていた、M-V-VMパターンに基づく、CollectionViewのSilverlightでの実装例を扱った記事です。元記事はこちら:David Hill’s WebLog : CollectionViewModel -訳ここから- この投稿では、選択ベースのコントロール(例えばListBoxやComboBox)のソート、フィルタリング、グルーピング、選択状態のトラッキングを可能にするSilverlight用のICollectionViewの実装について解説していきます。実装をデモを行うために、ユーザーがフィルタリング、ソート、グルーピング、選択ができる、アイテムのカタ

  • M-V-VMパターンについてのエントリを訳してみた2 原題:「David Hill’s WebLog : The ViewModel Pattern」 - SharpLab.

    MSDN Magazine 2月号のM-V-VMパターンについての記事の訳(WPF のための MODEL-VIEW-VIEWMODEL (MVVM) デザイン パターン)が昨日公開されましたね。なかなか読みごたえがありました。さて、今回のエントリでは、同じくM-V-VMパターンについてを解説した、David Hill’s WebLogのDavid Hill’s WebLog : The ViewModel Patternという記事を訳してみました。 -訳ここから- ViewModelパターン(より一般的にはModel-View-ViewModelパターンと呼ばれていますが、それではとても長ったらしく、また私は無精なのです)はWPFとSilverlightの開発者にとってますます人気のあるパターンになってきました。これは、そのシンプルさ、フレキシブルさ、そしてWPFとSilverlightに

  • M-V-VMパターンについてのエントリを訳してみた 原題:”WPF patterns : MVC, MVP or MVVM or…?” - SharpLab.

    最近WPFアプリケーションの設計で頭を悩ませていまして、どのような設計をしたものかと色々と記事を物色しているのですが、どうやらModel-View-ViewModelパターンというのが良いみたいですね。そこでとりあえずThe Orbifoldというサイトの、WPF patterns : MVC, MVP or MVVM or…?というエントリを勉強がてら訳しながら読んでみました。自分も英語が得意なわけではないので、ミスがありましたらご指摘をお願いします。 2009-02-21追記:もう一つ記事を訳してみました:M-V-VMパターンについてのエントリを訳してみた2 原題:「David Hill’s WebLog : The ViewModel Pattern」 - SharpLab. ―訳ここから― 導入 Introduction XAMLの登場以来、WindowsアプリケーションのためにM