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
コードを読みやすくしよう!〜秒で身に付くよい命名〜 (LT) - NIFTY Tech Day...
Search
ニフティ株式会社
PRO
November 29, 2023
Video
Resources
Programming
1
470
コードを読みやすくしよう!〜秒で身に付くよい命名〜 (LT) - NIFTY Tech Day 2023
ニフティ株式会社
PRO
November 29, 2023
Tweet
Share
Video
Resources
NIFTY Tech Day 2023
https://techday.nifty.co.jp/2023/
More Decks by ニフティ株式会社
See All by ニフティ株式会社
会員管理基盤をオンプレからクラウド移行した時に起きた障害たち - asken tech talk vol.13
niftycorp
PRO
0
2.5k
モニタリング統一への道のり - 分散モニタリングツール統合のためのオブザーバビリティプロジェクト
niftycorp
PRO
1
830
2025-07-08 InnerSource Commons Japan Meetup #14 【OST】チームの壁、ぶっ壊そ!壁の乗り越え方、一緒に考えよう!
niftycorp
PRO
0
86
2025-04-25 NIFTY's InnerSource Activites
niftycorp
PRO
0
290
外コミュニティ活動や登壇活動が技術 広報として大事だよ、と改めて周囲に伝 えられた件 - EM Oasis 特別会
niftycorp
PRO
0
190
Dify触ってみた。
niftycorp
PRO
1
270
Amazon Bedrockを使用して、 運用対応を楽にしてみた
niftycorp
PRO
1
280
自社製CMSからの脱却:10件のWebサイト再構築に学ぶ運用重視の技術選定 - NIFTY Tech Day 2025
niftycorp
PRO
0
130
エンジニアの殻を破る:インナーソースと社外活動がもたらした成長 - NIFTY Tech Day 2025
niftycorp
PRO
0
100
Other Decks in Programming
See All in Programming
機能追加とリーダー業務の類似性
rinchoku
2
1.3k
Oracle Database Technology Night 92 Database Connection control FAN-AC
oracle4engineer
PRO
1
470
Reading Rails 1.0 Source Code
okuramasafumi
0
250
Testing Trophyは叫ばない
toms74209200
0
890
知っているようで知らない"rails new"の世界 / The World of "rails new" You Think You Know but Don't
luccafort
PRO
1
190
Cache Me If You Can
ryunen344
2
4k
Namespace and Its Future
tagomoris
6
710
そのAPI、誰のため? Androidライブラリ設計における利用者目線の実践テクニック
mkeeda
2
2.8k
請來的 AI Agent 同事們在寫程式時,怎麼用 pytest 去除各種幻想與盲點
keitheis
0
130
Rancher と Terraform
fufuhu
2
550
Compose Multiplatform × AI で作る、次世代アプリ開発支援ツールの設計と実装
thagikura
0
170
アプリの "かわいい" を支えるアニメーションツールRiveについて
uetyo
0
280
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
810
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Documentation Writing (for coders)
carmenintech
74
5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.1k
Into the Great Unknown - MozCon
thekraken
40
2k
Writing Fast Ruby
sferik
628
62k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
530
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Producing Creativity
orderedlist
PRO
347
40k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Transcript
Copyright ©NIFTY Corporation All Rights Reserved. コードを読みやすくしよう! 〜秒で身に付くよい命名〜 ニフティライフスタイル株式会社 システム開発部
浜村 純
浜村 純 新卒5年目 Webエンジニア
3 initialization_flag is_initializing is_initialized can_initialize should_initialize 初期化中? 初期化済み? 初期化可能? 初期化するべき?
🤔
なぜ命名は大事か? 4
命名がよくないと... コードの理解に時間かかる 人に聞かないとわからない 誤解による手戻りが発生 5
命名がよくないと... チーム全体の生産性の低下に… コードは、書く時間より、読む時間の方が遥かに多いため、 6
よい命名とは? 7
よい命名とは 変数や関数などが... 名前である程度中身の予想がつく 曖昧でなく、誤解を招かない 8
すぐに身に付くテクニック 9
࠷େʁ࠷খʁ 10ηʔϑʁΞτ? 🤔 曖昧な単語は使わない 10 DON’T limit = 10 DO
min | max
自分しかわからない略語は使わない DON’T UPMg UPDc DO UserProfileManager UserProfileDoc 11 ୭ͰΘ͔Δུޠ˓ tmp,
str, num, regex, img, min, max, avg, cnt, init, eval, exec, prev, conf, env, doc, req, res…
数値の単位を明確にする DON’T timeout DO timeoutMs 12 ms, secs, px, kb,
mb.. ඵʁ ϛϦඵ? 🤔
Boolean型だとわかる名前にする DON’T spaceLeft() DO hasSpaceLeft() 13 is~ has~ can~ should~
? 🤔
Map型は key とvalue の情報を変数名に含める DON’T convertMap DO cityIdToPrefId 14 {key}To{Value}
{value}By{Key} key value 0123 13 0217 13 0787 14 🤔
もし英単語で迷ったら… 15
もし英単語で迷ったら... brokerage? agency fee? 🤔 Google翻訳より例文検索 海外の不動産サイトで どんな単語を使っているか 仲介手数料? 16
よく使う単語はチームで共有しよう 17 日本語 変数名 敷金 deposit 仲介手数料 agencyFee ... ...
まとめ • 生産性につながるので命名は大事 • 曖昧な単語、自分しかわからない略語はNG • 数値の単位を明確にする • Boolean型は is~
should~ has~ can~ • Map型は key とvalue を変数名に含める • 英単語で迷ったら例文検索と海外サイト • よく使う単語はチームで共有 18
None