パンダとおくだが、Web業界の当たり前を「これって本当にそうだっけ?」と問い直すラジオを配信しています はじめに 昨年末にこんなツイートをしたら、ちょっとバズってしまいました。aaa https://x.com/Panda_Program/status/1864333831886786971 色々コメントを頂くことで考えを深めてブログを書きますと言っていて、まだ着手していなかったのでざっと書くことにします。ただ、今日はクリーンアーキテクチャが対象です。 簡単に自己紹介をすると、私は現職でフルスタックエンジニアをしています。また、「バックエンドのためのフロントエンド入門」 というテーマで登壇をしたり、自分のエンジニア人生を変えた書籍リストにクリーンアーキテクチャを挙げており、TypeScript でクリーンアーキテクチャを実践する という記事では Web からでも CLI からでも動かせるア
いわゆる「ソフトウェア設計書」が設計ではなく、ソースコードが設計であるという話。 随筆です。考えマトメ中なので、ツッコミはそのあたり踏まえていただければ。 追記:ブコメに「設計の定義は?」とあったので末尾に追加しています。 追記(2024/8/15):設計書ってなんだろう?というのも書いておきました。 ソフトウェアの「設計書」とはなんなのか - きしだのHatena このエントリで書いたのですけど、もうすこしちゃんと。 建築では多重下請けでやれてるのに業務システムでだめなのはなぜ? - きしだのHatena このエントリでは次のように書いています。まあ、これで全てではあるのだけど。 「建築などの施工図面に相当するのはソースコードで、建築現場で多重下請けでやってる作業は、ソフトウェアだと(でも?)ビルドです」 あと「継続的デリバリーのソフトウェア工学」からの抜粋。 「継続的デリバリーのソフト

ヨドバシカメラは現在、お客様との接点をドメインとして設計する新たなAPIを開発中であることを、クリエーションラインが主催し10月27日に開催されたイベント「Actionable Insights Day2023」で明らかにしました。 RESTAPIとして実装される予定のこのAPIについて同社は「ヨドバシスタッフの魂を注入する」としており、厳重なセキュリティやユーザーフレンドリーで高い利便性などが追求されています。 ヨドバシAPIがどのように設計され、開発、実装されていくのか。その中味が紹介されたセッションの内容を見ていきましょう。本記事は前編と後編の2本の記事で構成されています。いまお読みの記事は前編です。 疎結合なのに一体感、ヨドバシAPIがつなぐ社会 株式会社ヨドバシカメラ 代表取締役社長 藤沢和則氏。ヨドバシカメラの藤沢と申します。本日はまずこの貴重な機会をいただきありがとう

はじめに 今回の記事では、設計やソフトウェアアーキテクチャを学べるGitHubリポジトリを16個紹介する。 対象とする読者 設計やソフトウェアアーキテクチャに興味関心があるエンジニアGitHubをエンジニアリングの情報収集に活用したいエンジニア タイトルで気になった人 Architectural Patterns システムの基本的な構成を理解するためのパターンやテンプレートを提供している。これらのパターンを学ぶことで、システムの構造やコンポーネントの関連性、相互作用を理解できる。これが開発者にシステムをより効率的かつ効果的に設計・実装する能力をもたらす。 Design Patterns for Humans 設計パターンを人間が理解しやすい形で説明している。デザインパターンは特定の問題に対して再利用可能なソリューションを提供する。これによって、開発者はより効率的にコードを記述でき、メンテ

「最近、モダンモダンすげぇ聞くけどモダンってなに?」 「人の数だけモダンはあるんだよ…」 近年、パブリッククラウドを主軸としたアプリケーション開発文脈の中で「モダンアプリケーション」という言葉をよく聞くようになりました。自分もMAD(Modern Application Development)事業部の部長を去年やっていたりして、モダンという言葉には人一倍敏感だったりします。 そんなおり、そのモダンアプリケーションについて真正面から解説する本を、著者の落水さんから献本いただいたので、僭越ながら書評という形でご紹介させていただきます。 モダンがなにかようやくわかるの…!? ( ゚д゚) ガタッ / ヾ __L| / ̄ ̄ ̄/_ \/ / 丸わかりやで。 書籍の概要「AWSで実現するモダンアプリケーション入門」AWSで実現するモダンアプリケーション入門 〜サーバーレス、コンテナ、マイ

