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
フロントエンドエンジニアがGO勉強したら ORM完全に理解した
Search
Terisuke
November 26, 2024
Programming
1
150
フロントエンドエンジニアがGO勉強したら ORM完全に理解した
エンジニア達の「完全に理解した」Talk #59
で発表したスライドです。
Terisuke
November 26, 2024
Tweet
Share
More Decks by Terisuke
See All by Terisuke
で、結局どれが一番AGIに近いの?(2025-11-20)
terisuke
0
63
LT完全に理解した(2025-10-28)
terisuke
1
140
MCPを使ってAIだけの開発チームを作った
terisuke
0
49
GPT Web検索の歩き方
terisuke
1
41
「シンプル」な ゲームを作った
terisuke
1
20
Technology is expression.
terisuke
1
39
クラウドでディープラーニングをやってみた(20敗)
terisuke
1
33
ネイティブAI駆動開発エンジニアから見た現代の開発環境最適解(2025/01)
terisuke
0
76
Next.js使いからみたGoのいいところ悪いところ
terisuke
0
110
Other Decks in Programming
See All in Programming
PHPライセンス変更の議論を通じて学ぶOSSライセンスの基礎
matsuo_atsushi
0
170
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
3
1.2k
乱雑なコードの整理から学ぶ設計の初歩
masuda220
PRO
32
14k
社内オペレーション改善のためのTypeScript / TSKaigi Hokuriku 2025
dachi023
1
130
Phronetic Team with AI - Agile Japan 2025 closing
hiranabe
2
670
「AWS CDK入門」の前日譚/Prequelto-Introduction-To-AWSCDK
tyumugi1113
0
100
Stay Hacker 〜九州で生まれ、Perlに出会い、コミュニティで育つ〜
pyama86
2
2.4k
GraalVM Native Image トラブルシューティング機能の最新状況(2025年版)
ntt_dsol_java
0
170
AIの弱点、やっぱりプログラミングは人間が(も)勉強しよう / YAPC AI and Programming
kishida
13
5.3k
レイトレZ世代に捧ぐ、今からレイトレを始めるための小径
ichi_raven
0
460
Evolving NEWT’s TypeScript Backend for the AI-Driven Era
xpromx
0
180
Eloquentを使ってどこまでコードの治安を保てるのか?を新人が考察してみた
itokoh0405
0
3.2k
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
Making Projects Easy
brettharned
120
6.5k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Being A Developer After 40
akosma
91
590k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Code Review Best Practice
trishagee
72
19k
How to Ace a Technical Interview
jacobian
280
24k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
340
Bash Introduction
62gerente
615
210k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Transcript
Now Loading.....
フロントエンドエンジニアが GO勉強したら ORM完全に理解した テ リ ス ケ 2 0 2
4 / 1 1 / 2 6
テリスケ IS 何? <テリスケ(本名:寺田康佑> # 音大卒業、フリーのトランペッターしてました # コロナで無職・リクルートに転職 # 社内で営業効率化システムを独学で開発(Python)
# 去年4月にG’s ACADEMYに入学、フロントエンド技術を学ぶ # 10月に卒業後すぐに起業、ソフトウェア開発してます # 来年からスタートアップのテックリード兼務予定 # 生成AI # Next.js # GoogleCloud # Terraform # Go # 福岡 # ビリーズブートキャンプで半年で5kg痩せました
🎉25週連続LT達成!
None
テリスケさん(34)
ORM IS 何? # オブジェクト関係マッピング (Object-Relational Mapping)の略 # SQL文をコードで書ける #
スクリプトをシンプルにしやすい # コードの再利用をしやすい # オブジェクト指向のコーディングと相性がいい
users = Array.new sql = "SELECT * FROM users" rows
= some_sql_module.query(sql); # `some_sql_module`は簡略化された例 rows.each do |row| user = User.new; user.id = row[:id] # シンボルがカラム名として使用されると仮定 user.name = row[:name] user.email = row[:email] users << user end users = User.all SQL ORM (ActiveRecord)
EX/データの作成、読み取り、更新、削除 Create: データを作る。 Read: 特定のデータを探す、または全部のデータを見る。 Update: 既存のデータの内容を変える。 Delete: データを削除する。 Clauses(クロージズ)
Where("color = ?", "red").Order("size ASC").Limit(10) // 赤いブロックを大きさ順に並べて、10個だけ欲しい!
便利だったこと # datatypes.JSONという型が便利 (MySQL ver8から使用可) # ライブラリインポートしなくても 基本デフォルトでなんでも入ってる
しんどかったこと #型定義キッッッッツ!! # 複数の型をまとめたカラムを そのまま扱えない # 解決策としてMarshal,Unmarshal が使える ID:数字(int) Name:文字(string)
ExistingUser:Yes or NO(Bool)
まとめ GOはクラウドで 使おうね
まとめ でもGORMは超便利 # コード側からDB設計できる機能(マイグレーシ ョン)はとても便利 # コードの再利用ができるので開発がとても早く なる #Pythonなど多言語にもORMライブラリがあるら しいので、AIプロダクト作成に活かしていきたい
AI絵本ジェネレーター 鋭意製作中・・・!
THANK YOU FOR WATCHING!! プ ロ フ ィ ー ル
リ ン ク と か プ ロ ダ ク ト と か