タグ

ブックマーク / katzchang.hatenadiary.org (4)

  • Javaオブジェクトに対する操作の記録と再生 - @katzchang.contexts

    元ネタ What Kind of Differences? Consider the following class. It defines an object that is able to record all the messages ever sent to it, and then playback those messages to another object. 以下のクラスは、オブジェクトに送られた全てのメッセージを記録し、他のオブジェクトで再生することが出来るよう、定義されている。 class VCR def initialize @messages = [] end def method_missing(method, *args, &block) @messages << [method, args, block] end def play_back_to(obj)

    Javaオブジェクトに対する操作の記録と再生 - @katzchang.contexts
  • 「簡単ですよね?」を「挑発」とは受け取らないようにしてます - @katzchang.contexts

    SIに限らず、「技術的な客商売」をやっていると、時として打合せの時に「簡単ですよね」という「挑発」を受けることがある。 「簡単ですよね」という挑発 | おごちゃんの雑文 あるあるw 自分が仕事してる中でよく言われるのが「できますよね?」っていう言葉で、それに対して安易に『できます』と答えるな!っていうのはSE稼業の基中の基中の基。新入社員研修で、名刺交換のお作法の次くらいに叩き込まれるはずです。いわゆる「持ち帰り検討します!」。コレばっかりじゃ、打ち合わせなんて一つも進まないんだけどねー。 で、個人的に便利でよく使ってるのが、「技術的にはできます」。技術的には問題ない。論理的には可能です。でも実装やらなんやらは必要です。時間はかかります。工数はかかります。さて、どうします?どこまでやります?…などと、メニューを提示するわけです。 ただし、これは自分で当に実現可能だと思わないと使っち

    「簡単ですよね?」を「挑発」とは受け取らないようにしてます - @katzchang.contexts
    takeshiketa
    takeshiketa 2009/08/10
    「技術的には可能ですが、」って接頭語?枕詞?は重宝しております。ただ、多用すると話のわからんヤツという微妙なレッテルも貼られてしまうため、使う頻度には微調整が必要です。
  • 下限に合わせたプログラム設計はシステム開発を停滞させる - @katzchang.contexts

    FxUG@北陸の懇親会で出た話題。 中規模以上のプロジェクトになれば、悲しいかな、テンプレにそったプログラムしか書けない人や、そもそもプログラムを書いたことすらない人が結構いたりします。10人もかき集めれば2〜3人、いや半分はそういう人だったり。リーダーさんは仕様検討とかで忙しいから、そういう初級者さんにプログラムの作成を頼らざるを得ないってのが現実です。 で、初心者さんにもわかりやすい設計のプログラムを量産していきましょう、となる現場はよくあります。なに、うちのところもそんなもんですよ。 でもそれで良いの?と、個人的には疑問を持っています。 初心者でも書けるように、テンプレートをコピーして使う。 コピペ駆動開発の副作用は周知の通り。 テンプレートが役立つのは限定的な場合。仕様が想定の範囲を超えればテンプレートを捨てなきゃならないけど、その判断を誰が下す? 後々の保守しやすいよう、初心者で

    下限に合わせたプログラム設計はシステム開発を停滞させる - @katzchang.contexts
    takeshiketa
    takeshiketa 2009/04/28
    人の能力を過小評価するなってことか
  • 「『変数のスコープは狭いほど良い』という迷信」という迷信 - @katzchang.contexts

    「変数のスコープは狭いほど良い」という迷信 変数でもメソッド名でもクラス名でも言えることだが、単純に「スコープは狭いほどよい」という方針でプログラムすると、逆に保守性も可読性も悪いプログラムができあがることがけっこうある。 中途半端に優秀なプログラマが「正しいプログラミングテクニック」だと妄信しがちな3つポイント - 分裂勘違い君劇場 by ふろむだ 変数とオブジェクトが持つ属性やメソッドを混同してません? いわゆる「変数」のスコープが問題になるのは、一言では「依存性が複雑になるため」。 そのオブジェクトだったりメモリ領域だったりの内容は、その変数を使う時点でどのような状態を持つかっていうのは、その処理の前に実行されたどれかの処理結果に依存する。が、実際にその変数の内容を定義したり更新したりしたのはどの処理かは、もう闇の中。だから、グローバル領域の変数に対して、使う直前にわざわざ初期化して

    「『変数のスコープは狭いほど良い』という迷信」という迷信 - @katzchang.contexts
    takeshiketa
    takeshiketa 2008/10/27
    変数のスコープって限定的な言い方してるのに範囲を広げて議論してないかな。議論の範囲がデータの使い回しの範囲になっていてドメインとかライブラリとかフレームワークとかそういう単位で考えるべき事になってる
  • 1