先日、次のような Tweet を見かけました TIL I discovered that TensorFlow.js uses an interesting trick to sniff yourCPU architecture inWebAssembly. pic.twitter.com/LVyywIM48I — Robert Knight (@robknight_) January 4,2023 面白かったので、なぜこうなるのかの解説と、ついでにこのテクニックを使った JIT 検知方法などについて紹介します。JavaScript における低レイヤーの扱いJavaScript においては、挙動が比較的しっかりと仕様に定められているために、環境による振る舞いの違いはあまり発生しません。しかし、低レイヤーに降りるほど振る舞いは実装依存になり、環境差が発生する余地が出てきます。 一番
Fumihiko Shiroyama @fushiroyama 父、博士課程 Software Development Engineer @Adobe / ex-@Microsoft, ex-@amazon All opinions are my own.amazonアソシエイト参加中note.com/fushiroyama/ Fumihiko Shiroyama @fushiroyamaTwitterみたいな緩いつながり、TLひとつ実装するだけでも普通のウェブシステムみたいなクエリでは取れなくてちょっと考えれば非常に複雑なシステムであることは明白だし、システムアーキテクチャの試験の定番トピックだったりするので「誰でも作れる」とか「簡単」みたいなのはご指摘申し上げたくなる2022-11-22 02:16:50 Fumihiko Shiroyama @fushiroyama 昔つぶや

Sansan株式会社が運営する、エンジニアリング強化のためのプロジェクト「Builders Box」は、エンジニア向けオンラインイベント「Builders Box ONAIR」を、1月29日(金)に開催します。 ■開催概要 「Builders Box ONAIR」は、Builders Boxが企画する、世界に通用するエンジニアになるための知見を共有するイベントです。第3回目となる今回のテーマは「クリーンアーキテクチャ」です。 「Clean Architecture」の提唱者である、Robert C. Martin氏をゲストに迎え、エンジニアが押さえておくべきアーキテクチャやアプリケーションに最適なアーキテクチャとはどのようなものか等、広い視点で「クリーンアーキテクチャ」をテーマにお話しいただきます。 ■スピーカー紹介 Robert C. Martin(ロバート C.マーチン)氏 197

iOSアプリではMVVMが多用されている。UIKitとFRPライブラリであるRxSwiftを組み合わせて実装されるのが一般的である。(私はReactiveSwiftの方が好きだけど…) MVVMはマイクロソフトのWPFで考案されたソフトウェアアーキテクチャパターンで、それがiOSに導入されて広まった。 しかししばしばiOSにおけるMVVMは批判の的となってきた。もっとも俎上に上がるのはVMの肥大化・複雑化である。最近では以下の記事があげられる。 なぜ MVVM はElm Architecture に勝てないのか この記事を元になぜMVVMが批判されるのかを見ていこうと思う。 ViewModelは複雑化する論上記記事ではやはり「複雑化しすぎたViewModel」と主張している。 複雑化したコードが掲載されているので全文は転載しないが、主要な個所を見てみる。 まずViewModelの状態の管
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 結論 「アジリティ」「コスト最適化」「スモールな構成」「開発スピード」という観点でWebアプリケーションのアーキテクチャを考えてみました。 ServerlessFrameworkを使い倒すフロントエンドはS3 hosting + CloudFrontで。SSRもLambda@Edgeでできます データベースはRDSは使わずにDynamoDBでAPIは基本的にGraphQL。必要に応じてRESTも簡単に追加できるよ。 補足(2022/04/12) 最近個人開発しているこちらのWebサービスはこのアーキテクチャに沿って作られています。

