タグ

Tipsとprogrammingに関するt_43zのブックマーク (5)

  • コードの最低品質を底上げする為のルール的なアレ。 - 設計と実装の狭間で。

    何となくまぁ、話題になったので、とりあえず書いておくます。 ルールなのだけど、常に例外的状況は存在しるます。 その例外的状況を適切に把握しているのであれば、どの様にコード書いても良いです。 自分の中で一定のルールを持ってコーディングすると、 そもそも自分がミスをし易いパターンを把握し易いのと、 自分のコードの最低品質がある程度担保されるので、良いかな…と思うマス。 要は、みんな俺様ルールを作って、 それをある程度意識しながらコーディングすれば良いと思うよ、って話。 考え方の基。 自分の能力が最も発揮されない状況を想定する事。 疲れている、やる気ない、気になる事が他にある、等々… 頭を使う時間は計測するのが難しいが、タイピングしている時間は、ある程度簡単に計測可能である事。 「考えている時間」は、貴重なリソースだけど、見積もりが難しいのだよねぇ…。すごく。 この位の時間考えれば答えが出る筈

    コードの最低品質を底上げする為のルール的なアレ。 - 設計と実装の狭間で。
  • WritingTestableCode - テストできるコードの書きかた

    WritingTestableCode - テストできるコードの書きかた 目次 この文書について まずいのその1: コンストラクタがやりすぎ まずいのその2: 深い仲になってしまっている まずいのその3: 脆いグローバルな状態とかシングルトンとか まずいのその4: クラスがやりすぎ テストできるコードの書きかた この文書について "Guide: Writing Testable Code" の日語訳です http://misko.hevery.com/code-reviewers-guide/ 推敲歓迎: 誤訳, タイポ, 訳語の不統一, そのほか... TODO: 各 Flaw のリンク先も訳す Misko Hevery コードをベストな状態に保つために、 我々は Google でソフトウェアエンジニアに以下のようなをガイドを定期的に送っていた。このガイドを共有できてうれしいね。 この

  • 10を-3で割った余りは? - きしだのHatena

    ここから発展してた話 http://twitter.com/tonocchi/statuses/327212102 IEEE754の定義だと、1になるようです Javaだとこれらは1になります。 System.out.println(10 % (-3)); System.out.println(Math.IEEEremainder(10, -3)); PerlRubyだと-2になるようです。 こまったときのGoogle先生は?

    10を-3で割った余りは? - きしだのHatena
    t_43z
    t_43z 2007/10/15
    10%(-1)の結果
  • for ループでの配列長の括り出しは JavaScript でも有効か - WebOS Goodies

    「今週の話題」でもご紹介しましたが、先週、以下の記事が話題になっていました。 ActionScript3 最適化・高速化Tips 簡易まとめ ActionScript3 で効率の良いコードを書くための Tips がまとめられていて、私も興味深く読ませていただきました。その中に for ループで配列を操作する場合には配列長をあらかじめローカル変数に代入しておくと 147% 高速化されるという項目があり、このテクニックは JavaScript でも適用すべきである、となっていました。 実は私もけっこう平気で Array.length を書いてしまうほうなので(C/C++ あがりの風上にも置けませんね ^^;)、もし事実であれば今後は注意しなくてはいけません。しかし、実際のところ ActionScript と JavaScript では実行時の仕組みがだいぶ異なるはずで、 ActionScrip

    t_43z
    t_43z 2007/06/25
    Javaで試してみた⇒この2つは有意差は見られなかったが、for (int i:array){}だと明らかに遅くなってた。
  • Concepts + Principles - プログラミングの原則 - Concepts + Principles - Top

    ここはプログラミングの原則を集める Wiki です。巨人の肩に乗って、ふつうの人がよいプログラムを書くための指針を集めたいなと思ってます。 目次 よいデザインのための Concepts + Principles DRY (Don'tRepeatYourself) 名前重要 直交性 トラッシュではなくクラッシュ DuckTyping よいルーチンを書く 凝集性 結合性 契約による設計 (DesignByContract) ルーチンを作る正当な理由 よいモジュールを書く 適切なモジュール性を確保するために守らなければならない5つの原則 開放/閉鎖原則 (OpenClosedPrinciple) よいアプローチのための Concepts + Principles 曳光弾 可逆性

  • 1