Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Loglassのバックエンドアーキテクチャについて
Search
HirokiChida
December 11, 2023
Programming
0
180
Loglassのバックエンドアーキテクチャについて
HirokiChida
December 11, 2023
Tweet
Share
More Decks by HirokiChida
See All by HirokiChida
チームが自己組織化してから敢えて専任スクラムマスターを置いてみたらめちゃめちゃワークした話 / How bringing in a Scrum Master to an already self-organized team totally worked out
hc0208
2
3.8k
Other Decks in Programming
See All in Programming
認証・認可の基本を学ぼう後編
kouyuume
0
250
クラウドに依存しないS3を使った開発術
simesaba80
0
130
大規模Cloud Native環境におけるFalcoの運用
owlinux1000
0
180
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
10
1.4k
Denoのセキュリティに関する仕組みの紹介 (toranoana.deno #23)
uki00a
0
140
dotfiles 式年遷宮 令和最新版
masawada
1
810
マスタデータ問題、マイクロサービスでどう解くか
kts
0
110
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
130
SwiftUIで本格音ゲー実装してみた
hypebeans
0
470
実は歴史的なアップデートだと思う AWS Interconnect - multicloud
maroon1st
0
240
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
130
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
130
Featured
See All Featured
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
100
How to Ace a Technical Interview
jacobian
281
24k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
390
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Become a Pro
speakerdeck
PRO
31
5.7k
ラッコキーワード サービス紹介資料
rakko
0
1.7M
The #1 spot is gone: here's how to win anyway
tamaranovitovic
1
860
30 Presentation Tips
portentint
PRO
1
170
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
110
Believing is Seeing
oripsolob
0
13
Transcript
2023/12/13 Backend Night 〜アーキテクチャ設計編〜 Loglassのバックエンドアーキテクチャについて
©2023 Loglass Inc. 2 自己紹介 Loglassのバックエンドアーキテクチャについて ▪ 名前 千田浩輝 ▪役職
エンジニアリングマネージャー ▪経歴 大学時代にベンチャー企業の立ち上げから参画し、テックリードと してSaaSの開発に従事。その後、大手 SIerにジョインし金融システ ムの開発からマネジメントまで幅広く携わり、 2022年6月から株式 会社ログラスにジョイン。 ▪SNS https://twitter.com/hc0208
©2023 Loglass Inc. 現状共有
©2023 Loglass Inc. 4 Loglassのバックエンドアーキテクチャについて
©2023 Loglass Inc. 5 Loglassのバックエンドアーキテクチャについて 概要 • DDD(ドメイン駆動設計)に力を入れている ◦ バックエンドの開発言語は
Kotlin ◦ フレームワークはSpring Boot • モノリスなアプリケーションを複数チームで開発している ◦ アーキテクチャについては見直していきたい • 内部のコードの品質は高い(と思っている)
©2023 Loglass Inc. アーキテクチャ
©2023 Loglass Inc. 7 Loglassのバックエンドアーキテクチャについて オニオンアーキテクチャ
©2023 Loglass Inc. 8 Loglassのバックエンドアーキテクチャについて 具体例 api/../UserController app/../UpdateUserUseCase domain/../UserRepository domain/../User
infra/../UserJDBCRepository domain/../Email
©2023 Loglass Inc. 9 Loglassのバックエンドアーキテクチャについて ドメインオブジェクトの書き方 旧 現在 Kotlinのdata classはequals,
hashCode, toString, copyなどのメソッドを自動で生成して くれる。 便利だが、copyメソッドを利用することでドメイ ンに書かれたルールを突破できてしまう可能 性がある。 現在はcopyメソッドを禁止するテストを書いて 実現している。 誰もが安全に使える形を目指している。
©2023 Loglass Inc. 10 Loglassのバックエンドアーキテクチャについて モデリングのやり方 以下の図を作成している • システム関連図 (s)
a. 開発するシステムと、関わりのあるアクターや外部システムとの関連を示す図 • ユースケース図 (u) a. ユーザーの要求に対するシステムの振る舞いを定義する図 • ドメインモデル図 (d) a. 簡易化したクラス図のようなもの • オブジェクト図 (o) a. ドメインモデルの具体例を記した図
None