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
"命名規則"を決めよう!/Let's Define a "Naming Conventions"
Search
cleantted
March 27, 2020
Programming
0
1.2k
"命名規則"を決めよう!/Let's Define a "Naming Conventions"
cleantted
March 27, 2020
Tweet
Share
More Decks by cleantted
See All by cleantted
VRC_LT#18_目だけでURLが入った_QRコードを判定しよう!
cleantted
0
15
岩石の話
cleantted
0
97
shaderでDDRのパァーノゥを光らせてみた/lighting_ddr_by_shader_in_vrchat
cleantted
0
1.7k
VRChatの中からTwitterとDiscordに メッセージを送れるようにした話 (IFTTT×VRC_Panorama)/Usecase of IFTTT for VRChat
cleantted
0
2.7k
競プロの楽しい始め方、 そして競プロをすることによるその効果。/Let's start programming contest
cleantted
2
1.8k
Other Decks in Programming
See All in Programming
XP, Testing and ninja testing ZOZ5
m_seki
3
600
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
400
CSC305 Lecture 03
javiergs
PRO
0
240
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
160
ポスターセッション: 「まっすぐ行って、右!」って言ってラズパイカーを動かしたい 〜生成AI × Raspberry Pi Pico × Gradioの試作メモ〜
komofr
0
1.2k
10年もののAPIサーバーにおけるCI/CDの改善の奮闘
mbook
0
800
オープンソースソフトウェアへの解像度🔬
utam0k
12
2.5k
Web Components で実現する Hotwire とフロントエンドフレームワークの橋渡し / Bridging with Web Components
da1chi
3
2k
CSC509 Lecture 06
javiergs
PRO
0
260
CSC509 Lecture 04
javiergs
PRO
0
300
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
160
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
190
Featured
See All Featured
How to Ace a Technical Interview
jacobian
280
24k
The Language of Interfaces
destraynor
162
25k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
The Cult of Friendly URLs
andyhume
79
6.6k
The Cost Of JavaScript in 2023
addyosmani
53
9k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Designing Experiences People Love
moore
142
24k
BBQ
matthewcrist
89
9.8k
Into the Great Unknown - MozCon
thekraken
40
2.1k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Transcript
”命名” って大事だよ! テッド (cleantted) VRCLT #7 ”命名規則” を決めよう!
自己紹介 ・登壇者: cleantted (テッド) 紫色のニコ or ミーシェちゃんアバター ・趣味: 音ゲー (DDR
etc.) 競技プログラミング ・過去の登壇: #2: 競技プログラミング #5: VRC_Panorama×IFTTT #6: DDRのパァーノゥ光らせてみた Twitter: @cleantted_s, Discord: 妹尾/テッド#3519
突然ですが、問題です Q1. 何のファイルでしょう? Q2. 一番最新のファイルはどれでしょう? サークルメンバーから、以下のfbxファイルが送られてきました
突然ですが、問題です サークルメンバーから、以下のfbxファイルが送られてきました Q1. 何のファイルでしょう? → Vketに使用するブースのモデルデータ Q2. 一番最新のファイルはどれでしょう? → 「huryuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu.fbx」
そうだ、今度のLTは “命名” について 話をしよう……(実話)
今回話す内容 • “命名” って大事だよ • 「名前を付けるルール」を決めよう • 名前は意味のあるわかりやすいものにしよう 今回話さない事: •
キャラクター、ワールド、イベントの名前のつけ方 • 人の目を引く名前のつけ方
“命名” とは • モノに対して名前をつける事 • 今回扱う “命名” プログラミング:変数名、関数名、クラス名、モジュール名、etc.. UnityやBlender :ファイル名、オブジェクト名、etc…
• 今回扱わない ”命名”: キャラクター名、イベント名、ワールド名…キャッチ―さがいるもの
今回のLTで言いたいこと • わかりやすい名前をつけよう! • わかりやすい =「他の人が短い時間で、それが何かを理解できること」 「他の人」には、数か月後の未来の自分も含まれる つまり、わかりやすい名前にしておくことは、自分にとってもメリットになる!
わかりにくい名前だとどうなるの? • 作業効率が低下する ◦ 「名前をつけたもの」が何かを理解する時間を短縮できる ◦ わかりにくいと、調べる /覚えておくために時間を使う • 管理することが難しくなる
◦ 名前から何かがわからないので、整理もしにくい ◦ 「もういいか……」となると無法地帯化がすすむ • 作ったものが使われなくなる ◦ 再利用するためにコストがかかる ◦ わかりにくいものはヘイトたまりがち
どうすればいい? • 名前のつけ方や表記の「ルール」を決める ◦ 例: 表記の仕方を統一する ◦ 例: 日本語やローマ字表記は使わない ▪
日本語は環境・ソフトによってはバグるため ▪ ローマ字は単純に読みにくい ▪ 例外:日本語の方が分かりやすい場合もある(例:表情用の Animation)
どうすればいい? • 名前は意味のあるわかりやすいものにする ◦ 明確で具体的な単語を使う ◦ 誤解されにくいものにする ・Pipeを消す ・Pipeを透明にする
今回参考にした本 • 『リーダブルコード』(O'Reilly Japan) ◦ ソフトウェアエンジニア向けの本 ◦ 命名については2, 3章に書かれている ◦
ソフトウェアエンジニアはみんな読もうね!!!
注意点 • これまで上げたのはあくまで一例、これでないとダメという事ではない • 「正しい事」よりも、一貫性があることの方が大事 ◦ すでに個人・チームにスタイルがあるなら、無理に変える必要はない ◦ なんとなくやっていることがあれば、それを明確にしてみる ◦
複数のやり方が混ざっている場合は、どちらかに合わせる ◦ もし決めていない部分があれば決めておく
まとめ • “命名” って大事だよ • 「名前を付けるルール」を決めよう • 名前は意味のあるわかりやすいものにしよう