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
Backside of coverage measurement of Go
Search
po3rin
May 20, 2019
Programming
1
89
Backside of coverage measurement of Go
Go Conference Tokyo 二次会のLTです!Goのカバレッジ計測の裏側について
po3rin
May 20, 2019
Tweet
Share
More Decks by po3rin
See All by po3rin
M3におけるCI/CDパイプラインを新鮮に保つ仕組み
po3rin
0
320
Go Templateを使った フロントエンド開発を採用した 経緯と所感
po3rin
1
310
検索基盤移行時の思考
po3rin
0
4.2k
Go1.19で採用された Pattern-defeating Quicksort の紹介
po3rin
7
5.8k
Elasticsearchを負荷から守るesguard
po3rin
0
260
Sudachi×Elasticsearchへの移行と医療検索システム精度改善
po3rin
1
870
eskeeperを使ったファイル定義によるindex管理
po3rin
2
480
M3 情報検索/推薦論文輪読会 ~SIGIR祭~ (SIGIR2021: Session 6D – IR Models)
po3rin
0
100
Handling Temporal Query for Health Search with ja-timex
po3rin
3
330
Other Decks in Programming
See All in Programming
やっと腹落ち「スプリント毎に動くモノをリリースする」〜ゼロから始めるメガバンクグループのアジャイル実践〜
sasakendayo
0
180
良いコードレビューとは
danimal141
9
8.5k
PEPCは何を変えようとしていたのか
ken7253
3
310
CDKを使ったPagerDuty連携インフラのテンプレート化
shibuya_shogo
0
120
自力でTTSモデルを作った話
zgock999
0
120
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
5
1.2k
Introduction to C Extensions
sylph01
3
120
Amazon Bedrockマルチエージェントコラボレーションを諦めてLangGraphに入門してみた
akihisaikeda
1
160
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
250
DevNexus - Create AI Infused Java Apps with LangChain4j
kdubois
0
140
技術を改善し続ける
gumioji
0
180
Django NinjaによるAPI開発の効率化とリプレースの実践
kashewnuts
1
300
Featured
See All Featured
Unsuck your backbone
ammeep
669
57k
Faster Mobile Websites
deanohume
306
31k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Documentation Writing (for coders)
carmenintech
69
4.6k
Why Our Code Smells
bkeepers
PRO
336
57k
Navigating Team Friction
lara
183
15k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
13
1k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Git: the NoSQL Database
bkeepers
PRO
429
65k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
Backside of coverage measurement In Go Gopher Conference Tokyo 2019
Spring Second party May 20, 2019 @ po3rin
@po3rin Software Enginner @ Shiroyagi Corporation QBHF Golang / Python
/ Rust / Docker / AWS / Elasticsearch
QBHF (P$POGFSFODF5PLZP4QSJOHͰొஃ͠·ͨ͠ʂʂ IUUQTTQFBLFSEFDLDPNQPSJOEJWFJOUPCVJMELJUMMCXJUIHP
QBHF Introduction \
QBHF (Pඪ४ͰςετΧόϨοδΛऔΕΔ Coverage of Go Ὂ
QBHF What happened Ὂ ۀͰ$PWFSBHFͷؔͰΤϥʔ͕ɻɻͦ ͜Ͱؾ͍ͮͨ(PͷΧόϨοδͷ୲อ͢ΔͷͱԿ ͳͷ͔ΛΧόϨοδܭଌͷ࣮͔ΒௐͯΈ·ͨ͠
QBHF ɾ(PͷΧόϨοδ͕ͲͷΑ͏ʹߦΘΕ͍ͯΔ ͍ͷ͔ΛཧղͰ͖Δ ɾ(PͷΧόϨοδͷܭଌํ๏͔Β։ൃ࣌ʹ ҙ͢Δ͖͜ͱΛֶΔ Ὂ the benefits of this
talk
QBHF Reading Go source code of “cover” \
QBHF Reading Go source code of “cover” (1) Ὂ HJUIVCDPNHPMBOHHP
TSDDNEDPWFS DPWFSHP
QBHF Reading Go source code of “cover” (2) Ὂ QBSTFS1BSTF'JMFͰ(PϑΝΠϧΛ੩తղੳ͍ͯ͠Δɻ
FSSলུ
QBHF Reading Go source code of “cover” (3) Ὂ QBSTFS1BSTF'JMFͰಘͨ
BTU'JMFΛ͞Βʹಠࣗͷ DPWFS'JMFߏମʹ֨ೲ͍ͯ͠ ΔɻͦΕΛBTU8BMLʹͯ͠ ͍Δɻͭ·ΓDPWFS'JMF BTU7JTJUJOUFSGBDFΛ࣮ͯ͠ ͍Δͷ͕Θ͔Δ
QBHF Reading Go source code of “cover” (3) Ὂ BTU#MPDLʹͨͲΓண͘·Ͱ8BMLΛճ͠ଓ͚ɺϒϩοΫΛ
ݟ͚ͭͨΒBEE$PVOUFSTΛಡΜͰ͍Δ
QBHF Reading Go source code of “cover” (3) Ὂ BEE$PVOUFST͕ίʔυʹΧϯλʔΛࠩ͠ࠐΜͰɺς
ετதʹ͜͜Λ௨͔ͬͨΛه͍ͯ͠Δɻ #PEZলུ
QBHF Show annotated source code Ὂ DPWFSBHFܭଌதʹΧϯ λʔࠐΜͩίʔυ͕Ͳ͏ ͳ͍ͬͯΔͷ͔ΛݟΔͨΊ ͚ͩͷ୭ಘϚχΞ͚πʔ
ϧɻ
QBHF Show annotated source code Ὂ
QBHF ΧόϨοδܭଌͷछྨ Ὂ ໋ྩཏɿTUBUFNFOUDPWFSBHFʣ ذཏɿCSBODIDPWFSBHFʣ ݅ཏɿDPOEJUJPODPWFSBHFʣ C0 C1 C2
QBHF ΧόϨοδܭଌͷछྨ Ὂ BCUSVF ͷ̍έʔεΛ࣮ߦ͢Ε BCUSVF BCGBMTF ͷέʔεΛ࣮ߦ͢Ε BͱCͷUSVFPSGBMTFͷΈ߹Θͤ έʔεΛ࣮ߦ͢Ε
C0 C1 C2
QBHF ΧόϨοδܭଌͷछྨ Ὂ BCUSVF ͷ̍έʔεΛ࣮ߦ͢Ε BCUSVF BCGBMTF ͷέʔεΛ࣮ߦ͢Ε BͱCͷUSVFPSGBMTFͷΈ߹Θͤ έʔεΛ࣮ߦ͢Ε
C0 C1 C2
QBHF ͭ·Γ(PͷΧόϨοδܭଌ C0 !!!
QBHF ΧόϨοδͰશύλʔϯΛཏͰ͖͍ͯΔ༁Ͱͳ͍ɻ ΧόϨοδ͚ͩʹཔΓΒͣʹɺͪΌΜͱࣗͰύλʔϯΛ ཏͰ͖͍ͯΔ͔ҙ࣮͍ͯͯ͘͠͠ඞཁ͕͋Δɻ
QBHF Additional Talk \
QBHF (Pͷ੩తղੳΛղઆͨ͠ബ͍ ຊʂ#PPUIͰൢച͞Εͯ·͢ɻ ੩తղੳʹڵຯΛ࣋ͬͨΒ͜Ε ΛಡΊྑ͍ɻ
QBHF (P$POGFSFODF5PLZP4QSJOHͰొஃ͠·͢ɻ Ὂ
Backside of coverage measurement In Go Gopher Conference Tokyo 2019
Spring Second party May 20, 2019 @ po3rin