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
450
コードを読みやすくしよう!〜秒で身に付くよい命名〜 (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 ニフティ株式会社
モニタリング統一への道のり - 分散モニタリングツール統合のためのオブザーバビリティプロジェクト
niftycorp
PRO
1
520
2025-07-08 InnerSource Commons Japan Meetup #14 【OST】チームの壁、ぶっ壊そ!壁の乗り越え方、一緒に考えよう!
niftycorp
PRO
0
57
2025-04-25 NIFTY's InnerSource Activites
niftycorp
PRO
0
230
外コミュニティ活動や登壇活動が技術 広報として大事だよ、と改めて周囲に伝 えられた件 - EM Oasis 特別会
niftycorp
PRO
0
120
Dify触ってみた。
niftycorp
PRO
1
230
Amazon Bedrockを使用して、 運用対応を楽にしてみた
niftycorp
PRO
1
240
自社製CMSからの脱却:10件のWebサイト再構築に学ぶ運用重視の技術選定 - NIFTY Tech Day 2025
niftycorp
PRO
0
120
エンジニアの殻を破る:インナーソースと社外活動がもたらした成長 - NIFTY Tech Day 2025
niftycorp
PRO
0
80
システム全体像把握の超高速化〜システム関連図を使い倒そう (LT) - NIFTY Tech Day 2025
niftycorp
PRO
0
79
Other Decks in Programming
See All in Programming
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
200
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
200
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
270
AI時代の『改訂新版 良いコード/悪いコードで学ぶ設計入門』 / ai-good-code-bad-code
minodriven
23
9.6k
TypeScriptでDXを上げろ! Hono編
yusukebe
3
770
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
1.1k
型で語るカタ
irof
0
700
Goで作る、開発・CI環境
sin392
0
260
スタートアップの急成長を支えるプラットフォームエンジニアリングと組織戦略
sutochin26
1
7.3k
Python型ヒント完全ガイド 初心者でも分かる、現代的で実践的な使い方
mickey_kubo
1
240
Model Pollution
hschwentner
1
160
Advanced Micro Frontends: Multi Version/ Framework Scenarios @WAD 2025, Berlin
manfredsteyer
PRO
0
390
Featured
See All Featured
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
340
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Producing Creativity
orderedlist
PRO
346
40k
Optimizing for Happiness
mojombo
379
70k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Building Adaptive Systems
keathley
43
2.7k
Statistics for Hackers
jakevdp
799
220k
Bash Introduction
62gerente
613
210k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Docker and Python
trallard
45
3.5k
Site-Speed That Sticks
csswizardry
10
700
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