はじめに
「Pythonの連想配列って何だっけ?」
という(なんとなく、気持ちの悪い)ワードが、頭をよぎったときに、
ググって解決しづらかったこと Advent Calendar 2021
を思い出したため、 勢いでエントリー しました。
当初は、各言語での連想配列系の呼び方の違いを記事にしようかと考えましたが、
既に、そのような、まとめの良記事は存在しています。
では、ネタ記事として、
本当にあった怖い検索結果 ~pythonの連想配列~
とかを書こうとも思いましたが、明らかな怪文書が検索結果に表示されるわけではない1ため、
釣り記事になってしまう 🪓怖い と、断念。
ただ、連想配列系の呼び方の違いは、いつの時代も気になりますよね?
Matzの感覚とまではいかないものの、
設計時などで、連想配列系のデータ構造を表現する時に、
相手の扱っているプログラム言語を意識して、単語を変える位には意識してしまいます。
@Yametaro さんが、 ググり というお題を出してくれたので、
言語毎の連想配列系の検索結果を調べてみよう!
という ググって解決しづらかったこと Advent Calendar 2021 21日目の記事です。
軽い読み物としてどうぞ。
google 検索結果件数まとめ
まずは、google検索結果の件数を見てみる。多すぎるので、単位は、M(1,000,000)。
連想配列 ________ |
dict ________ |
Hash ________ |
Map ________ |
HashMap ________ |
ハッシュテーブル ________ |
|
---|---|---|---|---|---|---|
python |
0.124M (0.005%) |
✅18.8M (0.9%) |
42.1M (2.0%) |
2,050M (96.7%) |
8.72M (0.4%) |
0.173M (0.008%) |
javascript |
0.172M (0.004%) |
16.4M (0.4%) |
85.2M (2.2%) |
3,710M (94.4%) |
6.96M (0.18%) |
112M (2.8%) |
ruby |
0.069M (0.007%) |
12.9M (1.2%) |
✅11.3M (1.1%) |
989M (94.7%) |
8.02M (0.77%) |
23M (2.2%) |
java |
0.116M (0.006%) |
38.6M (2.0%) |
30.7M (1.6%) |
1,800M (94.9%) |
✅12M (0.63%) |
16M (0.84%) |
Rust |
0.051M (0.04%) |
10.5M (7.3%) |
8.61M (6.0%) |
121M (83.9%) |
✅3.35M (2.32%) |
0.77M (0.53%) |
golang |
0.08M (0.26%) |
6.15M (20.0%) |
6.61M (21.5%) |
✅12.1M (39.4%) |
5M (16.3%) |
0.791M (2.6%) |
※ 2021年12月時点調べ
※ ✅ が連想配列系として、国内で使われていると筆者が認識している組み合わせ
※ ( ) 内は、言語の合計内の割合
突っ込みどころ満載の、無価値な表ができあがりました。
- Hash や Map など、連想配列以外の用途の検索が引っかかってしまう。
- そもそもgoogle検索結果件数のブレが大きい。
- 英語の検索結果の影響が大きい。
- etc...
ただ、少なくとも、google検索結果の件数においては、
プログラミング言語と連想配列系の単語の組み合わせが、
正しい方が、多く表示されると言う事はなさそうです。
google 上位検索結果
では、件数ではなく、上位の検索結果ではどうでしょうか。
なんとなく、筆者が気持ち悪いと感じる「pythonの連想配列」や
「javascriptのdict」の検索結果を確認するため、
Python と javascript で 連想配列 と dict の検索結果の上位をまとめてみました。
Python
javascript
こちらについても、個々の記事への言及は避けますが、、
私が予想していたよりも、検索結果に差がない ことが、分かりました。
もちろん、私の感覚がずれていた可能性も有りますが、
「python 連想配列」の検索結果の5位の Pythonで辞書を作成するdict()と波括弧、辞書内包表記 など、
検索結果内に、検索した単語が出てこない記事もちらほら、引っかかります。
google賢過ぎない!?
まとめ
google検索の前では、プログラム言語毎の呼称の差異は、私が感じているより少ないものだと分かりました。
ただ、今回の執筆を通して、google検索結果を改めて考えてみると、
同一ドメイン記事の結果が、上位に並ばないようになっていたのもあり、
(昔はQiitaの記事が、TOP10のほとんどを埋め尽くしていたことも、あった気がした)
良記事が上位に出てくるとは限らないため、特に基礎的な部分において、
初学者がgoogle頼みだと、(昔よりも特に)遠回りではないかな?
という気持ちが強くなりました。
というわけで、以下の引用を掲載して、この記事を終わりにさせていただきます。
Rubyに限らず、公式ドキュメントや公式リファレンスを参照することは遠回りなように見えて実は一番の近道だったりします。
まさに急がば回れ、っていうやつですね。
検索結果を要チェック!Rubyの公式リファレンスは docs.ruby-lang.org です 〜公式な情報源を調べるクセを付けよう〜
勢いのエントリーを完了出来て良かった。
-
本記事後半で、検索結果は紹介します。 ↩