Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
🕗Perlの時間はモジュールで #perlwakate
Search
koluku
July 01, 2020
Programming
0
1.2k
🕗Perlの時間はモジュールで #perlwakate
2020/07/01 にオンラインで開催された 「Perl若手の会(
https://connpass.com/event/179235/)」でのLT資料です
koluku
July 01, 2020
Tweet
Share
More Decks by koluku
See All by koluku
asdf-ecspresso作って 友達が増えた話 / Fujiwara Tech Conference 2025
koluku
0
4.6k
日常業務のカイゼンで図る開発チームへの貢献 - YAPC::Kyoto 2023
koluku
4
2.1k
Other Decks in Programming
See All in Programming
生成AI時代を勝ち抜くエンジニア組織マネジメント
coconala_engineer
0
240
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
130
Python札幌 LT資料
t3tra
6
1k
著者と進める!『AIと個人開発したくなったらまずCursorで要件定義だ!』
yasunacoffee
0
150
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
390
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
560
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
130
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
120
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
8
3.2k
Flutter On-device AI로 완성하는 오프라인 앱, 박제창 @DevFest INCHEON 2025
itsmedreamwalker
1
140
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
810
エディターってAIで操作できるんだぜ
kis9a
0
750
Featured
See All Featured
Deep Space Network (abreviated)
tonyrice
0
20
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
64
35k
Prompt Engineering for Job Search
mfonobong
0
120
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
290
SEO for Brand Visibility & Recognition
aleyda
0
4.1k
Applied NLP in the Age of Generative AI
inesmontani
PRO
3
2k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.1k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
180
Getting science done with accelerated Python computing platforms
jacobtomlinson
0
76
Writing Fast Ruby
sferik
630
62k
Transcript
Perlͷ࣌ؒϞδϡʔϧͰ Perlएखͷձ 2020-07-01 @koluku
ࣗݾհ • koluku ʢίϧΫʣ • एख, Perlܦݧ2ϲ݄, ొஃܦݧແ͠ • Python/Go͕ϝΠϯ
͢͜ͱɾ͞ͳ͍͜ͱ • ͢͜ͱ • ࣌ؒͷ੍ޚͷ͋Ε͜Ε • Time::Pieceָ͕ͩΑ • ͞ͳ͍͜ͱ •
࣮ͷ
$^T • ʮϓϩάϥϜΛ࣮ߦ։࢝ͨ࣌͠ࠁΛɺلݩ (1970ͷ࢝Ί) ͔Βͷඵ Ͱ ࣔͨ͠ͷͰ͢ʯ • لݩ (1970ͷ࢝Ί)
ͬͯԿΑʁ
time • ʮ΄ͱΜͲͷγεςϜͰلݩUTC19701݄100:00:00Ͱ͢; ಛతͳྫ֎ͱͯ͠ɺݹ͍MacOSͰϩʔΧϧλΠϜκʔϯͷ 19041݄100:00:00Λلݩͱ͍ͯ͠·͢ɻʯ • UTC19701݄100:00:00͍ΘΏΔUNIX࣌ؒ • UTC19041݄100:00:00͏Δ͏ͷྫ֎ճආͷͨΊͷ •
1904͔Β2096·Ͱ͏Δ͏ଘࡏ͢Δ
$^Tͱtime • ͲͪΒγεςϜ࣌ؒΛฦ͢ͷͰ࣮࣭ಉ͡ • ݱࡏ࣌ؒΛΖ͏ʹUNIX࣌ؒʢඵʣͰฦ͞ΕΔͷͰී௨ʹѻ ͑ͳ͍ • ͦ͜ͰlocaltimeͱgmtimeΛ͏
localtime • ʮtime͕ؔฦ࣌͢ࠁΛɺϩʔΧϧͳλΠϜκʔϯͰଌͬͨ࣌ࠁͱ͠ ͯɺ9ཁૉͷྻʹม͠·͢ɻී௨ɺҎԼͷΑ͏ʹ͍ͯ͠·͢:ʯ • $wday༵Λ0ͱ༵ͨ͠ɺ $yday ͦͷͷԿ͕ؼͬͯ͘ Δ •
εΧϥʔͷͱ͖ʹѻ͏ͱจࣈྻͰؼͬͯ͘Δ • ศརʂ
gmtime • localtimeͩͱϚγϯͷ࣌ؒʹґଘ͢ΔͨΊຊͩͱGMT+9:00 • άϦχοδඪ४࣌ʹ͢ʹ-9࣌ؒ͢Δඞཁ͕… • localtimeͱಉ͡ΈͰάϦχοδඪ४࣌Λѻ͏gmtime͕͋ΔͷͰ ҆৺ʂ
localtimeͱgmtimeͷ᠘ • ʮ$year 1900 ͔ΒͷΛ࣋ͪ·͢ɻʯ • ਓ͕ؒಡΈ͍͢Α͏ʹԼೋܻͰஅͰ͖Δ։࢝ͷͨΊ • ͍ΘΏΔPOSIX४ڌ
• ͚ͩͰݟΔͱ3ύλʔϯ͋Δ
localtimeɺศརʹศརͳΜ͚ͩͲ… • ใ͔͠ͳ͍͔Βѻ͏ʹ݁ہؔΛ࡞Δඞཁ͕͋Δ • ศརϝιου͕ੜ͑ͨΦϒδΣΫτͰฦͯ͠΄͘͠ͳ͍ʁ
Time::Piece • Timepiece࣌ܭͱ͍͏ҙຯ • localtime, gmtime͕Time::PieceΦϒδΣΫτͰؼͬͯ͘Δ • ཉ͍͠ػೳେମἧ͍ͬͯΔ
Time::PieceͰՃࢉɾݮࢉ • Time::SecondsͰ1ʢONE_MINUTEʣͳͲͷఆ͕ٛݺͼग़ͤΔ • Time::PieceʹTime::SecondsͰՃࢉɾݮࢉ͢Δ͜ͱ͕Ͱ͖Δ • localtime + ONE_DAY •
Time::Pieceಉ࢜Ͱݮࢉ͢ΔͱTime::SecondsͰؼͬͯ͘Δʢඵʣ • localtime - gmtime
Time::PieceͰൺֱ • Time::Pieceಉ࢜Ͱൺֱ͢ΔࣄͰ͖Δ • return if (localtime - gmtime ==
ONE_HOUR * 9); • Time::Pieceศར͗͢ͳ͍ʁ
ͰͲ͏ͬͯՃࢉൺֱΛͯ͠Δʁ • ͪΐͬͱدΓಓ • Α͘ߟ͑ͨΒTime::PieceΦϒδΣΫτ͔ͩΒී௨ͷԋࢉࢠͰܭࢉ Ͱ͖Δͷ͓͔͍͠
͜͏͍͏ͱ͖ίʔυΛಡΉͷ͕ૣ͍ • ͱ͏͍͏͜ͱͰmeta::cpan͔ΒBrowseͰίʔυΛݟͯΔͱ Time::Seconndsʹoverloadͱ͍͏໊લ͕ग़ͯ͘Δ
overload • perldoc.jpΛݟͯΈΔͱʮPerl ͷԋࢉࢠͷΦʔόʔϩʔυΛߦ͏ύο έʔδʯͱ͋Δ • ͭ·Γࢉज़ԋࢉࢠൺֱԋࢉࢠΛผͷؔʹ্ॻ͖Ͱ͖Δ • Time::SecondsͰ+ԋࢉࢠͷ߹ࠨӈ͔ΒΛऔͬͯؔʹೖΕͯ ܭࢉͨ͠ͷΛฦ͍ͯ͠Δ
• ͳΔ΄ͲͶ
Ͱେମѻ͍͍ͨͷMySQLͷͱ͖… • ͬͯɺ࣌ؒͱ͍͑MySQLͰͷѻ͍ͳ͔ͳ͔໘ • fracʢখҎԼʣ͕Ճ͞Ε͍ͯΔ͜ͱ͋Δ • DATETIMEͱTIMESTAMPಉ͡ϑΥʔϚοτͰɺ • αϙʔτ͞Ε͍ͯΔൣғ͕ڱ͍, DATETIME݄ɾʹ00Λڐ༰
• ಉ͡Ͱҧ͏Ͱొ͞ΕΔ͕࣌͋Δ • ͜Μͳͷී௨ʹѻ͍ͨ͘ͳ͍ʂ
Time::Piece::MySQL • Time::Pieceͷ֦ுϝιου • Time::Piece->mysql_dateͰMySQLͷDATEܕʹม • Time::Piece->from_mysql_date($datetime)ͰMySQLͷDATEܕ͔Β Time::PieceΦϒδΣΫτʹม • ͜ΕͰMySQLͰͷ࣌ؒͷॲཧʹۤ࿑͢Δ͜ͱͳ͘ͳͬͨ…ʂ
ͬͨʂੈքʹฏ͕๚ΕͨʂͰ… • ϛϦඵɾϚΠΫϩඵͷѻ͍Ͳ͏͢Δͷʁ • ϓϩάϥϜͷ࣮ߦ࣌ؒΛѻ͍͍ͨΜ͚ͩͲ • Q: Ұఆ࣌ؒॲཧΛsleepͤ͞Δʹ • Λྐྵʹม͍ͨ͠
• ͷൣғʹ͋Δ͔Ͳ͏͔Λָʹܭࢉ͍ͨ͠ • ຊҎ֎ͷ࣌ࠁΛϩέʔϧ͍ͨ͠ • ҧ͏ϩέʔϧ࣌ؒͲ͏͠ͰࠩΛग़͍ͨ͠ • etc…
͝ΊΜʂLT͡Ό࣌ؒΓͳ͍͔Β ࣗͰௐͯʂ