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
100
フロントエンドエンジニアがGO勉強したら ORM完全に理解した
エンジニア達の「完全に理解した」Talk #59
で発表したスライドです。
Terisuke
November 26, 2024
Tweet
Share
More Decks by Terisuke
See All by Terisuke
Technology is expression.
terisuke
0
8
クラウドでディープラーニングをやってみた(20敗)
terisuke
0
10
ネイティブAI駆動開発エンジニアから見た現代の開発環境最適解(2025/01)
terisuke
0
26
Next.js使いからみたGoのいいところ悪いところ
terisuke
0
83
初めてのIoTGobot編
terisuke
1
30
趣味:LTのススメ
terisuke
0
17
チャリチャリLT会 #1 チャリチャリ×ヌーラボ『私の仕事を知ってほしい』
terisuke
0
50
【個人開発! お一人様プロジェクト発表会】あつまれエンジニアの森 #7 ~ 私の個人開発珍道中 ~
terisuke
0
71
Other Decks in Programming
See All in Programming
Software Architecture
hschwentner
6
2.1k
How mixi2 Uses TiDB for SNS Scalability and Performance
kanmo
35
14k
時計仕掛けのCompose
mkeeda
1
290
Amazon Bedrock Multi Agentsを試してきた
tm2
1
280
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
200
GoとPHPのインターフェイスの違い
shimabox
2
170
最近のVS Codeで気になるニュース 2025/01
74th
1
260
定理証明プラットフォーム lapisla.net
abap34
1
1.8k
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
0
190
チームリードになって変わったこと
isaka1022
0
190
もう僕は OpenAPI を書きたくない
sgash708
3
990
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
tasshi
0
220
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Writing Fast Ruby
sferik
628
61k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Code Review Best Practice
trishagee
66
17k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Being A Developer After 40
akosma
89
590k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.4k
BBQ
matthewcrist
86
9.5k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
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!! プ ロ フ ィ ー ル
リ ン ク と か プ ロ ダ ク ト と か