オオバ@UIエンジニア on Twitter: "仕様変更に強い命名は大事だ。ボタンを「OKボタン」や「Noボタン」と名付けていたらヤバいかも。ゲーム開発に仕様変更はつきもの。開発中盤「OKボタンの色を使ってキャンセルボタンを作りたい」というケースもある。結論、用途ではなく機械的… https:__t.co_6nwzoBNKWR"
2022/02/22 15:58
mohno
「OKボタンの色を使ってキャンセルボタンを作りたい」←何バカなことを言ってんの?とツッコみかけたが、サイバーエージェントの人なのか。しかし"Yes/No/Cancel"は「はい/いいえ/キャンセル」にすべきだとしか思えない。
2022/02/22 22:29
bluegold
「仕様変更に強い」という理由でカラム名が varchar_(01..10) とか date(01..10) とか int_(01..10) で作られてる DB を引き継がされた時の地獄を思います。先行する失敗事例を知らないと、人はすぐに同じ落とし穴にハマる。
2022/02/23 08:11
ya--mada
ギャグかと思ってリプを覗いたら、どーも本気だったようだ。こんなんが設計者だったらヤバいな。
2022/02/23 08:18
aa_R_waiwai
ゲームだと大量のボタンが必要な場合もあるだろうから、一概に否定はしないけど、少なくとも一般的なアプリとかだと、連番はかなり不味い名付け方だよな。
2022/02/23 08:28
fai_fx
もしかして、ボタン画像のファイル名の話をしているのではないか…
2022/02/23 08:30
nakag0711
それは人類が既に通った道なのだよ
2022/02/23 08:31
neet_modi_ki
連番はちょっと…デザインシステムで一般的なprimaryとかそういうので行きたい
2022/02/23 08:36
tsutsumi154
そっちのほうがバグの温床だろ
2022/02/23 08:45
Knoa
開発中盤「OKボタンの色を使ってキャンセルボタンを作りたい」というケースについて、具体的な例で示してもらいたいな...
2022/02/23 08:50
Bioegg
何言ってるかわからん。デザインの統一感が重要なゲームなら、button_blueとかbutton_redやろ。
2022/02/23 08:51
gnta
「OKボタンの色を使ってキャンセルボタンを作りたい」で、いやそれ絶対ダメ!って声でた
2022/02/23 08:52
kotetsu306
変更には強いが普通の開発に弱い感じ。そもそもOKボタンの色でキャンセルしたい理由を考えると、キャンセルするのが普通だからでは(例:セーブせずに終了してもいいですか?)。ならButton_Defaultとかかな
2022/02/23 08:54
strawberryhunter
なんなんだろう、UIエンジニアを自称しているからCSSの話でもしてるのかな。CSSだと変な話なのでアプリ?妥当なシチュエーションを詳しく説明してもらいたいものだ。
2022/02/23 08:55
ChieOsanai
プレステのコントローラの話してる?
2022/02/23 08:58
junglejungle
アンチパターンの例かと思ったら真面目に言ってるのこれ?コードに関わる人ならリーダブルコードくらいは最低限読んでおいて欲しい。アレを「当たり前の事が書いてあるな」と思えない人はコーディングに向いてない。
2022/02/23 09:00
mak_in
汎化か特化か、はプログラミングの永遠のテーマな気がする。今どきは変化が予測されるなら汎化、それ以外は特化、の流れじゃないかな。コレを変化すると判断するか。僕は仕様変更よりバグの方が怖いから特化かな
2022/02/23 09:03
s5r
動作に意味を見出したいなら OkButton でいいし、役割に意味を見出したいなら PositiveButton でいいし、装飾に意味を見出したいなら BlueButton でいい。数字で管理したところで一部のボタンだけ仕様変更されたらダメなのでは?
2022/02/23 09:04
nyokkori
関数1関数2とか雑に作るのに限って仕様書なんか無くて口伝だけで申し送りされて途中素人が弄ったりして関数25に2以下の数字を入れるとハングアップするから一度4以上いれてソートするとか昔のトースターみたいな弊社(
2022/02/23 09:05
nack1024
???
2022/02/23 09:07
hase0510
OKの色を使いたいということは、機能的にはOKボタンだということではないの? ラベルが「キャンセル」なだけで。だったらラベルだけ変えればいいのでは。デフォルトボタンのデザインの話なのかな。例が悪い気がする。
2022/02/23 09:08
aktkro
意味不明すぎて笑ってしまった。こういう設計してる人はスタイルだけじゃなくて変なprops増やしそう。
2022/02/23 09:12
Shinwiki
その仕様ならもう一個書けば。
2022/02/23 09:17
flirt774
いいえを優先にしたい場合があるという事か。primary、danger、とか言い方は色々あるので連番は悪手。
2022/02/23 09:23
newnakashima
そして「Button_0が何に使われているか新規メンバーにもわかるように台帳で管理しよう!」となるわけか。所属企業の技術力が疑われる投稿になってないか?
2022/02/23 09:24
Helfard
これはあかんと思う。
2022/02/23 09:30
oktnzm
ハードウェアチックにボタンの位置も固定な代物ならありえなくはないが、一般的には意味で名前を付けてボタン名が変わるならリファクタリングでまるごと置換するのが筋がいいだろう。何事もバランス。
2022/02/23 09:32
megomego
破壊的な選択と通常選択のボタンの2種あって、用途によって表示するテキストが違う場合があるってことで、そのパターン毎に名前をつけたいということ?
2022/02/23 09:35
tyhe
連番じゃなくて普通に属性を与えればいいのよ。とは思うけど、しかしながらゲームでは "ちょっと派手なボタン" とか "めっちゃ派手なボタン" とか、そういった類のバリエーションがあるようで、難しそう。
2022/02/23 09:35
six13
ノード名に設置場所の地名(yokohamaとか)が使われてるケースには困ったな。スクリプトにそれがベタ書きされてたので変更もできず、リプレースで移転したら大阪にあるのにノード名はyokohamaみたいなことになって。
2022/02/23 09:35
lastline
たくさんボタンが必要になるなら、ボタンの色、形、機能をそれぞれ割り振れるようにするんじゃないの?UI 的には色数などは制限した方がいいけど。
2022/02/23 09:37
tattyu
自転車置き場の議論過ぎるな。こんなもんツールで解決する話でこんな些細なやり方は上手く行くならマジでどうでも良い。こう言う事プロジェクトで言い出すとプロジェクトが炎上するので気をつけような。
2022/02/23 09:37
Bosssuke
不確実性とは闘わないという強い決意
2022/02/23 09:40
makou
この手の話題、いつ結論出るんだろ。
2022/02/23 09:46
mayumayu_nimolove
別に致命的なアレにはならんけど気持ち悪いことは確か。
2022/02/23 09:47
b1sh0p
設計がおかしいだろw
2022/02/23 09:50
KijitoraBeans
実際に命名が Btn_00,01,02… のデータを引き継いでわけがわからなくて泣いちゃったことがあるのでちょっと…
2022/02/23 09:51
kubecorn
意味のある名前を付けてちゃんとIDEでリファクタしていった方がどう考えても良い気がする。
2022/02/23 09:55
kagerou_ts
一見やめといたほうがよさそうに見えるけど…「開発中の経験で」となると、こうするべきだったと思える何かの出来事があるわけよね…何があったのかのほうが気になる
2022/02/23 09:56
sirobu
所属がCAってことはソシャゲ業界の話なのかもしれないけど、納得いく説明にはなってないと思う
2022/02/23 10:07
baronhorse
CAの仕事はしたくないと思った
2022/02/23 10:10
rideonshooting
うーん、サイバーエージェントのクオリティ…
2022/02/23 10:15
GOD_tomato
はいとキャンセルは別。
2022/02/23 10:17
valinst
時と場合によるから、こうしました!って誇示する内容でもないよね。仕様がおかしいとか、文言で工夫したほうが混乱しないだろって突き返してもいい場合もありそう。
2022/02/23 10:17
napsucks
連番で暗号みたいな変数名を使って別途エクセルで管理するんですねわかります
2022/02/23 10:19
oldriver
既視感でわろたり
2022/02/23 10:22
knok
このゲーム開発というのはリリースされるまでfixしないタイプの話だろうか。つうかウィジェットの位置と変数とのバインディングは普通関係ないのではないか
2022/02/23 10:24
flont
ボタンの色に対する名前(button_blue)かデザインに対する名前(button_primary)をつけて、機能と分離すればいいだけでは
2022/02/23 10:24
aceraceae
というか行為を名前にすると特に能動的に否定的な行為を行うときに混乱の元になるからキャンセルという行為名より単純にNOのほうがよくないかな。「キャンセルしますか」に対してキャンセルはわかりにくいし。
2022/02/23 10:28
nananashi
Windowsアプリを作っているSIerのUIノウハウですね
2022/02/23 10:29
haususuahahdh
…は?
2022/02/23 10:29
mint6626
答えは「時と場合による」。巷の画像付きツイートを参考に仕事を進めてはいけない。自分の頭で考えなければならない。ということを学ばせるためのツイートなんでしょうか
2022/02/23 10:30
door-s-dev
これはない
2022/02/23 10:36
OkadaHiroshi
ボタン名を仕様に合わせて変えれば良い、簡単に変えられないのは開発環境に問題があるのでは。
2022/02/23 10:38
kura-2
さて、あとで見に行くか
2022/02/23 10:40
silossowski
これCSS設計の話だったら正解だと思うので、話の主語というか、そもそもの前提条件が曖昧になってないかという気がする
2022/02/23 10:43
jakiyama
名前ってのは人間が理解し易くするためにつけるものだから、意味を理解できない連番を付けるってのは良くないと思う。
2022/02/23 10:43
noname774300
「Button_0」や「Button_1」と名付けていたらヤバいかも。名前変更を避けるなら「0」や「1」にすべき。
2022/02/23 10:45
suikyojin
用途と色をくくりつける辺りから間違い。せいぜい、押せないボタンをグレイにする程度。番号で識別するのは、対応表が必要になるから間違い。火を消すのに、水の替わりに油をかけるようなもの。
2022/02/23 10:45
iww
この例でいうなら、ボタンですらなくなるときがあるので、Button_X という命名がすでに危険なんだよ! だからいろいろ先回りして考えることは諦めて、必要に応じて名前をちゃんと変えるのが大事
2022/02/23 10:47
kobito19
何の話をしてるのかわからない。型(クラス)の名前の話をしてるなら、OKボタン型のキャンセルボタンインスタンスを作れば良いだけでは。ボタン色の仕様が変更になったのなら、実装を交換すれば良いだけでは。
2022/02/23 10:50
chirotec
F2キーが付いてないキーボードで開発してるのなら仕方ないですが、世の中の大半の開発環境ではそんな事はないと思います……(Visual StudioやVSCodeならF2でカーソル下シンボルの名前変更、UnityならF2でファイル名の変更等)
2022/02/23 10:50
chikoshoot
いやぁそれはないでしょ。色を使いまわしたいなら色を定義すればよいだけで。
2022/02/23 10:51
yosshi-k
ソシャゲで「キャンセルしますか→YES orキャンセル」パターンあるある
2022/02/23 10:51
mochinaga
0や1が何だったかを覚える必要があり、後で参画したメンバーの学習コストが結構掛かるのでは?
2022/02/23 10:52
shikiarai
12年かけてまだそこにいるのか。年に30行くらいしかコード書かないのか? それじゃあいつまでも私と同じだぞ?
2022/02/23 10:52
Aodrey
用途で名づけるべき。この場合の用途とは色ごとのユーザーへ与えたい印象だろう。Bootstrapでは赤いほうをdanger、青いほうをinfoとしている。/青いほうprimaryだった
2022/02/23 10:52
teto2645
えー…連番かよ。んなもん必要になったタイミングに対応すればいいだけでしょ。
2022/02/23 10:55
tnakamura
なんだこのダメなSIerみたいなソリューションは
2022/02/23 10:55
daigo0117
「OK」というポジティブなアクションで使用している色を「キャンセル」というネガティブなアクションに使用する時点でデザインが破綻している。要件定義やデザインの不備を実装で辻褄合わせようとするのやめない?
2022/02/23 10:56
buhoho
そのケースならポジティブとかネガティブとかでよろ。抽象概念の粒度を切り分けるのは開発の要点なので、それしないなら開発者や設計ではなさそう
2022/02/23 11:01
dtpg
プログラム覚えたての新人が言い出しそう。
2022/02/23 11:01
NOV1975
古のCOBOLエンジニアみがあって大変よろしい/←これ、やたらとバカにする人がいるけど「名前に意味をもたせすぎない」という発想としては古式ゆかしくある程度の有効性はあるってことなんだよ。ある程度だよ。
2022/02/23 11:06
yukari_gohan
リーダブルな命名と逆行してるのがなあ…
2022/02/23 11:06
n_231
え、UIエンジニアジョークだろ……まさか……
2022/02/23 11:11
sumomo-kun
名前に合わせてファイルを差し替えればよくねぇ?
2022/02/23 11:11
kuzudokuzu
簡単な反駁として「あなたのTwitterアカウントID『ohbashunsuke』は機械的ですか?」と誰でも言える。このツイートをこのアカウントIDで行ったこと自体が、このツイートの反駁になる。
2022/02/23 11:11
cl-gaku
01よりはせめて青赤やろ
2022/02/23 11:11
take-it
まだWebフォントが出る前、見出しの画像で連番にしても順番が変わり、見出しの文頭と同じファイル名にしても文章が何度も変わる面倒な案件があったことを思い出した。
2022/02/23 11:12
oka_mailer
例が良くないけどゲームUIやってたから言いたいことはわかる。装飾の派手なやつとか地味なやつとか、限定イベントで2週間しか使わないやつとかどうしてもカオスになりがち。
2022/02/23 11:14
n2sz
意味を持たない名前にされると使うたびに用途調べなきゃいけなくなるじゃないか。組んでてやりにくくないのかな?
2022/02/23 11:14
gabari
OkButtonにBlueButtonStyleを適用するのが良いと思う。番号はありえない。OkButtonStyle=BlueButtonStyleとかしたりもするが、民度の低いプロジェクトでは成立しないのが悩ましい。
2022/02/23 11:18
lenore
なんというかもう指摘する意欲もなくため息しか出ない。(本人がドヤってるとこが特に)こんな人がいたら命名規約を渡して指導はしてみるが他にもオレオレ迷言ありそうだしサヨナラしてもらうかな。
2022/02/23 11:18
civicpg
関数名も仕様変更によって中身の意味が変わるかもしれないから行番号で管理して「GoTo 行番号」って呼び出したら仕様変更に強くなっていいんじゃないかな
2022/02/23 11:19
skifuyu
UIデザイナって事はこいつが作った側がプログラマ側に渡ってくるのか秒で却下するわ。仕様書見ないと動作が分からない命名て正気か。全体の事考えてないのによくUIエンジニアとか名乗れるな
2022/02/23 11:21
elsheep
リーダブルコードを読んでもらいたい。
2022/02/23 11:23
kujoo
ちゃんと読んでないけどグッドラッパー、バッドラッパーな話になりそう? / あんま良さそうに思えないけど…。経緯の方が面白いかもね
2022/02/23 11:23
atori07
ネタか?これは こんなのが来たらキレる自信あるわ
2022/02/23 11:30
takanq
改修を重ねるごとに廃止になるボタンが出てきて歯抜けになった連番定義となったり、同時に開発開始して新規ボタン番号が衝突したり、色々問題がありそうな感じが…
2022/02/23 11:33
ko2inte8cu
いやぁ〜、今日も今日とて、バックスラッシュが日本では¥マークですわ。コードしたら終わりじゃないよ。ちゃんとユーザーテストしましょうね。
2022/02/23 11:35
sippo_des
プログラマ脳てだけでモノを見てなさそう。。自分の周りのものがそうなってるか見ればわかるけど。ソースはソースの都合があるし
2022/02/23 11:37
jaguarsan
IDEがオブジェクト名の変更をサポートしない状況なら正しいけど、そんなIDE使ってるのがすでに間違い
2022/02/23 11:38
remonoil
では仕様変更するボタンの名前を言ってください
2022/02/23 11:40
wordi
大事なのは名前の修正が容易な環境作り、下請けの場合は知らない
2022/02/23 11:40
marshi
真に受ける人が出ないことを祈る。仕様変更があれば命名も変えればいいだけのことでそうしやすいようにコンポーネント化する。この方針は逆にメンバーが混乱する
2022/02/23 11:40
ninosan
したり顔で持論書いたら滅多打ちにされるというほのぼのインターネッツ😋
2022/02/23 11:41
coolworld
昔のVBとかで作られたコードを修正させられた時のことを思い出した…
2022/02/23 11:46
Eiichiro
名前をつけるとは意思の表示であり、覆す仕様変更は反旗を翻す大イベント。キャンセルボタンと名前を付けた時点で、キャンセルにしか使ってはならない。キャンセル以外に使う時点ですべての用途を見直すべき。
2022/02/23 11:51
minboo
「OK」なのに「キャンセル」って、京都人みたいなヤツだな。
2022/02/23 11:52
teecup
解決方法がマジックナンバーって正気の沙汰ではない
2022/02/23 11:54
akahigeg
名前変えても問題ないようにテストできるようにしとくのがよい
2022/02/23 11:54
miki3k
表示順を入れ替えたいときによわそう
2022/02/23 12:01
ryer
こんなんネタ…じゃなかった
2022/02/23 12:02
sharaku3eyes
それならokはtrue意識して1でnoはfalseだから0の方が理解しやすい
2022/02/23 12:06
skyfox_xxx
命名は名前を見ただけでそれが何をするものなのかわかるようにしたい。なのでこの手のボタン命名はnegative、positive(追加でattention)で作ることが多いかな。名前を決めたら意味をブラさない事、そのため初期設計は大事
2022/02/23 12:09
maketexlsr
PSとかね。(よくここまで来て変更を決心したと思う)
2022/02/23 12:13
nabe1121sir
SIerとそれに寄生するコンサルって連番とか無意名が大好きよね。自分がコード書かないからやろな。
2022/02/23 12:15
luege_traum
意味が全くわからない。普通、用途分のボタンを用意しない?変更に強いと言うなら、逆に冗長な名前にしといて一括置換するかな。 / ブコメにある画像ファイル名の話っていうなら、確かに分からないでもない
2022/02/23 12:15
duedio
抽象的な名前にすると、逆に混乱するから、仕様変更があったら名前ごと変えろよ
2022/02/23 12:17
lavandin
みんな1人ずつ「もしかしてこの人がアイツに吹き込んだのか!?」って思い当たる人がいるのすごい。私にもいる。
2022/02/23 12:19
te2u
意味が変わったのだから、名前変えたらダメなの?20年前ならまだしも、今ならリファクタリングツールやテストなどでカバーできるだろうに。
2022/02/23 12:24
triggerhappysundaymorning
クラスや関数の命名で「機械的に」ってのが禁忌とされてる意味を理解してなさそう./「UI」エンジニア名乗ってらっしゃるのか……だったら意味と色を統一すべきってのも判るよね?
2022/02/23 12:25
inatax
OKボタンと同じ色のキャンセルボタンを作るな
2022/02/23 12:28
theatrical
経験12年で現職サイバーエージェントと言うキャリアや、資料のわかりやすさ、説明の為に資料を作る丁寧さと、初心者みたいな結論のちぐはぐさが、とても不思議に感じる。
2022/02/23 12:30
jz5_public
「例が極端すぎたという反省。いろんな意見がもらえて勉強になります。」
2022/02/23 12:30
zuzu_sion
これは仕様変更に強いじゃなくて、仕様が決まってない段階の設計だよね。もちろん仕様確定したら命名も刷新する前提つまりプロトタイプやアルファ開発など小規模レベル限定でしょ。
2022/02/23 12:33
Falky
苦笑
2022/02/23 12:34
greenbow
保守が辛くなるのでやめていただきたい…「Button_0」を変更したときの影響が予測できない。 / 開発期間が短くてリリース後に更新が入らないようなシステムなら有りかも。
2022/02/23 12:35
nowandzen
YESNOMAKURA
2022/02/23 12:35
irh_nishi
大事なのは名前を変えられるようにリファクタリングの文化があることと名前空間の分割がちゃんとなされていること、だと思う。
2022/02/23 12:36
kazokmr
仕様変更の背景がわからなかった。ボタンの追加?表示名の変更?スタイルの変更? ボタンの役割の変更?ボタンの配置変更?いずれも連番では解決策じゃいから違うのかな。あと図内の矢印も説明を混乱させる
2022/02/23 12:37
xojan0120
ドヤ顔で図解まで作って出した内容が潔さすら感じるアンチパターンwwwwwこういう人こそつよつよエンジニアでは?
2022/02/23 12:39
rt3281
既存の命名規則に則ってるならとりあえず何でも良いけど、新たに命名規則を考えるなら、ナンバリングは最終手段みがある。ボタンの目的が変わるなら、名前も変えてしまえば良いだけの話ですし。
2022/02/23 12:51
hennamanao
心の中で、目玉焼きには何かける?の主人公みたいなツッコミを入れてしまったよ
2022/02/23 12:59
dreamzico
b.hatena.ne.jp ←これとかも含め、この人、いろいろアレな予感。まあなんつーか、真面目なんだけど視野と経験と教養と勉強とセンスが足りないのかしら…
2022/02/23 13:00
otihateten3510
なんだこのやべーツイートは。危険だからバズらせるんじゃない。キレそう。
2022/02/23 13:04
closer
「OKボタンの色を変えたい」っていう仕様変更に対応する時は、その UI が OK ボタンにしか使われてないことが明確になっていた方が良いと思う。
2022/02/23 13:09
JackP
そのスタイルに利点を感じているのならツッコミ対して反論や補論をすればいいのに、「例が極端すぎたという反省。いろんな意見がもらえて勉強になります。」って言って話を終わらせるのはあんま好きじゃない
2022/02/23 13:09
kiyo_hiko
そもそもOK/いいえ、はい/キャンセルの対応が気持ち悪い。OK/キャンセル、はい/いいえでは。vbなどでMessageBoxに渡す列挙子はvbOkOnly、vbOkCancel、vbOkRetryCancel、vbYesNoみたいになってる
2022/02/23 13:10
ducky19999
ボタンが全部で2個しかないシステムならいいんじゃね(どうでも)
2022/02/23 13:11
ys0000
バッドケース、アンチパターンを広めるために意図的に仕込んだのだと言ってくれ。初心者がこれ信じたらどうするんだよ。
2022/02/23 13:12
legnum
これ無茶な変更要求してくるPMが社内に多い、って可能性を考えると怖いな。単に断りゃ済む話を衝突嫌って強引ねじ曲げ実装で解決するタイプ増えてる気がするからそれかも知れんが
2022/02/23 13:16
highbridge71
数字で管理するのはなーーー。意味を推測するコストがかかるよね。認識合わせすればいいけれど、それすらもコストだし。
2022/02/23 13:28
dltlt
名前空間を分割できる言語だと開発環境で可読性の支援が受けられる?|思い出すのは C のコードで Name overloading/aliasing 多発してて NASA にチクチク言われたトヨタ ⇒www.nhtsa.gov
2022/02/23 13:30
su3dep
これ本気か?サイバーエージェントやばくない?
2022/02/23 13:31
PrivateIntMain
見た目と振る舞いが分離できていない。個人的にはViewとしてのBlueButtonと、ViewModelとしてのPositiveButtonがあるのがすき。
2022/02/23 13:31
gowithyou
この人クラス名にClass0とかClass1とか使っちゃう人でしょ。自分で考えて経験も先行事例も参考にしたことないのだろう。名前が性質に見合わないのなら名前を変えればよくIDEのリファクタリング使えばコストもかからない
2022/02/23 13:34
dalmacija
まず一意の名前を付けるように努めるけどな。同じになるならモジュール化を考える。発想が泥縄だからこんなアホなこと書いてしまうのよ
2022/02/23 13:40
ene0kcal
色が同じというだけで、なぜキャンセルボタンをオーケーボタンのオブジェクトで使おうとした?設計おかしいよ。手抜きしたいだけで、命名の意義を履き違えてない?
2022/02/23 13:41
hdampty7
「OKボタンの色でキャンセルボタンを作る」馬鹿がいるから破綻するんだろ。180度を固定するから上とか下とか名前を付けて呼び分けできるのよ。破綻したときに素早く対応するか、抵抗するか、知恵のない世界だなぁ。
2022/02/23 13:45
poponponpon
おっ?ちょっと早くエイプリルフールか?
2022/02/23 13:46
securecat
意味とスタイルを完全に混同した話をしてて、ちょっと理解できない。画像ファイル名の話か?
2022/02/23 13:47
tana_bata
何言ってるかわからんのは俺だけか?
2022/02/23 13:47
srng
ボタンっていう例えが悪いだけで、多分ゲームでオブジェクトを使いまわすときに用途名ついてると面倒って話では
2022/02/23 13:50
unticrice
「いらんオプションをつけますか?」にOK押してもらうため、攻撃的に色で誤認させるなどのケースもありえる。関係ない話ですが。
2022/02/23 14:02
knosa
サイト内で使う色は最初に定義しておくんだから大きさと色でそれぞれ分けて命名して組み合わせるのが正しいでしょ。ボタンのラベルとか意味合いなんてそこには介入させなくて良い(それは色などで定義する)
2022/02/23 14:02
cha16
想像できる限り最悪な方法を推奨しているな。まずその仕様変更が妥当なのかきちんと議論すべきだろう
2022/02/23 14:04
kae1990
仕様変更に強い(強くない
2022/02/23 14:06
shinobue679fbea
浅くない?
2022/02/23 14:08
tetsu23
破綻をさけるために意味を捨て可読性を下げるという選択。破綻しなくても変更がなくても間違いがおきたり、確認しづらくて後で本当に困るパターンでは。
2022/02/23 14:11
racooon
ホントね転職してこのあたりの認識が著しく低いチームに入り痛感。指摘しても理解されず困惑してる。仕様が無いとかこういう事で自分は何度も酷い目にあってきたから伝えているのに理解しようとしない。
2022/02/23 14:15
eims
リファクタリングに言及しない理由(恐らくunityだから)、オブジェクト名か変数名か両方なのか など前提説明が抜けてる。 恐らく色々他にも説明が抜けている。本人もイメージしきれてないのでは。
2022/02/23 14:20
pppng
ボタン名から意味がわかるような仕様書を作らないと、wordで(地獄のはじまり)
2022/02/23 14:21
doscoy_t
一概に正解と言いづらいプラクティスをまるで絶対正義のように喧伝して、無垢な人がそれを信じて、微妙なプラクティスが蔓延する恐れがある事象に名前をつけるべき。
2022/02/23 14:27
haru-s
変数名やオブジェクト名を変えるべきときが来たら変えるべき
2022/02/23 14:30
namabacon
ファイル名だとしても許容しがたい。
2022/02/23 14:31
kaionji
ブコメの地獄を引き継いだ話が面白い
2022/02/23 14:33
uva
は?
2022/02/23 14:34
spark7
なんじゃこりゃ。車輪の再発明ならぬ車輪の破壊か
2022/02/23 14:39
electrolite
「業務メニュー23」とか見たら自殺すると思う。
2022/02/23 14:39
higgsino
初歩的なアンチパターンなので真似してはいけない。この場合ならBlueButtonとRedButtonにすれば良いのでは
2022/02/23 14:45
pmint
何を言ってるんだろう。専門職は考えすぎて阿呆になることがある。ツイート前に、近しい新人に意見を聞けば良かった。「仕様変更に強い」は、変更せずに済むことよりも、変更しやすいことを言う。基本がなってない。
2022/02/23 14:46
develtaro
うーん…
2022/02/23 14:48
Lhankor_Mhy
ボタンから別のUIへの仕様変更に強くするために、buttonという文字も避けて、ui_0とかにすべきでは。
2022/02/23 14:48
suihan74
Button_0がどうしたという大量のコードなりファイル名なりを何とかしろと言われたら、まず最初に命名したやつを殺しに行くと思う
2022/02/23 14:49
rryu
スタイルのバリエーションを連番で作るといくらでも増やせるので便利ではあるが、そもそも適切な名前を付けられていないところが失敗の原因である訳で、設計を放棄する解決策はどうかと思う。
2022/02/23 14:51
htnmiki
つらい
2022/02/23 14:56
renos
社内ルールだからと100個近くあるテーブルがT001〜T100で管理されてて先任たちが25と26をほにゃららして…とか暗号じみた会話をしていて全くついていけなかったな…すぐ覚えるよ!とか言われたけど覚える前に会社辞めた
2022/02/23 14:57
haccian
これ、Buttonの部分も柔軟性持たせて連番のほうがいいんじゃないか?1_1、1_2、2_1とか。なんかマリオのステージみたいだな。
2022/02/23 14:57
takopons
元デザイナーで現在Unityエンジニアのオオバさんは、これが良いアイデアだと思って発言しているのがヤバイ。無意味な連番は「仕様変更」には強くなるかもしれないが、名前から機能や目的を読み取れなくなる弊害がある
2022/02/23 14:58
ghostbass
ここ数年、WEBだとリンクやボタンには”_trigger"とかつける。/ 例が極端とは言うけど、こういう筋立てで適当な例が思い浮かばない
2022/02/23 15:00
honeybe
何言ってんだこいつ…
2022/02/23 15:10
shima7
SEイライラしすぎワロタ。仕様変更は親の仇だからしょうがないね…
2022/02/23 15:10
noseld
デザイナーとエンジニアの認識を揃えるのが大事で、デザイナーがこれをOkButtonと認識してないと違う用途のデザインがあがってくる。
2022/02/23 15:16
hugie
言わんとしてることはわかるけど、だから通し番号にしようというのはないな。
2022/02/23 15:24
eiki_okuma
これは無いですね。「本来の用途」の名前を付けます。本来の用途以外にそのボタンが使われていたら要注意だからです。(デザイナーと実装者は違うので)
2022/02/23 15:27
Crone
機能に対するデザインが固まってない段階で、デザインパーツに機能的名前を付けるのはNGってのはそうだと思う。ナンバリングは機能側からするとアンチパターンだけど、デザイン側だとまた事情が違うかも。
2022/02/23 15:27
tekitou-manga
cssの命名規則としてもアウトじゃないのこんなの
2022/02/23 15:30
w1234567
サイバーエージェントの名前出してこれ発言出来る度胸が凄いけど、デザイナーからエンジニアに転向したってプロフィール見てちょっと納得。論理的な構造とデザイン的なスタイルの分離の意図が理解出来てないんだな
2022/02/23 15:33
MasaMura
今時はエディタが高機能になってて変数名は一括置換が出来ない?
2022/02/23 15:34
ProjectionOFWord
命名にはセンスが必要。
2022/02/23 15:41
miyahoyo
デザイナというかCSSコーダーからWebエンジニアに転向した方々の地雷率が高い。
2022/02/23 15:42
MarvinParnroid
これ積み上げてレンガの壁作るかも知れないから、Buttonという命名も避けるべき。
2022/02/23 15:44
rti7743
用途が変わったら名前を一括置換で変えればいいんじゃないの? そもそもわかりやすくするための名前なのに、それを破棄したら名前の意味がなくなるじゃん。
2022/02/23 15:49
bayan
ああ、SIerさんでありがちと言われたクラス名をClass001とか連番にするやつと一緒ですね。一覧表とセットで運用するやつ。2000年頃にJavaで見た。
2022/02/23 16:02
chanmina
OKボタンの色を突然キャンセルに使おうとするやつがまちがってるんだからそういうダメ仕様防止策としてOKボタンと名付けるほうが良いという意見をあえて引き出すための釣りかあ
2022/02/23 16:04
a96neko
ボタンの部品名に番号を付けると可読性が悪くなるよ
2022/02/23 16:13
aaa1234567
開発経験は豊富な方のようなので、この方の経験・環境・文脈においては正当化される何かがあるのかな?ツイートでは表現されていないけど。と、理解。
2022/02/23 16:20
yetch
新しいボタン作ろうよ。
2022/02/23 16:23
natu3kan
設計によりけりって感じが。ボタンを画像素材みたいな汎用部品と扱うのか、役割の決まった部品として固定してるのかでも変わるし。
2022/02/23 16:23
ahomakotom
web系って、bitmap resource と button function が一体化してるの?
2022/02/23 16:25
akihisahiguchi
仕様変更にかかるコストを考慮した上でどこまで変更するかという観点、プロジェクトに後から入るメンバーが運用した時の安全性など、プロジェクトによってベストな対処が変わるというのは考えた方がいいと思う。
2022/02/23 16:28
ultimatebreak
連番は流石にない
2022/02/23 16:29
Wafer
デザイナーに肩書を戻してどうだろうか
2022/02/23 16:33
velvetgrouse
OkButtonは危険だから代わりにButton_0にしろって。。。経験が浅いならばもう少しソフトウェア開発の歴史を勉強し、経験を積んでから発言しないといけないな。たとえ今有名企業にいたとしても。
2022/02/23 16:34
lalupin4
『About Face』くらいは読んでいてほしい(第 4 版の邦訳はよ)
2022/02/23 16:34
cinefuk
「スタートメニューをクリックして電源を切ってください」
2022/02/23 16:35
tnishimu
ボタンの色と名前が不可分に紐付いているとかそんなことある? 命名だけ仕様変更に強くてもね。
2022/02/23 16:35
sweetier
Button_0, Button_1としろってありえねえよ。この場合ならNormalとかDangerousとかの言葉を使って色自体を定義してボタン側からはそれを利用すればいい。Noボタンとか固定で作りたかったらボタンをラップする形で作って問題ない
2022/02/23 16:36
harist
それで後の参画メンバーは混乱しませんでしたか?(小声)
2022/02/23 16:37
dot
何かの冗談か皮肉かと思ったら、どうも本気だったみたいで少しビックリした。マジックナンバー自体がアンチパタンやけどな。この筋で行くなら仕様変更でボタンじゃなくなるかもしれないので、buttonも仕様変更に弱い。
2022/02/23 16:41
lont_in
一枚絵で簡略化したかったのかもしれないけど機械的に通し番号付与はワロタ
2022/02/23 16:44
W53SA
ディレクターあたりの度重なる異常な要求に心が壊れたエンジニアという感じがある
2022/02/23 16:51
mn_kun
UIの戯言?
2022/02/23 16:53
maninthemiddle
表記変わった時点で変数名もリファクタリングするやろ普通
2022/02/23 16:56
doko
OKボタンの色を使ってキャンセルボタンを作りたいのなら、キャンセルボタンを作った上でその色をOKボタンの色にすれば良いんでない? 要求は「OKボタンの色とキャンセルボタンの色を一致させたい」じゃないんだから
2022/02/23 16:59
mr_yamada
UIの基本設計ができてない気がするんですが、素人にはわからんような高度な話なんですかね?
2022/02/23 17:02
s2kw
OKである限りデザインに一貫性を持たせる必要もあるので、命名としてOKBUTTONは正しいんだよ。ビジュアルが機能の明示をしなくなる仕様変更はそもそも悪だろ
2022/02/23 17:17
hanagasaitayo
redCornerRadius10Button…いや長いな…
2022/02/23 17:22
enkagin
ボタンの配置を逆にしたいって言われたら上から1、0って並ぶのか?
2022/02/23 17:28
sisya
対策すべきは名称の空虚化ではなく、意味を破壊する仕様変更をさせないことでは?1990年代辺りによく見た地獄を、2020年の今提唱されるとは思っても見なかった。
2022/02/23 17:38
quabbin
デザイン管理のはなしらしい。ので、挙動は一切含まれていない。だとしても、それで素直に検索できるのだろうか?
2022/02/23 17:46
lacucaracha
この例はどないやねんと思うけど、組織設計とかでは、敢えて『第一営業部』『第二営業部』みたいな名前にしておき、境界線を明確化しない手法ってのはあるよね。
2022/02/23 17:49
mokepoin
こうしてTBL0001のようなテーブル名ができあがったのである。
2022/02/23 17:50
omioni
変数名等の文字数制限が6文字とキツいFORTRAN 77(1977年頃制定)以前向けに書かれたプログラムを見たときを思い出したり・・・
2022/02/23 17:52
ilohas-nashi
「はは、結局連番かーい!ってツッコミ待ちね🥴」と思ったら真剣に言ってんの!?これ許すとbutton_0_1だのlabel_1だのが許されて収集つかなくなる未来しか見えない
2022/02/23 17:52
moto_2010
SIerから受託、今事業会社だけど、この手の連番を画面名等にあてるのはSIerだけだったなあ。連番だけ見てもなんのことやら分からんし、仕様変更に強くなったというか名前に意味を持たせなくしただけというか
2022/02/23 17:56
versatile
OkButton_finalialityPunPunDreamExPlus
2022/02/23 17:56
sds-page
開発途中でボタンの意味が180°変わる現場に投入されたくない。リリース前ならリファクタリングで対応したい
2022/02/23 17:59
findup
この人の他レスも見た感じ、チーム内で番号覚えてしまえば後は早いよってスタンスっぽいけど…。いや…無いな。ボタン10個以下とかなら…それでもなあ。
2022/02/23 18:00
yamadar
ちょっと何言ってるのか分からない
2022/02/23 18:01
sa-yama321
たぶん駄目パターンだろう。ButtonOK ButtonCancel ButtonYes ButtonNo 全部、名前それぞれで書いて、色をButtonBlueとかのCSS定義でやるのがいいんじゃないのか。
2022/02/23 18:09
airj12
ボタン自体の名前なら表示ラベルではなく実際にトリガーされるアクションを想起する名前にして欲しい、Commit〜とか
2022/02/23 18:09
kazuau
なるほど、形状と色の問題であって、ラベルと機能はあとで与えられるんだねきっと。だったらdialog_roundrect_blue_buttonとかがいいのでは
2022/02/23 18:17
rna
バグが出やすくて根本的に弱い命名にすることで「仕様変更に強く」なる!仕様変更しても弱さが変わらないから!つーか色を自由に変更できるボタンコンポーネントがない前提なん?色々ヤバない?
2022/02/23 18:28
morimarii
「OKボタンの色を使ってキャンセルボタンを作りたい」あほか、って乱暴な言葉が口からでちゃった。。。/こういうのが上司やユーザだったら地獄だなあ
2022/02/23 18:42
catan_coton
NW機器やサーバーのホスト名ですら役割と紐付けないと何やってんのわからなくてしんどいのに
2022/02/23 18:47
pribetch
キャンセルしますか?(はい/キャンセル)
2022/02/23 18:51
izoc
自分の身の回りで考えたらあり得ないけど同意する意見もリプ欄でたまに見かけるのでゲーム業界ならではの文化の違いなのかな。自分の価値観で一方的に侮辱するのもどうかと思う。
2022/02/23 18:53
enemyoffreedom
COBOLっぽい。まぁそういうルールで昔から回してる現場もあるのだろうし
2022/02/23 19:03
moromoro
その命名は人間側が耐えられないよ…これにどうしても通し番号でやりたい派が混ざるとマジやばい
2022/02/23 19:14
REV
「テケトーに命名するからいけない。十分内容を記述した命名にしょう」と長い日本語名をつけたら、随所で尻尾まで表示されずに困ることに。
2022/02/23 19:17
amunku
学校で歴史として教えてほしい
2022/02/23 19:27
kk255
連番も数が多いときつそう。あと差異の少ない色が複数ある時とかも。
2022/02/23 19:27
roirrawedoc
さすがPPAPやってる国の“““エンジニア”””は一味違うぜ
2022/02/23 19:32
yasu-log
ButtonOk派はいないですか?
2022/02/23 19:33
acealpha
重役の名前にしよう 部長を急遽変更 社長が死んだ 会長が変な挙動している など楽しい現場に早変わり
2022/02/23 19:41
metalmax
そういえばウマ娘って戻るボタンがネガティブな白の所とポジティブな緑の所があったな。個人的にはどっちも白で良いのではと思ったけど。
2022/02/23 19:45
atsuskp
「OKボタンを使ってキャンセルボタンを作りたい」←こんなニーズあるか?って意見あるけど、あると思う。運営的に「いいえ」を「はい」のように見せて押させたい(それが正規ルート)ケースはままある。
2022/02/23 19:51
fn7
仮にそのような大きめの仕様変更があったとしても、webでいうCSSのクラスの付け替え程度のことで済ますべきなのでは。
2022/02/23 19:51
mangakoji
絶望的。新人に最初に禁止する命名法
2022/02/23 20:10
vuy
命名管理台帳もセットで作らないとね。命名するときは上司のハンコもらって台帳の空き番号を貰うように。
2022/02/23 20:17
satoshie
その命名はダメでしょ…
2022/02/23 20:22
open_your_eyes
たぶん、例が悪いのでは?呼び出す機能名をボタンに命名すると抽象化したりFactory Methodを導入したときに不便だからでは??違うのか?
2022/02/23 20:38
opnihc
そもそも序盤でOK⇔いいえ、変更後がキャンセル⇔はいってどっちも対になってないやんけ。実装以前に日本語がおかしいのでもう少しマシな例を出してほしいぞ。
2022/02/23 20:50
ardarim
仕様変更には強いのかどうかしらんけど保守性は最悪だな。こんなソース押し付けられたらぶん投げたくなる
2022/02/23 21:00
mather314
そもそもなぜOkButtonを「キャンセル」のボタンに流用するのかがわからない。色と配置が同じだけで用途が違うんだから、用途別に名前をつけてみてはどうだろうか?
2022/02/23 21:12
igaiga07
うおおおやめろおおお
2022/02/23 21:21
enhanky
この程度の能力の人間が初心者にコーディング教えてるの地獄味が強い。技術書読まないし、メジャーなUIフレームワーク(たいていokButton的な命名がある)使ったこともないってことでしょ?
2022/02/23 21:22
sigwyg
“OKボタンの色を使ってキャンセルボタンを作りたい”←UIエンジニアを名乗るなら、そこは戦うべきかと。勝てないにしてもbutton_redみたいな見た目に即したものにする。命名の裁量あるなら、何も連番にすることはなかろ
2022/02/23 21:42
forest1040
Okボタンをキャンセルボタンにしたいのなら名前を変えるのが当たり前だと思ってた。。
2022/02/23 21:44
kirifuu
メンテナーが理解できるメンテナンスリストを整備して引き継げ。極論、NOButtonが「はい」になっててもメンテナンスリストがあれば間違わない。開発だけやって逃げて、そこがおざなりだから後続が死ぬんだぞ。
2022/02/23 22:03
d6rkaiz
楽しそう。
2022/02/23 22:14
kabayakin
ゲームだからデフォルト選択肢が入れ替わる事を言いたいんだろうけど、これしか解決策が無いって決めつけてる訳でもないし、そんなものかねとしか。
2022/02/23 22:18
nearlyinhuman
PSの悪口かな
2022/02/23 22:41
millfi
自転車置き場の屋根の色議論みがある
2022/02/23 22:43
deamu
連番の管理台帳エクセルがなぜか保守チームに引き継がれずロストするんだよね、分かるよ、確実に作られたはずのドキュメント類が引き継がれず行方不明になるの頻繁によくある
2022/02/23 22:58
daishi_n
デフォルト動作に対するガイドラインが問題なだけだろ。いつもと違うレイアウトにすること自体が誤り
2022/02/23 23:05
udongerge
うむ。何言いたいかわからん。
2022/02/23 23:07
royzumi
素人?
2022/02/23 23:21
harumomo2006
汎用機の開発かよ。関数名がA001で中の変数がB001とか説明書がないと分からないやつ
2022/02/23 23:52
hamamuratakuo
他と重複しない保証があれば、命名則はIDEをフル活用すれば後からでも何とかなるのでは?
2022/02/24 00:21
syunnchang
2年後に自分のツイート見て何いってんだこいつって思いそう
2022/02/24 01:07
yamadadadada2
button0のほうがよほど意味不明だと思うが…
2022/02/24 01:19
kagehiens
1行目だけ読んで「せやな」と言いかけたが、例がダメすぎだろ・・・。それにしても、敢えて誤解を与えるような使いまわしをしたい理由ってなんだ?解約手続きの画面に妨害意図をもって仕込むとか?
2022/02/24 01:55
obutora
数字管理は余計なコード読む手間増えるのでやめてほしいです。
2022/02/24 02:41
rAdio
「テキトーに命名しておけば後でどう扱おうと名目は立つ」ってことなのかな。天才かよ。
2022/02/24 03:01
cloverstudioceo
ボタン名は変えない前提なのが分からんわ。誰だが知らんけど、業界では有名な方なんかね。明らかに間違った事堂々と書いてて怖い
2022/02/24 03:19
bellonieta
100歩譲っても、ボタン10個以上って仕様変更でさらにカオスになるから、やっぱ譲れない。
2022/02/24 03:41
swdrsker
UIエンジニアなのにスライドデザインが壊滅的にダサいのが気になる
2022/02/24 04:07
paradisemaker
この命名規則で実際に運用してるのか気になる
2022/02/24 05:20
matchy2
Excelで管理簿をつけて追加の際にはマネージャーの承認印をもらうようにすればいいんじゃないかな
2022/02/24 06:07
t_yamo
それは「静的型変数で特定の型にすると開発中盤で型を変えたときにコンパイルエラーになるから全部any的なのにしておけばOK」的なアプローチでは(つまりチェック機構を緩めて不整合に気づきにくくしている)。
2022/02/24 06:10
takutakuma
連番で名付けるのはちょっとな……
2022/02/24 06:59
kxkx5150
さすがにジョークだろ。飲み会かなんかのバツゲームで、バカな事言って炎上.. って感じだろ
2022/02/24 07:21
urtz
数による。数十個以上なら英数字等で管理したほうが良さそう
2022/02/24 08:42
umai_bow
結局「Button_0はOKボタン」みたいなドキュメントが出回ることになるので関係ないのでは
2022/02/24 09:02
Tomosugi
所属先。。
2022/02/24 10:29
Funyapu
cancel-ok ボタンができるってやつかな
2022/02/26 14:03
hiroshe
リーダブルコードは読んだ上での話なのかな。