マジックナンバー単語

マジックナンバー
1.5千文字の記事
  • 3
  • 0pt
掲示板へ

マジックナンバーとは

  1. プログラム中に突如出現するマジカルミラクルでドリームファンタジー数字。本稿で解説
  2. プロ野球において、上位チームが下位チームに対して「上位でシーズンを終了することが確定するまであと何勝しなければいけないか」を表す数字。→マジックナンバー(野球)
  3. 2003年元日発売、KICK THE CAN CREWメジャー2ndアルバム
  4. 荒井チェリー漫画2004年COMICぎゅっと!』(平和出版)に連載、単行本は未刊行。
  5. 2009年に発売された坂本真綾シングルテレビアニメこばと。」OP
  6. 原子物理学における、特殊な数列。ある特定原子核が他の原子核にべ特異的に安定になる現が知られており、これをマジックナンバー(魔法数)と呼ぶ。核子の軌と固有エネルギー、スピン、幾何学的配置などさまざまな要素が絡み合い、単純な数列とはならない。
  7. 分子レベルの極めて小さな金属微粒子(金属クラスター)などで見られる現で、ある特定の分子数の金属微粒子が他の分子数の金属微粒子とべ特異的に安定になる現が知られている。この分子数をマジックナンバーと呼ぶ。幾何学的配置に加え、に分子軌希ガスとよく似た閉核な状態となることで起きる。希土類の希薄なガスでの例が顕著だが、ある種の金属化合物やホウ化物では固体中に安定してクラスターを構成する。

概要

コード中になんら説明く「*2」とか「+100」とかいった形で割り込んでくる数字をマジックナンバーという。場合によっては文字列などにも使う。マジックナンバーで値を決め打ちしてコーディングすることをハードコーディングと呼ぶ。

マジックナンバーは、書いた本人には意図が分かっていても読む側にとっては解読に一手間かかる。後から自分で読み返して何の数字だか思い出せないのもよくある話。また、その数字を変更する必要が生じた場合、その数字が複数箇所で使われていると、それらすべてを変更しなければならない。これは手間が掛かるだけではなく、変更し忘れによってバグを埋め込んでしまう可性すら有る。

これらの理由から、一般的にマジックナンバーは使うべきではない。一見してどんなに自明の内容であっても、必ず一端定数に代入するのがプログラミングマナーである。もちろん定数名もちゃんと意味のある内容でなくてはならない。可読性のみならず、バグを出さないという面でも定数代入が推奨される。ちょっとした違いであるが、小さな気遣いが素人玄人の分かれというやつなのだ。

具体例

例えば、以下に示した消費税を計算する関数consumption_tax擬似コードについて考えてみよう。

function consumption_tax(price) {
  return price * 0.05;
}

この場合、「0.05」がマジックナンバーであり、消費税税率が変わってしまった場合(そして残念ながらそれはきっと実現してしまうだろう)に簡単に対応できなくなってしまう。このコード定数consumption_tax_rateを用いることによって、次のように書き換えられる。

const consumption_tax_rate = 0.05
function consumption_tax(price) {
  return price * consumption_tax_rate;
}

このようにすれば、consumption_tax関数では消費税率を用いて消費税を計算しているということがより明確に示される。また、消費税率が変わってしまった場合には、consumption_tax_rateの値を変えるだけで良い。

関連項目

【スポンサーリンク】

  • 3
  • 0pt
記事編集 編集履歴を閲覧

この記事の掲示板に最近描かれたお絵カキコ

お絵カキコがありません

この記事の掲示板に最近投稿されたピコカキコ

ピコカキコがありません

マジックナンバー

4 ななしのよっしん
2011/10/30(日) 12:48:00 ID: 82nVbizuNE
とりあえず具体例追加した。追加した後で>>3をよく読んだらバッファ長の話があって、そっちの方が(プログラムへのや利点が分かりやすいので)例として適切な気もしたけれど面倒なので、気になるならか勝手に変更しといてほしい。
👍
高評価
0
👎
低評価
0
5 ななしのよっしん
2012/03/22(木) 07:39:07 ID: 8OZumMh9gd
#define CHIHAYA 72
#define 宇宙人生全ての答え 42
#define hyde 154
👍
高評価
0
👎
低評価
0
6 ななしのよっしん
2013/10/13(日) 17:10:01 ID: bSYx3N+AdH
マジックナンバー消費税率0.05が変更される時が来るわけだが、はてさて……
👍
高評価
0
👎
低評価
0
7 ななしのよっしん
2014/03/22(土) 20:28:49 ID: Cm9Z8jK8eC
人間が短期的に記憶できるのは7個前後(個人差により±2)っていうのはマジカルナンバーだったか
👍
高評価
0
👎
低評価
0
8 ななしのよっしん
2014/09/21(日) 15:41:42 ID: E9oiozAvHC
原子核が安定化する陽子の数、中性子の数もマジックナンバー
電子軌が安定化する電子数もマジックナンバー
この辺の量子力学的な記述も欲しい。
👍
高評価
0
👎
低評価
0
9 ななしのよっしん
2015/11/12(木) 14:02:55 ID: cjMbthshPw
消費税更新がされてないのな
👍
高評価
0
👎
低評価
0
10 ななしのよっしん
2015/11/19(木) 02:52:57 ID: qvSb34wjvv
消費税率は設定マステーブルの値を更新してくれ。

変更した場合のテスト?してないよ。。。そんなの。。。
👍
高評価
0
👎
低評価
0
11 ななしのよっしん
2016/10/24(月) 15:03:09 ID: ySxVStTPDe
マジックはオマジナイとか呪文とか訳すといい
魔法じゃなくて「他人には意味がわからない」と皮るときの用法

ちなみに消費税アップは20年くらい前に実例があるから
まともな業者ならその時に税率再引上を組み込んでたはず…だけど
あまりに間がきすぎた

そして軽減税率魔物がおまいらを襲う
👍
高評価
0
👎
低評価
0
12 ななしのよっしん
2017/09/30(土) 19:04:17 ID: Nv/azgk88i
マジックナンバー7±2
実際は4±1らしい
👍
高評価
0
👎
低評価
0
13 ななしのよっしん
2019/03/17(日) 23:10:05 ID: 2odg4Ev2cy
10%来ますね…
👍
高評価
0
👎
低評価
0

急上昇ワード改