タグ

ブックマーク / nrslib.com (6)

  • 実践クリーンアーキテクチャ │ nrslib

    YouTube での解説 YouTube にて Java コードをベースに解説を行いました。 コードの雰囲気は C# とほとんど同じなので参考になるかと思います。 もしよければご覧ください。 Java コードの記事リンク:https://nrslib.com/clean-architecture-with-java/ その他解説もしています。もしよろしければチャンネル登録をお願いいたします。 Qiita 版 Qiita に CUIGUI 向けのクリーンアーキテクチャの記事を書きました。 ボブおじさんのクラス図を模したものです。 Web とはまた異なった実装になるので、もしよければ合わせてご参照ください。 https://qiita.com/nrslib/items/a5f902c4defc83bd46b8 さらに PHPLaravel 版も作ってみました。 https://qi

    実践クリーンアーキテクチャ │ nrslib
    jsstudy
    jsstudy 2020/02/29
    クリーンアーキテクチャを実践するにあたって、そのレイヤーの分割さえ適切に行うことができればその形に拘る必要はないでしょう。Presenter を使うか使わないかの選択はその最たる例だと思います。
  • ボトムアップドメイン駆動設計 後編

    はじめに この記事は続編です。 前編記事: ボトムアップドメイン駆動設計 https://nrslib.com/bottomup-ddd/ 順序立っての説明になっておりますので、前編からご覧になることを強くお勧めします。 ファクトリ 独自の採番システム ところで UserId は Guid (Globally Unique Identifier)です。 Guid は事実上どこでどのタイミングで生成したとしてもユニークになります。 その性質を利用して User は一意な id をコンストラクタで生成していました。 しかしプロダクトによっては Guid ではなく独自の採番機能を採用したいという事例は往々にしてあります。 そこでデータベースの採番テーブルを利用した独自の採番システムを利用して User オブジェクトをインスタンス化してみましょう。 コンストラクタで SQL を実行して採番していま

    ボトムアップドメイン駆動設計 後編
    jsstudy
    jsstudy 2020/02/29
    この記事は続編です。前編記事: ボトムアップドメイン駆動設計 https://nrslib.com/bottomup-ddd/
  • ボトムアップドメイン駆動設計

    はじめに この記事は前後編に分かれています。 順序だてた解説になっているので最後までお付き合いいただけると幸いです。 後編記事: https://nrslib.com/bottomup-ddd-2/ 順序立っての説明になっておりますので、前編からご覧になることを強くお勧めします。 セミナー情報 こちらの内容のセミナーを不定期で開催しています。 ◆セミナーページ 第一回: https://ddd-community-jp.connpass.com/event/103428/ 第二回: https://ddd-community-jp.connpass.com/event/107106/ 第三回: https://nrs-seminar.connpass.com/event/117283/ ◆あとがき 第一回ボトムアップドメイン駆動設計勉強会を開催しました セミナースライド まえがき この章は

    ボトムアップドメイン駆動設計
  • ドメイン駆動設計のエンティティとクリーンアーキテクチャのエンティティ

    概要 ドメイン駆動設計の有名な用語にエンティティというものがあります。 ほとんどドメイン駆動設計の代名詞のひとつと言っても過言でないほどの有名さを誇るこちらの用語ですが、なんとクリーンアーキテクチャにもまったく同じエンティティという用語が出てきます。 このエンティティという用語は名前こそ同じではありますが、実は完全に同じものを指しているわけではありません。 とはいえまったく違うものである、というわけでもありません。 要するにややこしい。 この記事はこのややこしい用語について、ドメイン駆動設計とクリーンアーキテクチャのそれぞれのエンティティが何を指していて、それがどのように異なっているのかについてを解説します。 それぞれのエンティティ そもそもエンティティとは何でしょうか。 英和辞典を引くとエンティティとは「存在[実在]物」といった意味が出てきます。 これはかなり抽象的な意味です。 つまり、

    ドメイン駆動設計のエンティティとクリーンアーキテクチャのエンティティ
    jsstudy
    jsstudy 2019/09/01
    ユーザーは同一性によって識別されるモデル。すなわちドメイン駆動設計におけるエンティティ。クリーンアーキテクチャにおけるエンティティはドメイン駆動設計のモデルのことで、モデリング要素も含んだすべて
  • 実践クリーンアーキテクチャ with Java

    この記事について こちらの記事はクリーンアーキテクチャの Java 実装による解説記事です。 MVC フレームワークに組み込むために一部変更している部分もあります。 それをふまえてご覧ください。 講演内容が @IT さまに記事にしていただけました。 あわせてご参照ください。 https://www.atmarkit.co.jp/ait/articles/1907/08/news002.html クリーンアーキテクチャよりも軽量で無理なく導入しやすいアプリケーションアーキテクチャパターンを考案しました。 https://nrslib.com/adop/ スライド JJUG CCC 2019 Spring での発表資料です。 この発表をするにあたって記事を書くことにしました。 YouTube YouTube でこちらの解説を行いました。 その他解説もしています。もしよろしければチャンネル登録を

    実践クリーンアーキテクチャ with Java
    jsstudy
    jsstudy 2019/09/01
    重要なのはビジネスロジック、すなわち抽象です。高次元な概念であるビジネスが詳細に依存すべきでないという至極単純なルールだけです。同心円の図はコンセプトを語り、右下の図は実際の実装例を示しています。
  • フロントエンドのつくりかた

    フロントエンドの特定技術について語る解説は多くあれど、そもそもフロントエンドのつくりかたについて語った解説は多くないのではないでしょうか。 フロントエンドという大きな領域ですので恐れ多くもありますが、私が GUI プログラミングに携わった経験をもとにお話した内容のスライドとその補足をここでしたいと考えます。 スライド スライドのページ数は多いですが、差分がほとんどですので、それほど構える必要はないです(カーソルキーに負担がかかるという問題を除いて)。 補足解説 大きなテーマごとに補足をしていきます。 スライドで取り上げているテーマは次の4つです。 GUI アーキテクチャパターン データの同期 エラーハンドリング コンポーネント構造 「GUI アーキテクチャパターン」はいわゆる MVC や MVP といわれるものがどういったものかを解説する章です。 「データの同期」は画面と実際のデータが離れ

    フロントエンドのつくりかた
    jsstudy
    jsstudy 2019/09/01
    GUIに限らず、コードに限らず、すべてにおいて理解の柱となるのはベクトルです。一定のやり方で、一定のデータフローで、というようにそこにあるベクトル(方向)を意識することがシンプルさのためにもっとも重要
  • 1