タグ

ブックマーク / yoskhdia.hatenablog.com (5)

  • 「データ」「情報」「知識」の含意からドメイン駆動設計と2種のインピーダンス・ミスマッチを辿る考察 - yoskhdia’s diary

    FOLIO Advent Calendar 2020 17日目です。 「データ」「情報」「知識」の含意から、ドメイン駆動設計、そして、ソフトウェア設計の現実に存在するインピーダンスミスマッチまでを考えてみるエントリです。 エントリは、主に次の論文「データ・情報・知識の含意と相互関係の二重性について」(関口 (2016))を多々援用します*1。 これは、情報経営学分野の知見をソフトウェア設計に持ち込む試みです。 「データ」「情報」「知識」 日語と英語の違い 「データ」と「情報」という言葉はあまり区別されずに使われることが多いものです。 関口 (2016) では、Oxford Dictionaryと広辞苑をひいて次のように分析しています。 「データ・情報・知識・知能の辞書における関係と英語との対比」 関口 (2016) より引用 詳しくは論文を参照してもらうのが良いですが、述べられているこ

    「データ」「情報」「知識」の含意からドメイン駆動設計と2種のインピーダンス・ミスマッチを辿る考察 - yoskhdia’s diary
    clavier
    clavier 2020/12/18
  • 書籍『Akka実践バイブル』の翻訳レビューに参加してきました - yoskhdia’s diary

    書籍『Akka実践バイブル』の翻訳レビューに参加してきました。*1 書籍のレビュアーとしては2回め、技術書としては初めてです。 興味のある人を増やせれば良いなーと思い、少しばかりの紹介をしてみたいと思います。 www.shoeisha.co.jp どんなか 『Akka実践バイブル』は『Akka in Action』の和訳です。 詳細は商品ページや著者・翻訳者の紹介をご参照くださいというところですが、一言であらわせば「Akkaをまるっと概観できる」というです。 原著のAkka in ActionはAkkaを学ぶなら必読書でした。 そもそもAkkaとは、アクターモデルを用いた並行並列処理、耐障害性のあるスケーラブルなアプリケーションを構築するためのツールキットです。 Akkaの公式ドキュメントはトップレベルの充実ぶりですが、ザクッと代表的な機能をおさえたい場合は書籍が良い入り口になりま

    書籍『Akka実践バイブル』の翻訳レビューに参加してきました - yoskhdia’s diary
  • JVMアプリケーションを運用する際のメジャーどころチューニングポイントメモ - yoskhdia’s diary

    JVMにチューニング項目は多々あれど、プロダクションで運用する際に予めおさえておきたい項目をまとめてみるエントリです。*1 勿論、OSもJVMもデフォルトである程度のパフォーマンスは発揮でき、計測を伴わないチューニングは悪手であることはよく知られています。 しかし、設定しておかないとパフォーマンスにそのまま影響すると分かるものを調べないのは裸で戦場に赴くようなものです。*2 どんな項目をどう変更すれば良いのか知っていることは重要な武器なのです。 なぜ調べるのか 今回、チューニングポイントを調べるにあたって、私のモチベーションはどこにあるのかを考えると、以下の要件を満たしたいということがあげられます。 アプリケーションとして求められる品質水準として動作する → 性能目標 異常時に事象を追うことができる ここでいう品質水準・異常とは、パフォーマンスが明らかに低い、アプリケーションがクラッシュす

    JVMアプリケーションを運用する際のメジャーどころチューニングポイントメモ - yoskhdia’s diary
  • マイクロサービスとDDDをGo言語とScala+Akkaで比較したらEventSourcingの話にもなって面白かったまとめ - yoskhdia’s diary

    Reactive Messaging Patterns読書会のなかで、「マイクロサービスとAkkaとGo」な面白い話題が出たので代表でまとめる試みエントリです。(結構、色々な話題に飛んでいるので難度高い。) まとめ方としては、会話ログを転記して、最後にまとめる形をとっています。また、議論と私の考えが混ざらないように所感は分けておきます。 ddd-cqrs-es.connpass.com TL;DR 要素技術(どんな言語使うとか、どんなアーキテクチャにするとか)の前に、組織やプロダクトの性格を考えて戦略を決めましょう。 そして、その中で最適と思われる戦術をとれるような要素技術を採用しましょう。 Akka良いよ。 ログ(一部抜粋) Slackからの引用のためテキストベースです。 事の始まりは、荒木さん(以下、 @applideveloper )の発言でした。 (この記事絡みですね。 集合知で各

    マイクロサービスとDDDをGo言語とScala+Akkaで比較したらEventSourcingの話にもなって面白かったまとめ - yoskhdia’s diary
  • ドメイン駆動設計 第2章 ユビキタス言語を読みなおした - yoskhdia’s diary

    社内交流会でLTをする機会があったので「ユビキタス言語」についてDDDを再度読みなおしてみました。 speakerdeck.com 最近、「DDDは負け犬」みたいな話が少しバズりましたが、ユビキタス言語=ユーザの言葉と解釈するのはあまりに勿体無いのではないかなと思います。 ユビキタス言語はより良い・深いモデルを探求するために必要なものです。 スライドの補足 第2章はスライドに書いたことよりも、もっと多くのことについて言及されています。 ここでは、それらの省略してしまった部分を補足しつつ、スライド構成の今ひとつだった部分を正したいと思います。 まず、第2章最初の一文 しなやかで知識豊富な設計を行うには、用途の幅広い、共有されたチームの言語と、その言葉を使った活発な実験が必要である。 – 書籍「ドメイン駆動設計」(p.24) 省略しようがないくらいに、この一文に詰まっているのですが、スライド

    ドメイン駆動設計 第2章 ユビキタス言語を読みなおした - yoskhdia’s diary
  • 1