What is it, naokirin?

レガシーコードからの脱却を読んだ

いまさらではありますが、「レガシーコードからの脱却」を読んだので感想を書いておきます。 「レガシーコード」とタイトルについていますが、「レガシーコード改善ガイド」とは異なり、どちらかといえば、レガシーコードを作らないための本といったところで…

ソフトウェアアーキテクチャ ハード・パーツを読んだ

GWということで、溜まっていた書籍の消化をしていましたが、そのうちの1冊です。 特にマイクロサービスアーキテクチャを考えるエンジニアやアーキテクトにとっては、整理された情報源としてかなり有用そうです。 ソフトウェアアーキテクチャ・ハードパーツ ―…

チーム、DDD、スクラム、そしてコンウェイの法則について

最近、ソフトウェアシステムのモデリングとしてドメイン駆動設計(DDD)、開発手法のフレームワークとしてスクラムの人気があります。 Web上でもこれらの情報は多く、またこれらの組み合わせについても議論されているので、難しいという話はあるものの、概ね…

Railsとrails_event_store で始めるイベントソーシング

こんにちは。 今回は、Railsで rails_event_storeを用いたCQRSとイベントソーシングの実装について試してみたので、イベントソーシングとその実装方法について紹介してみます。 Railsでのイベントソーシングについて検討する際の参考になれば幸いです。 なお…

イベントストーミングを一人で素振りしてみた

最近はプライベートですることが多くて、休日もあまりゆっくりできていませんが、その中でもやってみたことを備忘として残しておきます。 イベントストーミングとは イベントストーミングは、Alberto Brandolini氏が考案したビジネスモデルを協働して発見し…

マイクロフロントエンド(https://www.oreilly.co.jp/books/9784814400027/)を読んだ

マイクロフロントエンドを読み終えたので、感想と少し内容を整理して書いておきます。 マイクロフロントエンド ―マイクロサービスアーキテクチャの概念をフロントエンドに拡張し、信頼性、自律性の高いシステムを構築する作者:Luca Mezzaliraオライリージャ…

Flutterでアプリ開発してみたときに、採用するアーキテクチャを考えてみた

昨日の記事でも書きましたが、アプリをリリースしました(現在、Android向けのみ) play.google.com この際に、どのようなアーキテクチャを採用して開発をするか悩みました。 Web上を色々と見てみた感じでは、MVVMを採用しているのが主流っぽいです(あくま…

Eric EvansのDDDを読んでます(4)

今回は第6章(ドメインオブジェクトのライフサイクル)まで。 集約 集約はエンティティやバリューオブジェクトを1つのオブジェクトとみなし、扱います。 これにより関連をわかりやすくし、また不変条件を維持することで、オブジェクトの一貫性を保つようにし…

Eric EvansのDDDを読んでます(3)

今回は第5章まで。 忙しかったのと、他の本を参照したりしていたので読むペースが少し遅くなってしまっていますが、またペースを戻しつつ進めたいと思います。 あと、ブログのデザインを変えてみました。 もともと大画面で見ている時に幅が狭いかなーと思っ…

Eric EvansのDDDを読んでます(2)

今回は第4章まで。 第4章の要約 章のタイトルは「ドメインを隔離する」。 レイヤアーキテクチャによってドメインをその他のレイヤと分離する話が書かれています。 また、その対極にあるものとして『利口なUI「アンチパターン」』というものが書かれていまし…

Eric EvansのDDDを読んでます(1)

最近、アウトプットが疎かになりつつある感じがしていたので、読書記録でもつけていこうと思います。 最近読み始めた本がEric Evansのドメイン駆動設計(DDD)ですので、こちらの読んでいて感じたこととかを書いていきます。 ちなみに、ちょうどアジャイルソ…

忘れられがちなプログラマの真のしごと

誇大な感じのタイトルになってしまっている気がするけど気にしないでおこう。。。 大学で趣味でプログラミングを行い、自由気ままに好きなようにコードを書いていた頃とは違い、仕事でコードを書くようになって感じていたことの1つを書いてみます。 プログラ…

TDD Boot Camp Fukuoka 2013に参加してきました

TDDBCはスタッフ参加を含めて今回が3回目です。今回は一参加者として参加させてもらいました。 今回のTDDBCの傾向 今回3回目なのでこれまで参加した、また見聞きした感覚として今回のTDDBCは Githubを使っていたペアが多かった 1ペアごとのレビュー時間が長…

TDDBC参加 メモ

TDDBCにスタッフとして参加したので、つれづれにメモ書き。 TDDBCで発表があったことの内容よりも、参加した中で考えたりしたことをちょっと書きだしておきたいと思います。Keep グリーンの安心さと同時に細かいテスト実行を伝えられたのは大きかった。 最後…

31日のイベントのお題をGroovy&Spockにする

なんとかGroovy&SpockでXP一日体験ワークショップで出されていたお題を終えること自体は終わったので、一応のおわた宣言ブログ書きます。元々のXP一日体験ワークショップのときのGithubがあるのですが、受入テストまで書き換えてしまっているので現在コード…

私が考えるTDD 〜TDDは天才にしかできないのか〜

TDD Advent Calendarに参加していないのに書くのも微妙なのですが、今回はTDDについてです。TDD Advent Calendarの記事はかなりハイスペックな内容になっています。今回の私の記事はそれらには到底及ばないと思いますが、私の考えるTDDを書いて行こうと思い…

Clojureでテストを書く (with TDD)

Clojureでテストを書く、というのはclojure.testというものを用いることで簡単に達成できます。今回はTDDを進めていく体で、テストの書き方を紹介していこうと思います。 お題は簡単に行うためにFizzBuzz*1です。FizzBuzzについてはWeb上に多く紹介があると…

テスト駆動開発の練習(18) -Groovy&SpockでFizzBuzz-

練習でGroovy&SpockでFizzBuzzを書いてみました。FizzBuzzSpec.groovy import spock.lang.*; class FizzBuzzSpec extends Specification { def fizzbuzz def setup(){ fizzbuzz = new FizzBuzz() } def '3の倍数を受け取るとFizzを返す'(){ expect: fizzbuzz…

サテライト #TDDBC 佐賀 に参加してきました

サテライト #TDDBC 佐賀に参加してきました。今回は、TDDBC in Tokyo 1.5のサテライトということで、Ust見た後、演習という形でした。ちなみに今回はほぼ触ったことのないGroovy&Spockという無茶をやってしまったので、あまりTDDのリズムの良さはなかった気…