タグ

design_patternに関するmoozのブックマーク (6)

  • Scala using(Hishidama's Scala loan-pattern Memo)

    Scala using(ローンパターン) C#では、オープンしたファイルを確実にクローズしてくれるusingという構文がある。 これと同じような事をScalaでやってみる。 テキストファイルを読み込む例を考えてみる。 ScalaではSourceクラスを使い、読み終わったら(あるいは途中でエラーになっても)クローズする。 この為、tryブロックで囲み、finallyでclose()を呼び出す。 val s = scala.io.Source.fromFile("C:/temp/a.txt") try { s.getLines.foreach{ println } } finally { s.close() }これを、以下のような感じで扱えるようにしたい。(usingブロックを抜けると自動的にクローズする) using(s = scala.io.Source.fromFile("C:/temp

    mooz
    mooz 2012/06/28
    with や using は Loan Pattern と呼ばれるらしい
  • 2011年度生物情報科学演習 リファクタリングとデザインパターン

    コードのリファクタリングとデザインパターン C++, Javaなどオブジェクト指向の考え方、クラスを上手に使うとコードをよみやすく整理できる場合が多くあります。 プログラムの動作を変えずにコードを整理することをリファクタリングと呼びます。 最初からコードを上手に設計するのは、熟練のプログラマでも難しいものです。少人数で開発する場合は、むしろ積極的にコードをリファクタリングし、アルゴリズムの見通しをよくするとよいでしょう。コードを修正する際にはversion管理ツールを使えるようにしておくと安心です。以前のソースコードの状態にいつでも戻せます。 ソースコードの版管理ツール Mercurialの使い方 http://www.xerial.org/wiki/lecture/2010/Mercurial デザインパターンに関しては、GoFや結城浩さんのなどを読むと理解はできると思いますが、

  • Visitor pattern in Python

    mooz
    mooz 2011/05/31
    Extrinsic Visitor.
  • Scala de Design Patternまとめ - なんじゃくにっき

    Scala de Design Patternのまとめ。 Gang of Fourの23パターンとそれ以外のデザインパターンが少しある。 結構ふざけた例とか分かりにくい例が多いけどそれはご愛嬌。 Scalaの言語自体の機能やライブラリが強力なので、 ここで挙げたやり方以外にもっと色々なやり方があるはず。 GoFデザインパターン 生成に関するパターン Abstract Factory Builder Factory Method Prototype Singleton 構造に関するパターン Adapter Brige Composite Decorator Façade Flyweight Proxy 振る舞いに関するパターン Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer Stat

    Scala de Design Patternまとめ - なんじゃくにっき
  • デザパタ140文字

    尾野(しっぽ) @tail_y 今なんとなくデザインパターンを見てたけど、どうしてこういう説明って、厳かで分りにくく書かれるんだろうね。噛み砕いて書くと、正確性に欠ける!って怒られるんかな。 2010-04-22 08:29:36 尾野(しっぽ) @tail_y いや、一番いけないのは、デザインパターン完全に理解しないで語るのは恥ずかしいとか、使いこなせないなら使っちゃ駄目とか、そういう雰囲気があるのがいけないんですよ!そんな高尚なものにしてしまうから、解説まで高尚になっちゃって、一部の天才だけのものになっちゃうんですよ。 2010-04-22 08:53:45

    デザパタ140文字
  • ソフトウェア工学 (吉田誠一のホームページ)

    Abstract Factoryパターン Adapterパターン Bridgeパターン Builderパターン Chain of Responsibilityパターン Commandパターン Compositeパターン Decoratorパターン Facadeパターン Factory Methodパターン Flyweightパターン Interpreterパターン Iteratorパターン Mediatorパターン Mementoパターン Observerパターン Prototypeパターン Proxyパターン Singletonパターン Stateパターン Strategyパターン Template Methodパターン Visitorパターン

  • 1