回答編
ハードコーディングはシステム開発の用語ね。特定環境向けのデータをソースコード(プログラム本文)に埋めこんでしまうこと。
特定環境? 埋めこみ?
たとえば店舗から売り上げデータを送信する仕組みがあったとして、売上は日によって変わるから都度手入力しなきゃいけないわよね。10月3日、10万円也、10月4日6万円って感じで。
まぁそうでしょうね。
ただ送信する店舗は今のところ一つしかないので、いちいち店舗名・住所などを入力するのはわずらわしい。だからプログラム内にこれらの情報を書きこんで一緒に送るようにしました。
親切ですねぇ。
さてある時、店舗をもう一つ作ることになりました。コスト削減のためできれば既存システムを使い回したいと思っています。で、さっきの送信業務を行おうとすると……どうなると思う?
どうって……あ、前の店舗名で送られちゃいますね。
そう、使い回そうとするならプログラム自体を改修するしかない。新しい店舗名・住所に変更して新店用のシステムを別個に作る。でもこれ無駄でしょ。
どうすればいいんでしょう。
だから売り上げ額と同じように店舗名・住所も外部から入力可能にしておくのよ。ソースコードには環境依存の情報をなるべく盛り込まず、ただロジックのみを記載する。そうすることで汎用性の高いシステムができあがるのよ。
なるほど……ただ入力者の利便だけ考えればいい、ってわけじゃないんですね。
冒頭のカテゴリの話じゃないけどね。とにかく一面的な決めつけは危険なのよ。なるべく視点を広くもってベストの方向性を検討していかないと。
分かります。既存のこだわりにとらわれず常に柔軟な対応を心がける。いわゆるオープンマインドの精神ですね。
うんうん、よく分かってるじゃない。じゃあ今週〆切のタスク、三倍に増やしてもいい?。
え? え、それは無理でしょう。だって僕、今、週末作業を4つ控えてるんですよ。限界です。
いや、それがまさにこだわりだから。
………。
あんたさっき言ったわよね。既存のこだわりにとらわれず常に柔軟な対応を心がけたいって。今がまさにその時よ。さぁブレイクスルー・ザ・ウォール。新たな可能性の地平に向けて旅立ちましょう!。
いえ、いえ、人間できることとできないことがありますから! ていうかこの場合のこだわりは『決めつけ』じゃなくて『防衛本能』です! 捨てられません、捨てちゃいけませんから!
【解説】
ハードコーディング:
プログラム内に環境依存のデータ(日付・名前など)を埋めこむこと。都度入力する手間が省ける反面、汎用性は低下する。通常ソースコードにはロジックのみを記載し、可変データはパラメータとして外部入力可能にする。
この連載の記事
-
最終回
トピックス
IT業界の夢とロマンが詰まった、最終回なIT用語! -
第43回
トピックス
業界人は軍事用語好き? やっぱり中二病なんですかね、なIT用語 -
第42回
トピックス
サッカー漫画で何を思い浮かべるかで世代が分かるIT用語 -
第41回
トピックス
いくぜっ、バーストモード! 動作クロック30倍! なIT用語 -
第40回
トピックス
前世の記憶は信じなくても、過去のミスは忘れない室見さん、なIT用語 -
第39回
トピックス
もう一人の自分を解き放て! 対比で分かる中二病的IT用語 -
第38回
トピックス
生命を刈り取る「不死の軍団」みたいなIT用語 -
第37回
トピックス
MK2、透明で発展系のMK2……なIT用語 -
第36回
トピックス
お金がかかるをキーワードにいろいろな話題が広がったIT用語 -
第35回
トピックス
理化学とミリタリーへの憧れが中二病につながるかもしれないIT用語 -
第34回
トピックス
超兵器とリンク、しているようで実はただ乗りしてるだけのようなIT用語 - この連載の一覧へ