タグ

2022年4月20日のブックマーク (7件)

  • Laravelで同じ実装をドメイン駆動設計(DDD)とMVCで比較してみた(フロントはReact) - Qiita

    概要 Laravelで同じ実装をドメイン駆動設計(DDD)とMVCで比較してみました。フロントはReactで実装しています。設計思想はドメイン駆動設計(以下DDD)、アーキテクチャはクリーンアーキテクチャを採用しました。LaravelのWebアプリケーションをDDDやクリーンアーキテクチャで構築すると、MVCで構築するのと比べて実装量やファイル数が増えるのでは?また、処理速度も遅くなるのでは?という懸念を抱いておりました。ただ、それは実際に試してみないとわからないと思い、同じ機能をDDD、MVCで実装し、比較する事にしました。やるなら実践的なプロジェクトが望ましいし、イメージし易いと考えて、題材はECのデモサイトにしました。構築パターンは、DDD、軽量DDD、MVCの3パターンです。DDD、軽量DDDの違いは、DDDはクリーンアーキテクチャに忠実に実装したのに比べて、軽量DDDはPrese

    Laravelで同じ実装をドメイン駆動設計(DDD)とMVCで比較してみた(フロントはReact) - Qiita
  • DDD基礎解説:エンティティ、値オブジェクトってなんなんだ - little hands' lab

    はじめに DDDの実装パターンとして、エンティティと値オブジェクトというものがあります。 ドメイン駆動一般に複雑な抽象論が多い中で、コードに近く一番イメージがつきやすいコード事例として出てくるため、ここだけは何となくわかるぞ!という方もいらっしゃるのではないでしょうか。 今日はこちらの概要とそれぞれの使い道について書きたいと思います。 先にざっくりイメージ図をお伝えすると、こういう図を使って解説します。 何の目的で作るのか? ドメイン駆動設計は何を解決しようとしているのか こちらの記事で、ドメイン駆動設計のアプローチは以下の2ステップがあるということを書きました。 ドメインの問題を解決するための抽象的なモデルを作る. モデルをソフトウェア(コード)に落とし込む ※ ドメイン=ソフトウェアを適用して問題解決しようとする領域 DDDでは、このStep2の モデルをコードで表現するためのパターン

    DDD基礎解説:エンティティ、値オブジェクトってなんなんだ - little hands' lab
  • 【PHPでDDD】ドメイン駆動設計と上手く付き合う方法

    私は小規模な会社の代表を務めながら現場でコードも書くフルスタックエンジニアです。 今回の記事では、会社経営や現場の両方から見たDDDと上手く付き合う方法の一つを紹介したいと思います。 あくまでも弊社で決定している開発方針になりますので、「推奨する」方法ではありません。この記事は一例に過ぎませんが、皆さんの参考になればと思います。 DDDの導入を拒む企業が多い理由 DDDの導入に否定的な企業が多いと感じます。その理由をざっくり上げてみます。 人材の教育が大変 開発のオーバーヘッドが大きい コストがかかる(インフラ、勉強、時間などのコスト) 導入のメリットがイマイチわからない ざっくりではございますが、こんな感じでしょうか。 DDDを商業プロジェクトに導入するまでの道のりは確かに長いです。また、データを軸に設計していた開発者に、ドメインを中心に設計する方法に慣れてもらう必要があり、手間がかかる

    【PHPでDDD】ドメイン駆動設計と上手く付き合う方法
  • スタブとモックの違い - Qiita

    スタブとモックの違い オブジェクト指向設計実践入門を読んで学んだことのまとめです。 具体的にRspecでモックを書くときはこうしましょう、といった具体的な話ではなく言葉の意味の説明がメインです。 ソフトウェアテストの対象 スタブもモックもテストコード内で使うものです。違いを考える前に、テストについて振り返ってみます。 テストを行うべきなのは、次の2つについてです。 オブジェクトがほかのオブジェクトからメッセージを受け取ったとき、期待する答えを返すことができるか 要するにパブリックメソッドに対するユニットテスト 「オブジェクト指向設計実践ガイド」には、プライベートメソッドに対するテストは書くべきではない、さらにいうとプライベートメソッドを書くべきではない(プライベートメソッドを他のオブジェクトに切り出して注入せよ)とあります。 オブジェクトが副作用のあるメッセージ送信を行うとき、その回数や引

    スタブとモックの違い - Qiita
  • AWSのSQSとSNSの違い - Qiita

    前にまとめたんですけど、やっぱややこしかったのでもうちょっとまとめます 勉強前イメージ SQS ... バッチのキューとか処理で後続の処理を実施できるイメージ SNS ... notificationだから通知が主なイメージ 調査 SQSとは 詳細は こちら SQSは Simple Queue Service の略 キューイングサービス キューは ソフトウェア間を直接データを渡すのではなく、第三者経由でデータを渡すことで、送信側と受信側が好きなときに処理を行う データの取得方法は、 他のサービスがSQSをポーリングして、キューがあれば取得 します SNSとは 詳細は こちら SNSSimple Notification Service メッセージングサービス プッシュしたメッセージをHTTP,HTTPS,メール,SQS,モバイルプッシュなどに通知出来る データの取得方法は、 SNSがメ

    AWSのSQSとSNSの違い - Qiita
  • Figmaを閲覧するのに覚えておきたい操作 - ひげろぐ

    最近デザインの共有にFigmaが使われることが増えてるので、デザイナーさんからURLを渡された時にちゃんと見られるように。 多くのデザイナーがターミナルの黒い画面にアレルギーを示すように、プログラマーはデザインツールにアレルギーを持っていることがままあり、正直自分もその傾向がある。 ので、最初FigmaのURLをシェアされて開いたときの何も分からない感たらなかった。 全部の画面デザインが並んでるけどこんな小さくてどうしたら・・・あ、拡大じゃな。 拡大はなんとなくできたけど位置を動かすには・・・上下スクロールはできるけど横スクロールができないし、みたいな。 ただ操作を調べてみるとAdobe系のソフトと共通なとこあるしそんなに難しくはなかった。 選択 V で選択ツール 移動 H でハンドツール 選択ツールを使っているときにスペースキーを押しながらドラッグ ホイールで上下にスクロール Shift

    fbis
    fbis 2022/04/20
  • 【Windows】指定した宛先の通信のみVPN経由にする - Qiita

    WindowsVPN接続すると、デフォルトではすべての宛先がVPN経由になる。 それだと相手方の帯域をうし、使い方次第ではセキュリティ的にもよろしくないので、業務上必要なトラフィックのみVPN経由となるよう、ルーティングを見直すことにした。 手順 すべての宛先でVPNを使わないようにする いったん、外向きの通信すべて、VPNに流さないようにする。 これはWindowsGUI画面から設定できる。 ネットワーク接続を開く [ファイル名を指定して実行] からncpa.cplと入力する。 該当するVPN接続を選び、右クリックからプロパティを開く。 TCP/IPのプロパティを開く 詳細設定を開く リモートネットワークのGWを使わないようにする デフォルトの設定では、VPN接続中の外向き通信はすべてリモートネットワークのゲートウェイを経由するようになっているので、これを無効にする。 [リモートネ

    【Windows】指定した宛先の通信のみVPN経由にする - Qiita