Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Go Code Review Comment を翻訳した話
Search
Kenshi Kamata
June 01, 2017
Programming
7.8k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Go Code Review Comment を翻訳した話
Kenshi Kamata
June 01, 2017
More Decks by Kenshi Kamata
See All by Kenshi Kamata
500万ユーザーを支える残高の冪等性 / The idempotency of the balance for 5 million Merpay users
knsh14
0
3.1k
チャネルの仕組み
knsh14
6
5.6k
Go1.10 strings.Builder の紹介
knsh14
2
1.5k
Go でインタプリタを 書いてみよう
knsh14
0
3.1k
Let’s Create An Interpreter In Go
knsh14
0
180
tvOS Leaderboard
knsh14
0
1.2k
Other Decks in Programming
See All in Programming
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
370
SFCで実現する病院・医療システムの動的組み立て式UI
koukimiura
1
170
学びを記事・スライド・Xへ高速展開する― AI-assisted Learning Loopで回すコンテンツ生成術
ochtum
0
200
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
200
クラウドゲーミングのパフォーマンス最適化に挑む / Cloud Gaming Performance Tuning
vivion
0
330
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.6k
AIが実装を担う時代の「技術設計」と「チームマネジメント」
kamina_zzz
2
240
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
4
3.6k
Secure Your Coding Agent Like It’s Malware (v1.5) 🇬🇧 @Code.talks 2026
richargh
0
110
Zero-Tap Sign-In対応、結局何をすればいいの?
mitohato14
0
1.9k
LLM 101
dalinaum
0
470
そのデザイントークン、Flutterでも同じ見た目になりますか?
nakamizu
0
320
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
510
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
680
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
330
Darren the Foodie - Storyboard
khoart
PRO
4
4.1k
Automating Front-end Workflow
addyosmani
1370
210k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.6k
How to Think Like a Performance Engineer
csswizardry
28
2.9k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
350
Transcript
Go Review Comment を翻訳した話 Golang Tokyo #6 鎌田健史 ( @knsh14
)
自己紹介 • 鎌田健史 • @knsh14 • KLab 株式会社 エンジニア ◦
Unity でプロト作ったりツール作った り ◦ Javascript でゲーム作ったり • Go 歴2年位
今日の要旨 • みんな Go Code Review Commentsを読もう! ◦ 転ばぬ先の杖を持とう ◦
読んだら次は Effective Goへ! • みなさんも翻訳してみて欲しい! ◦ 勉強の効率めっちゃいい
Go Code Review Commentsとは? https://github.com/golang/go/wiki/CodeReviewComments • コードレビューする際にまずは見るべき箇所をまとめたもの • Effective Go
を更に簡単にしたもの ◦ Go 版リーダブルコード • ありがちな話をまとめたもので、スタイルガイドではない ◦ 必ずしも従う必要もないし無理する必要はない
で翻訳を書きました http://qiita.com/knsh14/items/8b73b31822c109d4c497 • それなりに原文に忠実に訳したつもり ◦ 一部英語力の問題で意味不明な部分もある • なるべく原文に追従する努力 ◦ 3月くらいに見直したら更新されてたので慌てて追記
◦ Context の項もあるよ!
翻訳を書くきっかけ とある社内ツールを Go で書いて レビューお願いしたところ ボッコボコのフルボッコにされる
翻訳を書くきっかけ その時に渡されたのが Code Review Comments だった とりあえず読んだ証拠に自分で翻訳してみることに 3日くらいで全部訳しきった tenntenn に一通り読んでもらって手直ししたあと公開
翻訳してみてよかった • 業務でガリガリ書いているわけじゃないので、初学者の僕に とってはこういういきなり正解のパターンを勉強できるのは効 率が良かった • 自分で言葉に書き起こす分脳みそを使う • 英語の勉強にもなったので他の英語書籍に挑戦するハードル も下がった
もうちょっと中身を詳しく
幾つかのカテゴリに分けられる • コードの見た目を改善 ◦ Gofmt, Mixed Caps… • コメント、文章の体裁 ◦
Comment Sentences, Error String... • tips 系 ◦ Declaring Empty Slices, Named Result Parameters... • 設計の指針 ◦ Receiver Type, Don’t Panic...
コードの見た目を改善 大体はツールでなんとかしようぜな話 gofmt, goimports, golint あたりを使っておけばまず大丈夫 特に golint はめちゃくちゃ優秀
コメントや文章の体裁 コード内の文章の書き方などに関するアドバイス 「説明するものの名前で始めてピリオドで終わりましょう」なんてい うかなり具体的な説明もある 特に Error String で紹介されている「エラーで返すときの文字列 は大文字始まりにしない」はかなり意外だった
tips 系 Declaring Empty Slices や、Named Result Parameters など 間違いではないけどよりよい方法を紹介してくれるパターン
var t []string と t := []string{} の使い分けは意識して書かないと 結構やらかしてることが多そう
設計の指針になるようなもの Receiver Type はぜひ一度読んでみてほしい レシーバーを ポインタにするかどうか迷ったときの指標になる 基本的にはポインタで問題ないけれど、幾つかのパターンにハマ るときはそうでないほうがいい時もある
最後に • 良いドキュメントの翻訳はめっちゃ勉強になるので積極的に やっていきたい • Code Review Comment はぜひ皆さん目を通して欲しい! ◦
そのために日本語で訳したので