開発者にはしばしば必要なものがないという状況が訪れます。デベロッパーエバンジェリストの成瀬氏が、実際に10名弱のチームで新規プロダクトを作る際にクリーンアーキテクチャの構成を実践してみた話をしました。 Part.1はヘキサゴナルアーキテクチャについて。動画はこちら。 新規開発では理想どおりにならないことはよくある成瀬允宣氏:さぁ、じゃあやっていきましょうか。(コメントで)「Javaより時代はKotlin」。そう、Kotlinね、そうですね。今回はアーキテクチャの話なので、たぶんKotlinとかでも使えると思います。 (コメントで「設計の講座助かります!」)設計の講座はなかなかないですからね。あと、今日最後のほうで「次何やろうか?」って話もしようかなと思っているので、もしよければ、そのときに僕の相談に乗ってください。 よし、じゃあいきましょう。「先行開発!Javaでクリーンアーキテクチャ」。

ポエム。 つまり?予算やチームのリテラシーに合わせて最速で作れて、チーム内で「俺ら高凝集低結合だなー」と思えるなら、アーキテクチャはなんでもいいと思えてきました。 前提・まだ割と収益が安定してないプロジェクトでの話です。お金があるなら好きにやりましょう。Go Bold。 ・DDDやクリーンアーキテクチャがダメとは言ってないです。むしろ自分は直近そこまで厳格ではないクリーンアーキテクチャでAPI書いてます。 ・以前こういうポスト書くくらいにはアーキテクチャのこと試行錯誤してました。 アーキテクチャ導入議論への疲労以前僕は、DDDやクリーンアーキテクチャを導入するという話が出ると積極的に顔を出すようにしていました。でも、最近は「導入しましょう」「既に適用してあるのでキャッチアップしてください」などの議論をするのに少し疲れてしまい、足が重くなったように感じます。もうおじいちゃんなので体力がないん

Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? アプリケーション開発で、「ビジネスロジックは分離しろ」だとか「Controller にビジネスロジックを書くな」といったことをよく言われると思います。 しかし、ビジネスロジックという言葉の意味を聞いたり調べたりしてみても、「システムのコアの部分」とか「システムの目的になる処理をするところ」みたいなことを言われたりして、よく分かりませんでした。 そんな中、クリーンアーキテクチャや DDD の戦術的設計について学ぶことで、「ビジネスロジックとは何か」、「ビジネスロジックはどう実装するか」について、自分なりの考えが整理されてきたので、この記事

Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事を書くにあたってLaravel について色々サポートしてくれた皆さまに向けてお礼申し上げます。ありがとうございました。本記事はクリーンアーキテクチャに対する理解を深めていただくために、「実践クリーンアーキテクチャ」の内容をLaravel で実装して解説するという内容になっています。 記事のゴールは「クリーンアーキテクチャに対する理解を深めてもらう」というものです。つまり、この実装の形は一例に過ぎません。 はじめに 皆さんクリーンアーキテクチャはご存知でしょうか。 そう、こんな図のアレです。 The Clean Archit

概要 最近,ASCII Dwangoさんから「クリーンアーキテクチャ」という本が出版されました. そこに書いてある内容は素晴らしいものでした.しかし,実際に組んでみた場合,どういう風に作るのが良いのか?どういう問題があるのか?そういった疑問が湧いてきました.そこで, 実際に非クリーンアーキテクチャのコードをリファクタリングしていくことで,クリーンアーキテクチャの要点を感じる. という試みです. クリーンアーキテクチャとは ここでは簡単にしか説明しませんが,実際に本を読んで勉強することをお勧めします. 「クリーンアーキテクチャ 達人に学ぶソフトウェアの構造と設計」のp200によると フレームワーク非依存:アーキテクチャは,機能満載のソフトウェアのライブラリに依存していない.これにより,システムをフレームワークの制約で縛るのではなく,フレームワークをツールとして使用できる. テスト可能:ビジネ

1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く