アーキテクチャ
Pythonでの凝集度の測り方 Qiitaに投稿しました Qiitaに「CohesionでPythonの凝集度を計測する」を投稿しました。Python Advent Calendar 2023 Day 18の記事です。 qiita.com 所感 LCOM4の関心はクラス設計ですが、一つずらしてモジュールにしてみても面白そ…
フロントエンドの依存の可視化、バリデーション Qiitaに投稿しました Qiitaに「Misskeyで学ぶdependency-cruiser」を投稿しました。TypeScript Advent Calendar 2023 Day 13の記事です。 qiita.com 所感 Rails+Packwerkとできることが近い気もします。なんで…
よいパッケージ性の測り方 Qiitaに投稿しました Qiitaに「spm-goでGoの結合度を計測する」を投稿しました。Go 言語Advent Calendar 2023 Day 5の記事です。 qiita.com 所感 結合度関連だとConnascenceも面白そうですが、GitHub漁った感じ実装なさそうですね。…
要はバランス バックエンドとフロントエンドで人を分けるべきかは業態による Web開発がCGIでデザイン性のあまりない匿名掲示板を作る位の時代だと、そもそもフロントエンドができることがブラウザの仕様やパフォーマンス上の理由により制限されていたので、…
ではないか デメテルの法則を根拠にdelegateを乱用するのは間違い Zennに「デメテルの法則を根拠にdelegateを乱用するのは間違い」を投稿しました。 zenn.dev 所感 法則にのっとているかでその後のバグを防げたかだったり、何かしらの指標が改善するのか比較…
実装の参考の当たり Zennに投稿しました Zennに「アーキテクトがチェックすべきオープンソースのWebサービス一覧」を投稿しました。 zenn.dev 企業によってはバックエンドと切り離して独立のアーキテクトを置いていることもあります。自分はDevOpsと同じで極…
ChatGPT時代の戦い方 言語経験年数だけ見るのは間違い ソフトウェアエンジニアの能力を測る指標としてしばしばプログラミング言語の経験年数が使われることがあります。Perl〇〇年、Go〇〇年というやつですね。 一方で例えばWebフロントエンド開発にHTMLやCS…
Twitterの内部構造を読解してみる TLDR Qiitaに「Twitterはタイムラインをどうやってキャッシュしているか」を投稿しました。 qiita.com 所感 結構頑張ってリソース探したのですが、最近のものは少ないですね。 TwitterのメインDBのManhattanが気になってい…
Twitterの技術ブログを訳してみる TLDR Qiitaに「Twitterを支えるインフラ: スケール」を投稿しました。Twitterの技術ブログの非公式訳です。 qiita.com 所感 イーロンマスクがTwitterの構成図をTwitter上にあげたのが先日話題になりました。 Twitterの公式…
GraphQLは銀の弾丸か 前口上 Webやアプリ開発において、サーバー間やサーバークライアント間でデータを受け渡す方式には色々なものがあります。 古くはSOAPやXML、最近のWEB APIはほとんどの場合JSONのREST API、マイクロサービスならProtocol BuffersでgRPC…
プロダクトの変遷でアーキテクチャーがどう変わったか 前口上 Web開発においてとりうるアーキテクチャーにはいくつかパターンがあります。 サーバー構成をモノリスかマイクロサービスかで分ける場合もありますし、データベースを内製で持つか外部のmBaaSに任…