タグ

2014年1月7日のブックマーク (6件)

  • GitHub - DCI/scaladci: Exploring the DCI paradigm in Scala

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - DCI/scaladci: Exploring the DCI paradigm in Scala
    j5ik2o
    j5ik2o 2014/01/07
    applyDynamicによる実装
  • traitで簡単にDCIを実装する - じゅんいち☆かとうの技術日誌

    モデルの表現方法の一つとしてDCIの実装方法を、いろいろと模索しています。 暗黙的型変換と型クラスを使ったDCIがよいと説明しましたが、traitだけでもっと簡単に実現できないか考えてみました(この方法はLean Architectureにも紹介されている実装方式です)。 traitで仕様を表現する traitは、仕様を表現するためのインターフェイスとしても使えるし、他のクラスなどに合成するための、再利用可能な実装(部分クラスなどと言われることがある)としても使えます。 DCIとは直接関係ない話ですが、まずtraitのインターフェイス的な使い方からいきます。 では、お決まりの銀行口座で説明(好きやなーw)。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 // 銀行口座エンティティ // 不変条件: 残高の量は負数であってはならな

    j5ik2o
    j5ik2o 2014/01/07
    書いた。意識の高まりを感じる
  • コードを理解できない人間がソフトウエアの記事を書く怖さ

    数年前、他社のプログラミング雑誌を書店で立ち読みしていたとき、その雑誌の編集後記を見て違和感を覚えました。「私はコードは全く理解できないが、間違っていそうな個所は編集者の勘でわかる」と書いてあったのです。「それはおかしいんじゃないか」と思いました。 好意的に解釈すれば、自分にはできないプログラミングができる執筆者に対する尊敬の念が、このような文章になったのかもしれません。編集者としての感覚を誇りたい気持ちもあったのでしょう。たしかに、編集業務の経験が長ければ、「何かがおかしい」という勘で誤りを発見できることがたまにあります。しかし、技術的な誤りをすべて勘で見つけられるわけがありません。 掲載するコードの内容が正しいかどうかをチェックするのは、プログラミング雑誌の編集者にとって重要な仕事の一つです。意味がわからない箇所があれば筆者に確認するべきでしょう。コードがわからないのは恥じるべきことで

    コードを理解できない人間がソフトウエアの記事を書く怖さ
    j5ik2o
    j5ik2o 2014/01/07
    よい記事
  • 単体テストとMVCとDDDに対する個人的見解 - hatajoeのブログ

    NOTE: 2014-01-08 追記あり。 前回のエントリでレガシーな開発環境を改善している話をした。 レガシーな開発環境の上にはレガシーなプロジェクトが存在していて、これを改善するためにどうすれば良いかを考える課程で、MVCとDDDに対する考えがまとまってきたのでアウトプットしておく。(まとまってきただけで実務レベルまではまだ落とし込めていない感) 自分が担当しているとあるWebコンテンツの話。 題ではないので簡単に前置く。 PHP 仕様書、ドキュメント無し テスト無し 独自カスタマイズされたWAF コピペ、使用されていないソース 使用されていないテーブル、カラムの点在 Fat Controller そんな状態なわけで、当然のように日々の改修や新機能の追加でエンバグを起こす。しかも大人の事情で開発メンバーは突然入れ替わったりする。 これまでは、気をつけようとかしっかりチェックしていこ

    単体テストとMVCとDDDに対する個人的見解 - hatajoeのブログ
    j5ik2o
    j5ik2o 2014/01/07
    理解されていたらごめんなさいですが。DDDのEntity自体はI/Oを行いません。RepositoryがAggregateとしてのEntityをI/Oします。VOなどはAggregateの中にありますね。Serviceについては http://j5ik2o.me/blog/2014/01/03/dci-service/ です。
  • JavaScriptで学ぶ関数型プログラミング

    書はJavaScriptを使って関数型プログラミングを学ぶ書籍です。関数型言語としてJavaScriptを理解し、使用することにより、コードがより洗練され、美しく、そして読みやすいものになることを目的としています。JavaScriptビルトインのデータ型を上手に利用するための基知識やJavaScriptにおける関数の持つ特性など、関数型プログラミングの技術とその考え方について解説します。また実際のJavaScriptコーディングに関数型プログラミングのエッセンスを加えるポイントをサンプルを使って丁寧に説明します。関数型プログラミングに精通した著者が書き下ろした書はテクニックを増やし、コーディングのイマジネーションを広げたいエンジニア必携の一冊です。 Jeremy Ashkenasによるまえがき Steve Vinoskiによるまえがき 訳者まえがき はじめに 1章 関数型JavaSc

    JavaScriptで学ぶ関数型プログラミング
  • GitHub - scalikejdbc/ddd-repository-example: ScalikeJDBC example for Domain Driven Design Repository implementation.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - scalikejdbc/ddd-repository-example: ScalikeJDBC example for Domain Driven Design Repository implementation.
    j5ik2o
    j5ik2o 2014/01/07
    .@seratch に相談したら ScalikeJDBCでの DDDのリポジトリの実装例がでてきたよ。やばい。これは便利すぎる!