タグ

2022年8月26日のブックマーク (7件)

  • @Autowiredと@Injectのどちらを使うべきか | dawaan

    Springを使った開発では、コンテナに登録したいクラスに@Component、依存性を注入するときに@Autowiredというアノテーションを使用しますが、似たようなアノテーションとして@Namedと@Injectというものがありますが、どちらを使うべきなのでしょうか? @AutowiredはSpring独自アノテーション 今ではJavaの言語仕様としてCDI (Contexts and Dependency Injection)という名称でDIの仕様が定義されています。 しかし昔のJavaにはDIはなく、Spring Frameworkが独自にDIを開発して普及したのが始まりです。 そして@Autowiredは、Springがもともと提供していたアノテーションでした。 @InjectはJava標準アノテーション その後、SpringのDIをベースにした概念がJavaの標準APIに含まれ

    @Autowiredと@Injectのどちらを使うべきか | dawaan
    yggdra_w
    yggdra_w 2022/08/26
    @InjectはそのJSR-330で決められたアノテーション”
  • InfoQ: ドメイン駆動設計・開発の実践

    ドメイン・モデルと開発に注力しないと"太ったサービス・レイヤ"と"ドメイン・モデル貧血症"によるアプリケーション・アーキテクチャになってしまいます。この場合、ファサード・クラス(通常はステートレス・セッション・ビーン)にどんどんビジネス・ロジックが溜まっていき、ドメイン・オブジェクトがgetter/setterからなる単なるデータの運び屋のようになってしまいます。このアプローチをとるとドメイン固有のビジネス・ロジックやルールが複数の異なるファサード・クラスに散在(時には重複)することになります。 "ドメイン・モデル貧血症"はたいていの場合、コストに見合いません。他の企業と比較して利点があるわけではなく、このアーキテクチャの下でビジネス要求の変化を実装するには開発と番環境へのデプロイするのに時間がかかり過ぎます。 DDD実装プロジェクトにおけるいろいろなアーキテクチャや設計について見ていく

    InfoQ: ドメイン駆動設計・開発の実践
    yggdra_w
    yggdra_w 2022/08/26
  • DDD and Spring Boot Multi-Module Maven Project - DZone

  • DDDとORMのEntityを混同しないための考え方

    2つの ”Entity” ある種の ORM では RDB のテーブルスキーマモデルとなるクラスのことをEntityと呼んでいます。例えば PHP のDoctrineや TypeScript のTypeORMなどがそうです。 そういった ORM を採用したプロジェクトで DDD に取り組むとき困るのが用語の衝突です。ORM の Entity は RDB のための定義を含むため当然 DDD の Entity とは異なるのですが、なにぶん同じ名前なので混同してしまいがちです。 記事では両者を混同せず扱うための考え方をまとめます。 Entity の定義 まずは定義から確認します。 DDD での定義 エヴァンスの日語訳から引用します。 主として同一性によって定義されるオブジェクトはエンティティと呼ばれる Eric Evans. エリック・エヴァンスのドメイン駆動設計 (Japanese Edi

    DDDとORMのEntityを混同しないための考え方
    yggdra_w
    yggdra_w 2022/08/26
  • マッチアップ - マッチングアプリを中心とした出会い・婚活メディア

    記事は、提携する企業のPR情報が含まれます。 掲載するサービス及び掲載位置に広告収益が影響を与える可能性はありますが、サービスの評価や内容等は当サイトが独自に記載しています。

    マッチアップ - マッチングアプリを中心とした出会い・婚活メディア
    yggdra_w
    yggdra_w 2022/08/26
    “お相手が退会しても自分のいいね数は減りません”
  • with(アプリ)のいいね数が減る理由は?男性女性からのいいねを増やすには?

    withでいいね数が減る理由は、表示されるいいね数は累計ではなく、直近30日間のいいね数だから。 withでは、いいね!をくれた相手が退会したり、ブロックしたりすることでいいね数は減らない。 withでは、登録後3日間は新着会員としてプロフィール検索されやすくなっているため、いいね!がもらいやすいが、それを過ぎるといいね!がもらいにくくなる。 withで、もらえるいいね数を増やすには、顔写真・プロフィール・自己紹介文の充実の他、足跡を付ける、好みカードを設定する等がある。

    yggdra_w
    yggdra_w 2022/08/26
    “自分をいいねした人がブロックまたは退会したとしても、もらった側でいいね数が変動することはありません”
  • @JoinColumn と mappedBy の違いはなんですか?

    設定を省略した場合適切なデフォルト値が暗黙的に設定される、というのを念頭に置いておくと理解が進むかと思います。 デフォルト設定とは何か?というのはspec(やjavadoc)を見る必要があります。 JSR 338: Java Persistence API, Version 2.2 以下、カッコ内の数字列は上記specの参照節番号を表します。 リンク先の @OneToManyに @JoinColumn を付けた場合と mappedBy を付けた場合の違いは?の回答は、 @JoinColumn を付けることでデフォルトである join-table(2.9, 2.10.5) から join-column へマッピング戦略を変更する(11.1.40)。 mappedBy はinverse-side(FKを持っていない方のテーブルに対応するエンティ)から関連を辿る場合に付与する。つまり双方向関連に

    @JoinColumn と mappedBy の違いはなんですか?