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
katayama8000
October 17, 2025
0
2
Rust DDD
katayama8000
October 17, 2025
Tweet
Share
Featured
See All Featured
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
160
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
72
Rails Girls Zürich Keynote
gr2m
95
14k
Designing Experiences People Love
moore
143
24k
How to make the Groovebox
asonas
2
1.9k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
1
220
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
99
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Thoughts on Productivity
jonyablonski
73
5k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
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枚) 枚)