Suche senden
Hochladen
命名の話
•
4 gefällt mir
•
4,568 views
M
moznion
Folgen
命名の話です
Weniger lesen
Mehr lesen
Technologie
Melden
Teilen
Melden
Teilen
1 von 47
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
Jesque robust-worker-pool
Jesque robust-worker-pool
moznion
Static analysis for perl
Static analysis for perl
moznion
FARO REPORT Premium Sample
FARO REPORT Premium Sample
Miyu Mito
Yet Another Perl Cooking
Yet Another Perl Cooking
moznion
Hachioji persec
Hachioji persec
moznion
Inner world of Perl::Lint
Inner world of Perl::Lint
moznion
Hachiojipm 44
Hachiojipm 44
moznion
Perl::Lint is over, for the present
Perl::Lint is over, for the present
moznion
Empfohlen
Jesque robust-worker-pool
Jesque robust-worker-pool
moznion
Static analysis for perl
Static analysis for perl
moznion
FARO REPORT Premium Sample
FARO REPORT Premium Sample
Miyu Mito
Yet Another Perl Cooking
Yet Another Perl Cooking
moznion
Hachioji persec
Hachioji persec
moznion
Inner world of Perl::Lint
Inner world of Perl::Lint
moznion
Hachiojipm 44
Hachiojipm 44
moznion
Perl::Lint is over, for the present
Perl::Lint is over, for the present
moznion
Perl::Lint - Yet Another Perl Source Code Linter
Perl::Lint - Yet Another Perl Source Code Linter
moznion
Hachioji pm 41
Hachioji pm 41
moznion
Hachioji.pm 40
Hachioji.pm 40
moznion
Hachioji.pm #39
Hachioji.pm #39
moznion
Talking About Japanese Area Code of Phone
Talking About Japanese Area Code of Phone
moznion
Hachioji.pm 38
Hachioji.pm 38
moznion
Hokkaido.pm #11
Hokkaido.pm #11
moznion
Hachiojipm 36
Hachiojipm 36
moznion
Plack::Request with Encoding
Plack::Request with Encoding
moznion
YAPC::Asia 2013 - CPAN Testers Reports の情報を上手に使う
YAPC::Asia 2013 - CPAN Testers Reports の情報を上手に使う
moznion
Net stalking with-lastfm
Net stalking with-lastfm
moznion
Takao.mt 2013
Takao.mt 2013
moznion
Perl beginners #08
Perl beginners #08
moznion
Hachiojipm 28
Hachiojipm 28
moznion
Hachiojipm 26
Hachiojipm 26
moznion
Hachioji pm 25
Hachioji pm 25
moznion
Hokkaido pm 8 LT
Hokkaido pm 8 LT
moznion
Namba.pm #0
Namba.pm #0
moznion
You Can Be a CPAN Auhor
You Can Be a CPAN Auhor
moznion
好き好き大好きWhitespace
好き好き大好きWhitespace
moznion
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Weitere ähnliche Inhalte
Mehr von moznion
Perl::Lint - Yet Another Perl Source Code Linter
Perl::Lint - Yet Another Perl Source Code Linter
moznion
Hachioji pm 41
Hachioji pm 41
moznion
Hachioji.pm 40
Hachioji.pm 40
moznion
Hachioji.pm #39
Hachioji.pm #39
moznion
Talking About Japanese Area Code of Phone
Talking About Japanese Area Code of Phone
moznion
Hachioji.pm 38
Hachioji.pm 38
moznion
Hokkaido.pm #11
Hokkaido.pm #11
moznion
Hachiojipm 36
Hachiojipm 36
moznion
Plack::Request with Encoding
Plack::Request with Encoding
moznion
YAPC::Asia 2013 - CPAN Testers Reports の情報を上手に使う
YAPC::Asia 2013 - CPAN Testers Reports の情報を上手に使う
moznion
Net stalking with-lastfm
Net stalking with-lastfm
moznion
Takao.mt 2013
Takao.mt 2013
moznion
Perl beginners #08
Perl beginners #08
moznion
Hachiojipm 28
Hachiojipm 28
moznion
Hachiojipm 26
Hachiojipm 26
moznion
Hachioji pm 25
Hachioji pm 25
moznion
Hokkaido pm 8 LT
Hokkaido pm 8 LT
moznion
Namba.pm #0
Namba.pm #0
moznion
You Can Be a CPAN Auhor
You Can Be a CPAN Auhor
moznion
好き好き大好きWhitespace
好き好き大好きWhitespace
moznion
Mehr von moznion
(20)
Perl::Lint - Yet Another Perl Source Code Linter
Perl::Lint - Yet Another Perl Source Code Linter
Hachioji pm 41
Hachioji pm 41
Hachioji.pm 40
Hachioji.pm 40
Hachioji.pm #39
Hachioji.pm #39
Talking About Japanese Area Code of Phone
Talking About Japanese Area Code of Phone
Hachioji.pm 38
Hachioji.pm 38
Hokkaido.pm #11
Hokkaido.pm #11
Hachiojipm 36
Hachiojipm 36
Plack::Request with Encoding
Plack::Request with Encoding
YAPC::Asia 2013 - CPAN Testers Reports の情報を上手に使う
YAPC::Asia 2013 - CPAN Testers Reports の情報を上手に使う
Net stalking with-lastfm
Net stalking with-lastfm
Takao.mt 2013
Takao.mt 2013
Perl beginners #08
Perl beginners #08
Hachiojipm 28
Hachiojipm 28
Hachiojipm 26
Hachiojipm 26
Hachioji pm 25
Hachioji pm 25
Hokkaido pm 8 LT
Hokkaido pm 8 LT
Namba.pm #0
Namba.pm #0
You Can Be a CPAN Auhor
You Can Be a CPAN Auhor
好き好き大好きWhitespace
好き好き大好きWhitespace
Kürzlich hochgeladen
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
Kürzlich hochgeladen
(12)
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
命名の話
1.
命名の話 @moznion
2.
すべての人物・事物には 真の名前があり、 その名前を知るものは それを支配することができる
3.
名前重要
4.
我々はどのようにして 名前を付けるのか
5.
method/func の場合
6.
動詞から始めよ (e.g. isValid, fetchUserName)
7.
どちらが良いか? (isValidXXX() or validateXXX())
8.
それが何をするのか 何を返すのかで変わる
9.
どちらが良いか? (isValidXXX() or validateXXX()) validation
した結果だけ返す だいたい bool が来る
10.
どちらが良いか? (isValidXXX() or validateXXX()) validation
する 何が返るかわからない
11.
その者が何者であるか (何をするか) で名前を決める
12.
逆にその者が何者であるかは 名前によって決定される
13.
言霊 the Power
14.
variable の場合
15.
名詞であるべき (e.g. id, grantedName)
16.
形容詞・副詞は名詞の前に 付けたほうが個人的に良いと 思っている
17.
基本的に動詞が入ることは 起こりえない (はず)
18.
型情報を名前で表すべきか 問題
19.
例えばハンガリアン記法 (e.g. sFileName, epochI)
20.
例えばハンガリアン記法 (e.g. sFileName, epochI) ナツい!
21.
とは言え,urlString みたいな 名前を付けることはある
22.
あと,配列とかListだったら 複数形にするとかですね (複数形にする派です)
23.
動的型付け: 型情報をちょっと は書いても良いのでは (ハンガリアンが良いとは 言っていない)
24.
静的型付け: 型情報見れば済む から詳しく書く必要はないや ろ,各自やっていけ
25.
Class の場合
26.
名詞であるべき (e.g. URLEncoder, fbAuthenticator)
27.
Roll を的確に表した語を 名づけてやる必要がある
28.
変数名よりも 純粋な名詞的ネーミングに なる傾向がある気がする (修飾語が少ない)
29.
URL の場合
30.
名詞であるべき あと基本的に1単語で (RESTっぽい!!!!!)
31.
とは言え動詞が入ることが ありますね 動詞の方がわかりやすいこと もある (signupとかね)
32.
☑各自やっていく必要あり
33.
このあたり Web API: The
Good Parts が参考になる気がします
34.
雑な話題
35.
短い名前 VS 長い名前
36.
短い名前 - 打ちやすい - コードの見通しが良くなる場合有 -
意味不明になる可能性がある - 大きなスコープを防ぐための 抑止力になりえる
37.
長い名前 - 打ちにくい - コードの見通しがゴチャっと する場合がある -
説明的な名前に出来るので 役割を一目で理解できること多い
38.
- 適度な長さでやる (各自の意識) -
URL とかは短いほうが良い エンカウント機会!!!! - 最低限かつ不足のない名前を 付ける (コメントが要るか要らな いかが指標となる) - IDE を使っていけ (補完が効く) どうすりゃいいのさ
39.
情報が無いところから 情報を生み出すことは出来ない 情報にあふれたところから 情報を蒸留することは出来る
40.
困ったらとりあえず 長い名前付けておくのが 良い,悩む時間が勿体無い
41.
命名に 詰まったら他人と 議論する
42.
snake_case VS CamelCase
43.
言語のコーディング規約に 従うと吉
44.
とは言え基本的に CamelCaseは読みにくいですね (Java批判ではないです)
45.
CamelCaseが読みにくい っつうのも なんかの論文でデータとして 出ていたはず (論文を忘れたので引用できない)
46.
snake_case 使えるところは 使っていけば良いのでは……
47.
コーディングの労力に おいて命名の占める 割合は大きいので (良し悪しが大きく左右される) 各位頑張りましょう
Jetzt herunterladen