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
ドメインの本質を掴む / Get the essence of the domain
Search
Takumi Shotoku
November 14, 2024
Technology
2
270
ドメインの本質を掴む / Get the essence of the domain
【オフライン開催】Roppongi.rb #24
https://roppongirb.connpass.com/event/335196/
Takumi Shotoku
November 14, 2024
Tweet
Share
More Decks by Takumi Shotoku
See All by Takumi Shotoku
Automatically generating types by running tests
sinsoku
2
6.2k
滅・サービスクラス🔥 / Destruction Service Class
sinsoku
8
2.2k
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
230
"型"のあるRailsアプリケーション開発 / Typed Rails application development
sinsoku
10
2.7k
Let's get started with Ruby && Rails Tips
sinsoku
0
420
LTの敷居を下げる / Lower the threshold for LT
sinsoku
1
370
CircleCIの高速化🚀 / CircleCI faster
sinsoku
3
1.4k
Railsアプリと型検査 / Rails app and type checking
sinsoku
5
1.5k
💎のつくりかた 2023 / How to make gems 2023
sinsoku
2
390
Other Decks in Technology
See All in Technology
自動化の第一歩 -インフラ環境構築の自動化について-
smt7174
1
120
AI-in-the-Enterprise|OpenAIが公開した「AI導入7つの教訓」——ChatGPTで変わる企業の未来とは?
customercloud
PRO
0
160
Terraform にコントリビュートしていたら Azure のコストをやらかした話 / How I Messed Up Azure Costs While Contributing to Terraform
nnstt1
1
450
Azure & DevSecOps
kkamegawa
2
180
AOAI で AI アプリを開発する時にまず考えたいこと
mappie_kochi
1
650
コードや知識を組み込む / Incorporating Codes and Knowledge
ks91
PRO
0
170
試作とデモンストレーション / Prototyping and Demonstrations
ks91
PRO
0
110
時間がないなら、つくればいい 〜数十人規模のチームが自律性を発揮するために試しているいくつかのこと〜
kakehashi
PRO
22
5.2k
newmo の創業を支える Software Architecture と Platform Engineering
110y
1
320
クラウドネイティブ環境の脅威モデリング
kyohmizu
1
400
Coding Agentに値札を付けろ
watany
3
400
DynamoDB のデータを QuickSight で可視化する際につまづいたこと/stumbling-blocks-when-visualising-dynamodb-with-quicksight
emiki
0
140
Featured
See All Featured
Navigating Team Friction
lara
185
15k
How to train your dragon (web standard)
notwaldorf
91
6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
13
840
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
BBQ
matthewcrist
88
9.6k
Facilitating Awesome Meetings
lara
54
6.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.3k
For a Future-Friendly Web
brad_frost
177
9.7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Six Lessons from altMBA
skipperchong
28
3.8k
Visualization
eitanlees
146
16k
Transcript
υϝΠϯͷຊ࣭Λ௫Ή Roppongi.rb #24 2024/11/14 1
ࣗݾհ • ໊લ: ਖ਼ಙ (aka: ਆ) • GitHub: @sinsoku (ը૾ӈ্)
• X: @sinsoku_listy (ը૾ӈԼ) • Railsྺ: 10͘Β͍ 2
Omotesando.rb ͷೋ࣍ձޙ 3
! LTͰͤΔωλΛ୳͢ 4
࠷ۙͷۀ • طଘͷ༷ΛௐΔ • ςʔϒϧߏΛѲ͢Δ • ERਤ ΛோΊΔ • υϝΠϯڥքΛߟ͑Δ
• ERਤ ͰςʔϒϧΛάϧʔϓԽ͢Δ 5
࣮ମؔ࿈ϞσϧʢERDʣ1 1 https://ja.wikipedia.org/wiki/ %E5%AE%9F%E4%BD%93%E9%96%A2%E9%80%A3%E3%83%A2%E3%83%87%E3%83%AB 6
ERਤΛѻ͏πʔϧͷհ 1. SchemaSpyʢੜʣ 2. dbdocs.ioʢੜʣ 3. MySQL Workbenchʢੜɾฤूʣ 4. pgAdminʢੜɾฤूʣ
5. dbdiagram.ioʢੜɾฤूʣ 7
rails-mermaid_erd ͷ͠ͳ͍2 2 https://speakerdeck.com/sanfrecce_osaka/rails-and-mermaid 8
SchemaSpy3 • Java • طଘͷDBʹଓͯ͠ੜՄ • HTMLͷϑΝΠϧΛੜ͢Δ • ! DockerΠϝʔδ͋Γ
• JREΛೖΕΔඞཁͳ͍ 3 https://schemaspy.org/ 9
͍ํ $ docker run -"network="host" -v "$PWD/output:/output" \ schemaspy/schemaspy:snapshot \
-t pgsql11 \ -db bootcamp_development \ -host localhost \ -u postgres \ -p postgres 10
11
12
13
dbdocs4 • Node.js, Web • طଘͷDBʹଓͯ͠ੜՄ • Ӿཡ੍ݶ͕Մೳʢύεϫʔυ, ϓϥΠϕʔτ ʣ
• ! " Λॻ͚Δ • ⚠ ϩʔΧϧڥͰӾཡͰ͖ͳ͍ 4 https://dbdocs.io/ 14
͍ํ $ npm install -g dbdocs $ dbdocs login $
dbdocs db2dbml postgres \ 'postgresql:/#postgres:postgres@localhost:5432/bootcamp_development' \ -%outFile=database.dbml $ dbdocs build database.dbml -%project bootcamp 15
16
17
18
MySQL Workbench • طଘͷDB͔ΒςʔϒϧใΛಡΈࠐΈՄʢMySQLͷΈʣ • ςʔϒϧΛάϧʔϓԽͰ͖Δ • ڞಉฤूͰ͖ͳ͍ • !
Λॻ͚Δʢ͔͠͠ " ౾දࣔʣ 19
20
pgAdmin 4 • طଘͷDB͔ΒςʔϒϧใΛಡΈࠐΈՄʢpgͷΈʣ • ςʔϒϧΛάϧʔϓԽͰ͖ͳ͍ • ڞಉฤूͰ͖ͳ͍ • !
Λॻ͚ͳ͍ 21
22
23
dbdiagram.io5 • schema.rb ͔ΒςʔϒϧใΛಡΈࠐΈՄ • ! ςʔϒϧΛάϧʔϓԽͰ͖Δ • ! ڞಉฤूͰ͖Δ
• ! " Λॻ͚Δ • ⚠ ϩʔΧϧڥͰӾཡͰ͖ͳ͍ 5 https://dbdiagram.io/ 24
25
͓·͚: The Top 6 Database Design Tools for 20246 6
https://vertabelo.com/blog/database-design-tools/ 26
ERਤʹ͍ͭͯৄ͍͠ਓ ͥͻޙ΄Ͳ͠·͠ΐ͏ 27