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
510
pythonでメタプログラミング(メタクラス編)
Daiki Ikeshima
March 25, 2021
Tweet
Share
More Decks by Daiki Ikeshima
See All by Daiki Ikeshima
MLOpsの「あるある」課題の解決と、そのためのライブラリgokart
mski_iksm
1
1.5k
gokartのキャッシュ競合防止のロック機能
mski_iksm
0
2.4k
macのunicode正規化.pdf
mski_iksm
0
36k
実臨床・Webサービス領域での機械学習研究 開発の標準化
mski_iksm
8
26k
高速化・並列化・標準化で スケールするML予測システムの開発
mski_iksm
5
3.2k
パイプラインツールgokartのタスク競合を解消した話
mski_iksm
0
230
Other Decks in Programming
See All in Programming
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
2.2k
クラウドに依存しないS3を使った開発術
simesaba80
0
210
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
160
ZJIT: The Ruby 4 JIT Compiler / Ruby Release 30th Anniversary Party
k0kubun
1
310
[AI Engineering Summit Tokyo 2025] LLMは計画業務のゲームチェンジャーか? 最適化業務における活⽤の可能性と限界
terryu16
2
220
TestingOsaka6_Ozono
o3
0
260
ゲームの物理 剛体編
fadis
0
390
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
430
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
150
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
2
910
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
0
840
Navigating Dependency Injection with Metro
l2hyunwoo
1
200
Featured
See All Featured
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
54
GitHub's CSS Performance
jonrohan
1032
470k
Typedesign – Prime Four
hannesfritz
42
2.9k
Applied NLP in the Age of Generative AI
inesmontani
PRO
3
2k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
58
41k
For a Future-Friendly Web
brad_frost
180
10k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.9k
Producing Creativity
orderedlist
PRO
348
40k
Site-Speed That Sticks
csswizardry
13
1k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
180
Believing is Seeing
oripsolob
0
19
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ʹ͋ΔλεΫ͔Β֘͢ΔλεΫΛ୳ͯ͠ύϥϝʔλΛηοτ͢Δ