Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rust DDD
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
katayama8000
October 17, 2025
10
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rust DDD
katayama8000
October 17, 2025
Featured
See All Featured
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
Are puppies a ranking factor?
jonoalderson
1
3.7k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
160
How STYLIGHT went responsive
nonsquared
100
6.2k
Code Reviewing Like a Champion
maltzj
528
40k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
490
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
410
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
The untapped power of vector embeddings
frankvandijk
2
1.8k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Google's AI Overviews - The New Search
badams
0
1.1k
Transcript
Rust DDD - 1 Rustと とDDDで でAPIサーバーを構築する サーバーを構築する
Rust DDD - 3 ・ ・katayama8000 ・ ・Nulab Inc ・音楽
・音楽/ラジオ ラジオ/猫 猫/海外旅行 海外旅行
Rust DDD - 2 目次 目次 ・ゴールの共有 ・ゴールの共有 ・環境構築 ・環境構築
+ FWの紹介 の紹介 ・本題 ・本題 ・まとめ ・まとめ
Rust DDD - 1(1) 勉強会のゴール 勉強会のゴール ・ ・Rustと とDDDで でAPIサーバーを構築する
サーバーを構築する 全体像の理解 全体像の理解 ・コントリビュート等でアウトプットで ・コントリビュート等でアウトプットで きるようになる きるようになる
Rust DDD - 4 環境構築 環境構築 https://github.com/katayama8000/axum-ddd-rust
Rust DDD - 5 axumについて について ・ ・tokioチームが開発している チームが開発している ・
・RoRのようなフルスタック のようなフルスタック FWではなく、薄い ではなく、薄いFW ・後発 ・後発FWながら、スターの伸 ながら、スターの伸 び率は高い び率は高い https://github.com/tokio-rs/axum
Rust DDD - 6 大学がサークルを管理する 大学がサークルを管理するAPI を開発してみよう を開発してみよう
Rust DDD - 6(1) ※今回使用するコードは完成されたも 今回使用するコードは完成されたも のではないです。解説中に不具合等に のではないです。解説中に不具合等に 気がつくかもしれませんので多めに見 気がつくかもしれませんので多めに見
てください。コントリビュートしてい てください。コントリビュートしてい ただけると喜びます ただけると喜びます
Rust DDD - 7
Rust DDD - 8 ビジネスロジック ビジネスロジック - サークルを作成できる - サークルには代表者が必要
- 3 年生のみ、サークルの代表者になれる - サークル作成には最低でも1人必要 - サークルを更新できる -メンバーを追加できる - 4 年生は、追加できない - サークルはメンバーの最大人数が決まっている - メンバーを削除できる - オーナーは削除できない - 4 年生は、卒業する
Rust DDD - 9 ドメインレイヤー ドメインレイヤー 集約ルートになる Circle と、集約内の メンバーを表す
Member の 2 つのエン ティティから構成される
Rust DDD - 10(1) ドメインレイヤー ドメインレイヤー src/crates/domain/src/aggregate/circle.rs https://github.com/katayama8000/axum-ddd- rust/blob/main/src/crates/domain/src/aggregate/circle.rs
Rust DDD - 10(2) ドメインレイヤー ドメインレイヤー src/crates/domain/src/interface/circle_repository_interface.rs https://github.com/katayama8000/axum-ddd- rust/blob/main/src/crates/domain/src/interface/circle_repository_interface.rs
Rust DDD - 11 インフラストラクチャーレイヤー インフラストラクチャーレイヤー src/crates/infrastructure/src/mysql/circle_repository.rs https://github.com/katayama8000/axum-ddd- rust/blob/main/src/crates/infrastructure/src/mysql/circle_repository.rs
Rust DDD - 11 アプリケーションレイヤー アプリケーションレイヤー src/crates/usecase/src/create_circle.rs https://github.com/katayama8000/axum-ddd- rust/blob/main/src/crates/usecase/src/create_circle.rs
Rust DDD - template2(2) プレゼンテーションレイヤー プレゼンテーションレイヤー src/crates/main/src/app.rs https://github.com/katayama8000/axum-ddd- rust/blob/main/src/crates/main/src/app.rs src/crates/main/src/handler.rs
https://github.com/katayama8000/axum-ddd- rust/blob/main/src/crates/main/src/handler.rs
Rust DDD - 13 開発中に感じたメリット 開発中に感じたメリット ・責務が分かれていることによって変更に強い ・永続化先を インメモリ ->
MySQL ・ FWを actix-web -> axum ・テストが書きやすい ・各レイヤーごとにテストが書ける ・crate を簡単に作成できるので、依存関係がわかりやすい
Rust DDD - 13(2) コントリビュートのすゝめ コントリビュートのすゝめ まだまだ不完全な箇所が多いコードだと思います。 いくつかIssueを立てたので、ぜひコントリビューションをしてみてください。 PRいただきましたら、なるべく早くレビューします! https://github.com/katayama8000/axum-ddd-rust/issues
Rust DDD - 13(3) ご清聴ありがとうございました! ご清聴ありがとうございました!
Rust DDD - template title
Rust DDD - 1カラム カラム 見出し 見出し 本文
Rust DDD - 画像 画像
Rust DDD - 画像( 画像(2枚) 枚)
Rust DDD - 画像( 画像(3枚) 枚)