buenaarbolのブックマーク (4,025)

  • PythonでボトムアップDDD 【値オブジェクト】 - Qiita

    バージョン Python 3.7.0 目次 値オブジェクトの説明 値オブジェクトのルール 値オブジェクトを作る理由 参考文献 おまけ 値オブジェクトの説明 値オブジェクトとは、「一意に識別して変更を管理する必要がないモノ」。 適切に設計していれば、値を想定外に書き換えられてしまうリスクがなくなり、安心して開発ができます。 値オブジェクトのルール 値オブジェクトを作るときのルールが3つ存在します。 状態を変更不可能にする 同一の値オブジェクト同士を同じオブジェクトと判断できる 交換可能である 状態を変更不可にする pythonでイミュータブル(変更不可)なクラスを作るには、dataclassを使うと良いでしょう。 ただ、dataclassはpython3.7から使用可能です。 (dataclassに関して参考になる記事) import dataclasses @dataclasses.dat

    PythonでボトムアップDDD 【値オブジェクト】 - Qiita
  • Python におけるドメイン駆動設計(戦術面)の勘どころ

    2. 自己紹介 ● 林 淳哉 (@loose_agilist) ● GROOVE X でロボット開発 ● 「実践ドメイン駆動設計」 Reviewer ● Qiita に DDD の記事書いてます 3. 今日おはなしすること ● ドメイン駆動設計とは ● ドメイン駆動設計の悩みどころ ● Todo List を例にしたドメイン駆動設計の実践 ○ https://github.com/ledmonster/ddd-python-inject

    Python におけるドメイン駆動設計(戦術面)の勘どころ
  • ドメイン駆動でインターフェース指向な開発 - Qiita

    この記事は一休.comアドベントカレンダー2017の10日目です。 システム部 CTO室 エンジニアの @yu-sa です。 今回はとある開発で、ドメイン駆動設計で,インターフェース指向を意識した環境での開発に携わった際の知見を記事にさせて頂きたいと思います。 自分は今まで、SmartUIな開発ばかりしてきたため、今回の開発では多くを勉強させていただきました。そんな経験談や調査内容をまとめて共有したいと思います。 参考記事 ドメイン駆動設計の道標 Python におけるドメイン駆動設計(戦術面)の勘どころ [DDD]ドメイン駆動設計で実装を始めるのに一番とっつきやすいアーキテクチャは何か ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく 最後のまとめをはじめに アーキテクチャと実装例を見て、ドメイン駆動設計のイメージを理解。 ユビキタス言語についての理解を深める。 ドメイ

    ドメイン駆動でインターフェース指向な開発 - Qiita
  • ドメイン駆動 + オニオンアーキテクチャ概略[DDD] - little hands' lab

    DDD連載記事 なぜDDD初心者はググリ出してすぐに心がくじけてしまうのか ドメイン駆動設計の定義についてEric Evansはなんと言っているのか モデルでドメイン知識を表現するとは何か ドメイン駆動設計で実装を始めるのに一番とっつきやすいアーキテクチャは何か 背景 ドメイン駆動設計で実装を始めるのに一番とっつきやすいアーキテクチャは何かの記事で、オススメしていたのはオニオンアーキテクチャでした。 今回は、オニオンアーキテクチャについて詳しく説明したいと思います。 上述の記事でも書いた通り、「ヘキサゴナル、オニオン、クリーン」の3つは、質的には全く同じで、思想としてはヘキサゴナルで完成されているのですが、より具体的に説明されているオニオンアーキテクチャから説明を読んだ方が理解がしやすいと思います。 その後にヘキサゴナルの説明を読むと「なるほど」となって「あれ、結局ヘキサゴナルじゃん」と

    ドメイン駆動 + オニオンアーキテクチャ概略[DDD] - little hands' lab
  • ドメイン駆動設計で実装を始めるのに一番とっつきやすいアーキテクチャは何か[DDD] - little hands' lab

    DDD連載記事 背景・前提 なぜDDD初心者はググリ出してすぐに心がくじけてしまうのかの記事で、 ネット上の文献で紹介されるアーキテクチャが様々なものとなっているのです。IDDDではヘキサゴナルアーキテクチャというものが掲げられていましたが、それを進化させたオニオンアーキテクチャ、クリーンアーキテクチャなどの有名な亜種が存在します。 これが実装に着手する際に非常に大きな混乱を呼ぶのです。文脈の理解、採用するアーキテクチャの選定に時間を取られることでしょう。 と書きました。こちらに対して、私が「一番とっつきやすい」と考えるアーキテクチャを紹介します。 前提としてですが、完全に個人的な経験に基づく私見になります。 DDDの理論の中で、アーキテクチャに関しては「エリック・エヴァンスのドメイン駆動開発」(以下原典)と実践ドメイン駆動開発(以下IDDD)とでも異なったものが紹介されており、唯一の正解

    ドメイン駆動設計で実装を始めるのに一番とっつきやすいアーキテクチャは何か[DDD] - little hands' lab
  • モデルでドメイン知識を表現するとは何か[DDD] - little hands' lab

    DDD連載記事 なぜDDD初心者はググリ出してすぐに心がくじけてしまうのか ドメイン駆動設計の定義についてEric Evansはなんと言っているのか モデルでドメイン知識を表現するとは何か ドメイン駆動設計で実装を始めるのに一番とっつきやすいアーキテクチャは何か ドメイン駆動 + オニオンアーキテクチャ概略 概要 DDDの定義についてEric Evansはなんと言っているのか この記事でドメイン駆動開発の定義は以下のようなものであると書きました。 ドメインの中核となる複雑さと機会に焦点を当てる ドメイン専門家とソフトウェア専門家のコラボレーションでモデルを探求する 明示的にそれらのモデルを表現するソフトウェアを書く 境界付けられたコンテキストの中のユビキタス言語で話す では、ドメインの知識を言語化したモデルは、最終的にコードでどのように表現されるのでしょうか? 不変条件 まず、業務の制約に

    モデルでドメイン知識を表現するとは何か[DDD] - little hands' lab
  • なぜDDD初心者はググり出してすぐに心がくじけてしまうのか - little hands' lab

    背景 直近のプロジェクトでDDDの思想に則ったアーキテクチャで一つリリースまで漕ぎ付けまして、そこに至るまで色々と調べたり試行錯誤をしながら学んだことを書いていこうと思います。 一番にですね、大体のDDDに興味を持った人がいうのが 「単語が難しいばかりで結局イメージが湧かない」 「ドメイン駆動のを読もうとして速攻で心が折れた」 ということなんですよね。 DDDは思想としてすごく面白く、とても実用性なものなのに、なんでこんなにわかりづらいのか、ハードルが高いのか!! という点について、私なりの解釈を述べたいと思います。 心をくじく要因 Eric Evansは説明が圧倒的に下手。笑 ドメイン駆動設計といえば原著がこの(以下、原典)なのですが、 エリック・エヴァンスのドメイン駆動設計 この当〜〜〜にわかりづらいです。重要なことは確かに書いてあるんですが、構成がかなりしんどくてまとまり

    なぜDDD初心者はググり出してすぐに心がくじけてしまうのか - little hands' lab
  • SFマニアからビギナーまであらゆる層を満足させる、オールタイム・ベスト級の傑作SF短篇集──『なめらかな世界と、その敵』 - 基本読書

    なめらかな世界と、その敵 作者: 伴名練,赤坂アカ出版社/メーカー: 早川書房発売日: 2019/08/20メディア: 単行この商品を含むブログを見るこの『なめらかな世界と、その敵』を端的に紹介すれば、SFマニアからビギナーまであらゆる層を満足させる、オールタイム・ベスト級の傑作SF短篇集である。とはいえ著者伴名練の名は、SFファン以外は聞いたことはないだろう。既刊行作は『少女禁区』という約10年前に刊行された中短篇集一冊のみで、その後も企画物のアンソロジーに散発的に短篇を発表しるのみだったから、普通は知る機会は多くはない。 だが、SFファンの間では、書の刊行前から伴名練の名は異常なほどの熱気でもって知られていた。というのも、商業発表作こそ少ないものの、同人誌に毎年のように新作短篇を発表しており、その作品の出来がまた凄まじかったからだ。それまでのSFの先行作を緻密かつ複雑に折り込み、舞

    SFマニアからビギナーまであらゆる層を満足させる、オールタイム・ベスト級の傑作SF短篇集──『なめらかな世界と、その敵』 - 基本読書
  • クラウドネイティブ アーキテクチャ、5 つの原則 | Google Cloud 公式ブログ

    ※この投稿は米国時間 2019 年 6 月 20 日に Google Cloud blog に投稿されたものの抄訳です。 私たち Google Cloud は、Google Cloud PlatformGCP)上に移行もしくは構築されるアプリケーションの最終目標として、よく「クラウドネイティブ アーキテクチャ」という言葉を使います。では、クラウドネイティブとは正確にはどういう意味なのでしょうか。そして、そのようなシステムはどうすれば設計できるのでしょうか。 大まかに言えば、クラウドネイティブとは、クラウドによってもたらされる、従来のオンプレミスにはない新しい可能性に適応することを意味します(アーキテクチャ上の制約も従来とは大きく異なるため、それにも適応)。ソフトウェア アーキテクトとして私たちが考慮するよう訓練を受けている高レベルの要素について考えてみましょう。 システムの機能要素(何を

    クラウドネイティブ アーキテクチャ、5 つの原則 | Google Cloud 公式ブログ
  • その設計、変更に強いですか?単体テストできますか?...そしてクリーンアーキテクチャ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに アーキテクチャや設計の書籍や記事、これまでの経験も踏まえ、学んだ事をここにまとめたい。(まだ、勉強中なので微妙なところもあるかもしれません。お気付きの点があればご指摘いただけるとありがたいです。) 参考文献や参考記事は、当に良書、良記事で非常に参考にさせていただきました。 生意気なタイトルにしてしまいましたが、自分への戒めということもあってこのタイトルにさせていただいたので、ご容赦ください。 ある共通した話題 設計やアーキテクチャについて書かれた書籍や記事を読んでいく中で、言葉は違えどかなりの高確率で共通するテーマが存在した

    その設計、変更に強いですか?単体テストできますか?...そしてクリーンアーキテクチャ - Qiita
  • 実装クリーンアーキテクチャ

    最近何かと騒がしいクリーンアーキテクチャですが、丁度プロダクトで採用したところだったので折角なので情報共有ということで Qiita の初記事にしてみようと思います。 こちらの記事は GUI や CUI のアプリケーションを対象にしています。 Java コードの記事リンク:https://nrslib.com/clean-architecture-with-java/?preview_id=1263&preview_nonce=542ba7b70f&_thumbnail_id=1293&preview=true その他解説もしています。もしよろしければチャンネル登録をお願いいたします。 より実践的なコード(WEBアプリケーション): https://github.com/nrslib/itddd/tree/master/CleanLike YouTube での解説(WEBアプリケーション):

    実装クリーンアーキテクチャ
  • 機械学習システムのアーキテクチャアラカルト

    1. 株式会社ブレインパッド 2019年2月15日 @ デブサミ 2019 機械学習システムのアーキテクチャ アラカルト ~ BrainPad における実例を交えて~ 1 2. 太田 満久 ● Deputy General Manager @ BrainPad Inc. ● Google Developers Expert (ML) ● Organizer of TensorFlow User Group. ● A Steering Committee of MLSE ● A Committee of JDLA 4. © BrainPad Inc. BrainPad: 最高の価値提供を可能にする3つの力 2004年の創業以来、ブレインパッドがデータ活用をお手伝いした企業は800社を超えま す。幅広い業界を対象として、豊富に積み上げられたナレッジを武器に、お客様の経営課 題を 解決に導きます

    機械学習システムのアーキテクチャアラカルト
  • Aurora - クラウド時代のDBアーキテクチャ - 発明のための再発明

    はじめに Amazon Auroraは、AWSを触る人ならほとんどの人が利用を検討したことがあるでしょう。 Amazon社内ではOracleを止めたというtweetもありました SHUTDOWN ABORT the last Oracle database running Amazon Fulfillment! pic.twitter.com/DorqTua2Lt— John Darrow (@jdarrow) 2019年3月29日 そんなAuroraは、従来のRDBとは違いクラウド上で動くことを念頭に設計されています。 また、ログが中心的な役割を持つことから「The log is the database」と表現されることもあります。 そんなAuroraの仕組みについての論文を読んだので紹介します。 読んだ論文は以下の2つです。 Amazon Aurora: Design Conside

    Aurora - クラウド時代のDBアーキテクチャ - 発明のための再発明
  • 知っているようで知らないWebサーバアーキテクチャ

    第6回ゲームサーバ勉強会用資料です。 Webの技術の根幹となるHTTPやTCP/IPを軽くおさらいしたあと、 マルチプロセス、マルチスレッド、イベント駆動といったサーバアーキテクチャについて解析し、 さらにイベント駆動を実現するための非ブロッキングI/OとI/Oの多重化について解説します。

    知っているようで知らないWebサーバアーキテクチャ
  • SPAにおける状態管理:関数型のアプローチも取り入れるフロントエンド系アーキテクチャの変遷 - エンジニアHub|Webエンジニアのキャリアを考える!

    こんにちは、小林(@koba04)です。 記事では、シングルページアプリケーション(以下、SPA)における状態管理について解説します。 GmailやTwitterは、SPAとして構築されている代表的なWebアプリケーションであり、スムーズなページ遷移をSPAによって実現しています。またElectronやPWA(Progressive Web Apps)の登場により、複雑なアプリケーションをWebの技術を使って構築する場面も増えてきました。 これらの複雑なアプリケーションにおいては、既存のページ単位での状態管理の考え方では対応が難しくなります。 そこで今回は、具体的なフレームワークも取り上げながら、Webフロントエンドにおける状態管理のアプローチについて紹介します。 フロントエンドでの状態管理の複雑化 ページの単位を超えた状態の保持 モデルとビューによる処理の分割 イベントの管理が複雑にな

    SPAにおける状態管理:関数型のアプローチも取り入れるフロントエンド系アーキテクチャの変遷 - エンジニアHub|Webエンジニアのキャリアを考える!
  • Software Architecture Guide

    When people in the software industry talk about “architecture”, they refer to a hazily defined notion of the most important aspects of the internal design of a software system. A good architecture is important, otherwise it becomes slower and more expensive to add new capabilities in the future. Like many in the software world, I’ve long been wary of the term “architecture” as it often suggests a

    Software Architecture Guide
  • フェミニストの私は「男の生きづらさ」問題をどう考えるか(江原 由美子) @gendai_biz

    確かに「男性のつらさ」に焦点を当てることは、ジェンダー平等を説く言説よりも、男性の関心を引くだろう。けれども、「無意識の特権意識」を刺激してしまえば、たとえ「男性性を変える」ことを呼びかけられても、その方向にはいかない男性も多いのではなかろうか。 男性の雇用が大きく変動しているにもかかわらず、男性の生き方に対する社会的イメージに変化がなく、そのギャップに苦しんでいる男性からすれば、「男性性を変える」ことよりも「男性の雇用をもと通りにする」こと――それは「フェミニズム叩き」に繋がるかもしれない――の方が、ずっとわかりやすいはずだ。 しかも田中氏が「男性性を変えよう」と主張する主な理由は、社会的公正や平等などの価値観ではなく、「もはや社会が変わってしまったから」という外在的根拠、「昔のような男性性を維持しても、メリットはない」という合理的根拠であるにすぎない。 実際、「仕事と結びついた男性性イ

    フェミニストの私は「男の生きづらさ」問題をどう考えるか(江原 由美子) @gendai_biz
  • アマゾン手数料 経費にせず/出店者、税務署の不当性訴え

    アマゾンを利用して音楽CDなどを販売する都内在住の男性が23日、都内で記者会見し、税務署の不当性を訴えました。男性は4月、売り上げに伴う消費税の請求が過大であるとして、国と税務署に是正を求めて東京地裁に提訴しています。 男性はインターネット販売サイトに出店し、アマゾンに年間500万円の販売手数料を支払っています。会社員だった男性は不慣れなため、売り上げに伴う消費税の確定申告をしていませんでした。男性は税務署の指摘で領収書や発注データなどの書類を提出。税務署が作成した2009~13年の確定申告書に押印しました。 「課税額があまりにも高い」と疑問に思い、男性は地元の民主商工会に相談。経費が控除対象として計算されていないことが分かりました。 男性は5年間で215万円の課税に対し、131万円に修正するよう求めましたが、税務署は却下。当初よりさらに高い259万円の処分としました。 計算されていない経

  • 介護職歴25年、メイプル超合金安藤なつが語る、介護現場のつらさと楽しさ|tayorini by LIFULL介護

    介護職歴25年、メイプル超合金安藤なつが語る、介護現場のつらさと楽しさ #エンタメ#介護のコツ#介護の仕事#認知症 公開日 | 2019/08/23 更新日 | 2020/09/03 斎藤岬(さいとう・みさき) 労働条件の厳しさばかりが取り沙汰される介護の仕事。マイナスイメージが先行してしまう業界ですが、実際の介護現場では志を持って働く方も多くいます。 『ヒルナンデス』や『青春高校3年C組』など多くのバラエティ番組で活躍するお笑い芸人・メイプル超合金の安藤なつさんも、学生時代からブレイク直前まで長年介護現場で働いてきた一人。長く続けてきたからこそわかる介護の仕事の楽しさや、現場の課題など、リアルな話を伺いました。 今回のtayoriniなる人 安藤なつ(あんどう・なつ) 1981年1月31日生まれ、東京都出身。メイプル超合金のツッコミとして、2015年の「M-1グランプリ」決勝戦をきっかけ

    介護職歴25年、メイプル超合金安藤なつが語る、介護現場のつらさと楽しさ|tayorini by LIFULL介護
  • 日産、自動運転技術でゴルフボール 誰でもカップイン - 日本経済新聞

    日産自動車は22日、自動運転で使う技術を生かしたゴルフボールを開発したと発表した。外部のカメラでボールの位置を特定したうえで、コンピューターでカップまでの経路を導き出し、無線でボールに伝える仕組み。プレーヤーがどんな方向に打ってもボールはカップに向かって自走するため、ゴルフをやったことのない人でも確実にカップインできる。日産の自動運転技術「プロパイロ

    日産、自動運転技術でゴルフボール 誰でもカップイン - 日本経済新聞