タグ

DbCに関するatsushifxのブックマーク (3)

  • 単体テストを書かない技術 #phpcon_odawara

    PHPカンファレンス小田原2024での発表資料です https://fortee.jp/phpconodawara-2024/proposal/4d39c7ef-058c-4648-b1d7-5510497e0d81

    単体テストを書かない技術 #phpcon_odawara
    atsushifx
    atsushifx 2024/04/14
    話としては、型などによる表明で入力と出力が明らかになればユニットテストをしなくても大丈夫ということ。そして、その前提となるのが設計での適切なドメイン、パターン、型などの適用になるってことかな
  • Go言語がダメな理由 | POSTD

    私はGo言語が気に入っていますし、多くの場面で使用します。現にこのブログもGoで書いています。Goは便利な言語ですが、優れた言語とは言えません。つまり、悪くはないけれど、十分ではないということです。 満足できない言語を使用する際は注意が必要です。注意を怠ると、その言語を次の20年間使い続ける羽目になるかもしれないからです。 私のGoに対する主な不満を文にまとめました。既に何度も指摘されていることも含まれていますが、中にはこれまでほとんど話題になっていない指摘もあります。 これから列挙する全ての課題には既に解決策があることを示すため、私が優良な言語と考えるRustやHaskellと比較して説明します。 汎用プログラミング 課題 誰でもさまざまな事柄に幅広く対応できるコードを記述したいと考えます。例えば数のリストの合計を求めるために定義した関数が、小数、整数、またその他の合計を求められるもの

    Go言語がダメな理由 | POSTD
    atsushifx
    atsushifx 2014/07/28
    Go言語が十分にモダンな言語ではないと言うこと。Goは使いやすくするために型制約や不変性といった関数型言語いいところを取り入れてない。将来性という意味ではそこが弱点になり得る
  • パラメータの正当性検査とユニットテストのカバレッジ | DevelopersIO

    渡辺です。 最近はユニットテストの導入方法などに関するエントリーが多かったので、今回は実用的な小ネタとして、メソッドにおけるパラメータの正当性検査とユニットテストについて紹介したいと思います。 パラメータの正当性検査 はじめにパラメータの正当性検査について復習しましょう。Javaプログラマであれば読んでないことが許されないEffective Java(第2版P.175、ただし絶版)には次のように記述されています。 ほとんどのメソッドとコンストラクタは、パラメータとして渡される値に関して何らかの制約を持っています。たとえば、インデックス値が負であってはいけないとか、オブジェクト参照がnullであってはいけないというのが普通です。このような制約は明確に文書化すべきであり、メソッド体の初めに検査することで制約を強制すべきです。これは、エラーが発生したらできるだけ速やかにエラーを検出するようにす

    パラメータの正当性検査とユニットテストのカバレッジ | DevelopersIO
    atsushifx
    atsushifx 2013/11/15
    ここらへんはテスティングの基本なので教科書を読むべし。とはいえテスト項目が多くなってチェックしきれなく原因なのでうまく減らしたい。言語レベルでDbCができると楽だろうとは思う
  • 1