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
pythonでメタプログラミング(メタクラス編)
Search
Daiki Ikeshima
March 25, 2021
Programming
1
490
pythonでメタプログラミング(メタクラス編)
Daiki Ikeshima
March 25, 2021
Tweet
Share
More Decks by Daiki Ikeshima
See All by Daiki Ikeshima
MLOpsの「あるある」課題の解決と、そのためのライブラリgokart
mski_iksm
1
1.4k
gokartのキャッシュ競合防止のロック機能
mski_iksm
0
2.3k
macのunicode正規化.pdf
mski_iksm
0
33k
実臨床・Webサービス領域での機械学習研究 開発の標準化
mski_iksm
8
26k
高速化・並列化・標準化で スケールするML予測システムの開発
mski_iksm
5
3.2k
パイプラインツールgokartのタスク競合を解消した話
mski_iksm
0
210
Other Decks in Programming
See All in Programming
私の後悔をAWS DMSで解決した話
hiramax
4
210
testingを眺める
matumoto
1
140
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
110
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
3.4k
🔨 小さなビルドシステムを作る
momeemt
4
690
Navigation 2 を 3 に移行する(予定)ためにやったこと
yokomii
0
350
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
2.3k
はじめてのMaterial3 Expressive
ym223
2
900
RDoc meets YARD
okuramasafumi
4
170
Improving my own Ruby thereafter
sisshiki1969
1
160
速いWebフレームワークを作る
yusukebe
5
1.7k
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
320
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Into the Great Unknown - MozCon
thekraken
40
2k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
What's in a price? How to price your products and services
michaelherold
246
12k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
3k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
A designer walks into a library…
pauljervisheath
207
24k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Transcript
QZUIPOͰϝλϓϩάϥϛϯά dϝλΫϥεd UFDIUBML "*νʔϜౢେथ
ϝλϓϩάϥϛϯάͱʁ w ίʔυΛੜ͢ΔΑ͏ͳϓϩάϥϛϯάͷ͜ͱ w ίʔυΛʮϝλతʯʹ࡞Δ
ͳͥϝλϓϩάϥϛϯά͢Δͷ͔ʁ w Ϋϥεੜ࣌ͷৼΔ͍ͳͲಛघͳ੍ޚ͕Ͱ͖Δ w ؆୯ʹ͔͚ΔΑ͏ʹͳΔ ͨͩ͠ɺଟ༻͢ΔͱෳࡶʹͳΓ͗͢ΔͷͰɺ w දग़͢Δ෦Ͱଟ༻͠ͳ͍ w ϥΠϒϥϦͱ͔Ͱྑͦ͞͏
QZUIPOͰϝλϓϩάϥϛϯάྫ ͍ΖΜͳύλʔϯ͕͋Δ w ϝλΫϥεΫϥεͷ࡞ΓํΛنఆ w σίϨʔλϝιουΛϥοϓ͢Δ w σΟεΫϦϓλ@@HFU@@ ͱ͔͕࣮͞Ε͍ͯΔΫϥ εɻ!DMBTTNFUIPE
!TUBUJDNFUIPEͷ࣮Ͱ༗໊ w ͳͲͳͲ σίϨʔλ σΟεΫϦϓλΛ࣮ͬͯͨ͠ TUBUJDNFUIPEͷٖࣅίʔυ
ΫϥεͷΠϯελϯε࡞ w @@OFX@@ @@JOJU@@ ͱ͍͏ॱͰಛघϝιου͕ݺΕΔ w @@OFX@@ DMT Πϯελϯε͕Ͱ͖Δલʹ࣮ߦɻΫϥεΛΠϯελϯεԽ͢Δɻ w
@@JOJU@@ TFMG Πϯελϯε͕Ͱ͖ͨޙʹ࣮ߦɻΠϯελϯεΛॳظԽ͢Δɻ w @@OFX@@ Λ࣮ߦޙΠϯελϯε͕ฦΔͱɺͦͷ@@JOJU@@ Λ࣮ߦ͢Δ༷ Ϋϥε4BNQMF$MBTT͔ΒΠϯελϯεTFMGΛ࡞ ΠϯελϯεTFMGΛॳظԽ ΠϯελϯεTFMGΛฦ͢
ϝλΫϥεͱʁ w ϝλΫϥεɿΫϥεΛ࡞ΔΫϥεͷ͜ͱ w ࢦఆ͢Δ͜ͱͰΫϥε࡞࣌ͷৼΔ͍Λ੍ޚͰ͖Δ w ΫϥεͲ͏ͬͯ࡞͞Ε͍ͯΔͷ͔ʁʁʁ 4BNQMF$MBTT͕DMTʹͳΔ 4BNQMF.FUB$MBTTͰDMTΛ࡞
ΫϥεΛ࡞ΔɿUZQF UZQF ʮΦϒδΣΫτͷܕΛΓ͍ͨͱ͖ʯʹ ͏ϝιουͱͯ͠༗໊ ͏̍ͭͷ͍ํΫϥεΛ࡞Δ w Ϋϥε໊ ܧঝ͢ΔΫϥε ଐੑΛύϥϝʔλ ʹࢦఆ
w UZQFΛΠϯελϯεԽ͢ΔͱΫϥεʹͳΔ ಉ͡ ˢ ˠ
ϝλΫϥεΛ࣮ͯ͠ΈΔ w UZQFͷػೳΛͬͯϝλΫϥεΛ࣮ w ϝλΫϥεΫϥεΛ࡞ΔΫϥε w UZQFΠϯελϯεԽ͢ΔͱΫϥεʹͳΔ w ϝλΫϥεͷ@@OFX@@
ͰUZQFΛͬͯΫϥεΛ࡞Δ UZQFΛΠϯελϯεԽͯ͠ΫϥεΛ࡞ ࡞ͨ͠ΫϥεΛฦ͢ 6TF$MBTTఆٛ࣌ʹ.FUB$MBTT͕Πϯελ ϯεԽ͞Ε@@OFX@@ Λ࣮ߦɻฦͬͯ͘Δ ΫϥεΛDMTʹ͢Δɻ ΠϯελϯεԽͤͣʹݺΔ
ϝλΫϥεΛ࣮ͯ͠ΈΔ UZQFΛΠϯελϯεԽ ͯ͠ΫϥεΛ࡞ UZQFΛܧঝ w UZQFΛܧঝͯ͠.FUB$MBTTͰಉ༷ͷॲཧΛ࣮ݱ͢Δ w UZQF ʜ
TVQFS @@OFX@@ ʜ ͰΫϥεΛ࡞Δ
ϝλΫϥεͷ༻࣮ྫMVJHJ MVJHJ w TQPUJGZ։ൃͷύΠϓϥΠϯπʔϧ w ґଘؔͷ͋ΔॲཧΛղܾ͠ͳ͕Β࣮ߦͯ͘͠ΕΔ w "*νʔϜͰϥοϓͨ͠HPLBSUͱ͍͏πʔϧΛඪ४తʹ༻ IUUQTTQFBLFSEFDLDPNOJTIJCBHPLBSUXP[VPUVUBIVB IUUQTTQFBLFSEFDLDPNWBBBBBORVJTIHPLBSUGBMTFZVOZPOHUPLFUJOJUVJUF
MVJHJHPLBSUλεΫͷಛ w ͲͷλεΫΛ࣮ߦ͢Δ͔จࣈྻͰࢦఆՄೳ w UBTLύϥϝʔλͰίʔυҎ֎͔ΒจࣈྻͰͷ੍ޚ͕Մೳ w ઃఆϑΝΠϧ͔Β w ίϚϯυϥΠϯύϥϝʔλ͔ΒɹɹͳͲ 5BTL"
5BTL# \λεΫ໊TUSλεΫΫϥεPCKFDU^ ͷؔΛอ͍࣋ͯ͠ΔͨΊ 5BTL"ʹґଘ JOUͷύϥϝʔλΛ࣋ͭ w MVJHJHPLBSUͰλεΫͱ͍͏Ϋϥε୯ҐͰॲཧΛॻ͘
λεΫͷ໊લͱ࣮ମΛͲ͏อ͍࣋ͯ͠Δ͔ʁ w λεΫΫϥεͷϝλΫϥεͰ͋Δ3FHJTUFSʹλεΫΫϥεΛอ͍࣋ͯ͠Δ w ֤5BTLએݴ࣌ʹ3FHJTUFS@SFHʹλεΫ͕Ճ͞Ε͍ͯ͘ w 3FHJTUFS@SFHΛࢀর͢Δ͜ͱͰޙͰλεΫͷҰཡ͕औΕΔ ϝλΫϥε BCD"#$.FUB UZQFΛܧঝ
Λܧঝ 3FHJTUFS@SFHʹλεΫΫϥεΛՃ DMT λεΫΫϥε Λ࡞
λεΫ໊ͱλεΫΫϥεΛͲ͏อ͍࣋ͯ͠Δ͔ʁ w ͲͷλεΫΛ࣮ߦ͢Δ͔จࣈྻͰࢦఆՄೳ w ύϥϝʔλͰίʔυҎ֎͔ΒจࣈྻͰͷ੍ޚ͕Մೳ 3FHJTUFS@SFHʹ͋ΔλεΫ͔Β֘͢ΔλεΫΛ୳࣮ͯ͠ߦ͢Δ 3FHJTUFS@SFHʹ͋ΔλεΫ͔Β֘͢ΔλεΫΛ୳ͯ͠ύϥϝʔλΛηοτ͢Δ