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
290
ドメインの本質を掴む / 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
3
9.9k
滅・サービスクラス🔥 / Destruction Service Class
sinsoku
8
2.4k
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
250
"型"のあるRailsアプリケーション開発 / Typed Rails application development
sinsoku
10
2.8k
Let's get started with Ruby && Rails Tips
sinsoku
0
430
LTの敷居を下げる / Lower the threshold for LT
sinsoku
1
380
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
410
Other Decks in Technology
See All in Technology
[ JAWS-UG千葉支部 x 彩の国埼玉支部 ]ムダ遣い卒業!FinOpsで始めるAWSコスト最適化の第一歩
sh_fk2
2
110
データ基盤からデータベースまで?広がるユースケースのDatabricksについて教えるよ!
akuwano
3
130
SEQUENCE object comparison - db tech showcase 2025 LT2
nori_shinoda
0
150
「クラウドコスト絶対削減」を支える技術—FinOpsを超えた徹底的なクラウドコスト削減の実践論
delta_tech
4
170
React開発にStorybookとCopilotを導入して、爆速でUIを編集・確認する方法
yu_kod
1
290
AI時代の開発生産性を加速させるアーキテクチャ設計
plaidtech
PRO
3
160
ABEMAの本番環境負荷試験への挑戦
mk2taiga
3
130
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
3
180
AWS認定を取る中で感じたこと
siromi
1
190
fukabori.fm 出張版: 売上高617億円と高稼働率を陰で支えた社内ツール開発のあれこれ話 / 20250704 Yoshimasa Iwase & Tomoo Morikawa
shift_evolve
PRO
2
8k
Model Mondays S2E04: AI Developer Experiences
nitya
0
190
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
960
Featured
See All Featured
Gamification - CAS2011
davidbonilla
81
5.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Writing Fast Ruby
sferik
628
62k
Unsuck your backbone
ammeep
671
58k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Adopting Sorbet at Scale
ufuk
77
9.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
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