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
140
フロントエンドエンジニアがGO勉強したら ORM完全に理解した
エンジニア達の「完全に理解した」Talk #59
で発表したスライドです。
Terisuke
November 26, 2024
Tweet
Share
More Decks by Terisuke
See All by Terisuke
GPT Web検索の歩き方
terisuke
1
39
「シンプル」な ゲームを作った
terisuke
1
17
Technology is expression.
terisuke
1
28
クラウドでディープラーニングをやってみた(20敗)
terisuke
1
31
ネイティブAI駆動開発エンジニアから見た現代の開発環境最適解(2025/01)
terisuke
0
70
Next.js使いからみたGoのいいところ悪いところ
terisuke
0
110
初めてのIoTGobot編
terisuke
1
36
趣味:LTのススメ
terisuke
0
32
チャリチャリLT会 #1 チャリチャリ×ヌーラボ『私の仕事を知ってほしい』
terisuke
0
70
Other Decks in Programming
See All in Programming
Jakarta EE Meets AI
ivargrimstad
0
650
構文解析器入門
ydah
7
2.1k
React 使いじゃなくても知っておきたい教養としての React
oukayuka
18
5.5k
AIに安心して任せるためにTypeScriptで一意な型を作ろう
arfes0e2b3c
0
340
Gemini CLIの"強み"を知る! Gemini CLIとClaude Codeを比較してみた!
kotahisafuru
3
970
11年かかって やっとVibe Codingに 時代が追いつきましたね
yimajo
1
260
GUI操作LLMの最新動向: UI-TARSと関連論文紹介
kfujikawa
0
770
SwiftでMCPサーバーを作ろう!
giginet
PRO
2
230
リッチエディターを安全に開発・運用するために
unachang113
1
370
可変性を制する設計: 構造と振る舞いから考える概念モデリングとその実装
a_suenami
10
1.7k
Comparing decimals in Swift Testing
417_72ki
0
170
QA x AIエコシステム段階構築作戦
osu
0
260
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
The Pragmatic Product Professional
lauravandoore
36
6.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
GitHub's CSS Performance
jonrohan
1031
460k
A better future with KSS
kneath
239
17k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Faster Mobile Websites
deanohume
308
31k
Mobile First: as difficult as doing things right
swwweet
223
9.9k
YesSQL, Process and Tooling at Scale
rocio
173
14k
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!! プ ロ フ ィ ー ル
リ ン ク と か プ ロ ダ ク ト と か