リファクタリングとはソースコードのエントロピーを小さく抑えることであり、これを言い換えれば「設計のヒステリシスを小さく抑えること」なんじゃないかと思う。 例として、機能A と 機能B の2つの機能を備えたソフトウェアの開発を考えてみる。 最初から 機能A と 機能B の2つの機能が必要であることを知っていれば、全体を見渡した奇麗な設計は比較的容易である。最初から 機能A と 機能B に共通の構造を抽出することも出来るだろうし、抽象化されたインターフェイスを用いたオブジェクト指向設計も出来るだろう。 しかし、現実には最初から全体像を知ることは難しい。まず 機能A の機能を要求され、次に 機能B の機能が要求される。あるいは逆の順序で、最初に 機能B が要求されて次に 機能A が要求される。最初の機能に着手している時点では、そのあとに要求される機能のことは全く知らされていない状態だ。 次の3つ
プログラマなら、技術者なら、出来れば上を目指して欲しいと思うものの、世の中にあふれる仕事というのは、実はそれほど技術が要らない仕事がボリュームゾーンだったりするのだ。技術を身につけたところで、それを活かせる仕事が回ってこないことも多々あるんですよ。役不足と言う奴ね。*1 そう言う意味で下限に合わせたプログラム設計はシステム開発を停滞させる - @katzchang.contextsの総論には賛成なのだけど、しかし、僕の分析ではやはり業務システムのボリュームゾーン、つまり一番人手のかかる部分ってのはそれほど技術を要さないし、ある種の人海戦術的戦略はそれほど間違ってもいないということは言っておきたい。*2いや、現場の人間としては嫌なんだけどね。だってつまらないじゃん。同じことばかりやってもさ。技術的に閉塞感あるし。 複雑な処理がなければ手作業が必要な範囲って限られてくるはずだし、じゃぁ人手集め
祖母の白寿のお祝い 先日、満99歳(数えで100歳)になった祖母の白寿のお祝いをやった。 さすがに身体のあちこちに不具合が出てきており、そろそろ本格的に外出も難しくなってきたので祖母と一緒に家族で集まれるのはたぶんこれが最後だろう。 下は0歳から上は99歳までいるので、移動と諸々…
「すき屋」を運営する「ゼンショー」に残業代の支払いを求めて街頭活動を行う首都圏青年ユニオンのメンバー。ゼンショーから告訴された女性も残業代の支払いを求めて同社を告訴していた=平成20年2月28日 牛丼チェーン店「すき屋」を展開する外食大手の「ゼンショー」(東京都港区)が女性アルバイト店員(41)を窃盗罪で刑事告訴した騒動。「商品用のご飯を無断でおにぎりにして食べた窃盗にあたる」。こんな理由で企業がアルバイト店員を告訴したと報じられたため、ネット上でも反響を呼んだが、背景には「残業代未払い」を訴えるアルバイト側と、「勤務報告書改竄」を主張する企業側の労使間トラブルがあった。果たして両者の言い分は…。告訴内容は“コメ泥棒”!? 「○○さん、地検まで来ていただけませんか?」 3月上旬。「すき屋」仙台泉店に勤める女性の元に、仙台地検から電話があった。女性は昨年4月、同じ店で働くアルバイト店員2人と
言葉はその人から出てきたものなのですよね。どんなに装ってもかっこつけても、文章からにじみ出てくるものあります。つまり書いた文章に表れているのは自分で、自分のすべてではないけれど、自分の一部が表れたものだと言えるのではないでしょうか。書いた文章に自分では特に意識していない自分=本当の自分が表れていたりするんじゃないかな、そう思ったので書いてみました。 最近の私、実際の私 最近、自分の考えていることが言葉で説明しきれなくなりつつあるというのがあったりします。保守的になりつつあるというか、元々強く主張したりするのは苦手で、その傾向が最近特に出ているのかもしれません。ブログで文章をアクレッシブに展開するというのは私には向いていないことで、そんな感じのときもありましたけれど、結局かなり無理しているのですね。あとからどっと疲れが出る。自分の意見を押し通そうとしたところで、そこまでする自分、ムキになる自
FxUG@北陸の懇親会で出た話題。 中規模以上のプロジェクトになれば、悲しいかな、テンプレにそったプログラムしか書けない人や、そもそもプログラムを書いたことすらない人が結構いたりします。10人もかき集めれば2〜3人、いや半分はそういう人だったり。リーダーさんは仕様検討とかで忙しいから、そういう初級者さんにプログラムの作成を頼らざるを得ないってのが現実です。 で、初心者さんにもわかりやすい設計のプログラムを量産していきましょう、となる現場はよくあります。なに、うちのところもそんなもんですよ。 でもそれで良いの?と、個人的には疑問を持っています。 初心者でも書けるように、テンプレートをコピーして使う。 コピペ駆動開発の副作用は周知の通り。 テンプレートが役立つのは限定的な場合。仕様が想定の範囲を超えればテンプレートを捨てなきゃならないけど、その判断を誰が下す? 後々の保守しやすいよう、初心者で
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く