Ognacの雑感

木漏れ日々

目次

Blog 利用状況

書庫

ギャラリ

見えない箇所での無作法は許されるのか?

 許さないと言っても,不可避なので,不毛の論議なのだが。

納品アプリのバッチ処理が異様に遅いので調べてみた。
同程度の件数の他の処理に比べて, 10倍近いコスト高。
 個々につぶしていくとisDateが遅い.
Web上でも,論議あったようで, Parse(値)で,Parse Errorの結果を戻す仕様のようだ。
   
  try catch で catch部分で falseを戻しているのだろう。
予想できる異常値は,正常処理で排除すべきだと考えている。
    エラーを期待するロジックは如何なものだろうか。ognac的には不満。
 他にも,これに類するメソッドってあるのだろうな....ご存知でしょうか?。

 

 

投稿日時 : 2006年7月17日 16:41

Feedback

# re: 見えない箇所での無作法は許されるのか? 2006/07/20 13:36 じゃんぬ

IsDate に関しては有名ですね...
私は、1.1 までは自作のメソッドを使っております。
http://jeanne.wankuma.com/tips/validation/isdate.html

2.0 からは値型すべてに TryParse メソッドが使えるようになり、
その型に対しての有効性が検証できるので大好きです。
System.DateTime.TryParse...

# re: 見えない箇所での無作法は許されるのか? 2006/07/20 20:07 ognac

2.0環境がないので,未確認ですが, tryParse は並の速さなんでしょうか?

# re: VBで利用するIsDateって結構大胆なの!? 2006/10/17 22:35 ゆきのゆうきがでるブログ

re: VBで利用するIsDateって結構大胆なの!?

# re: 見えない箇所での無作法は許されるのか? 2006/10/17 23:35 じゃんぬ

TryParse メソッドは例外のインスタンスを生成しないので、早いですよ。

Try
  System.DateTime.Parse(obj)
  Return True
Catch
  Return False
End Try

とで比較してみてください。

# re: 見えない箇所での無作法は許されるのか? 2006/10/18 0:52 ognac

じゃんぬ さんありがとうございます。
確かに早い!

タイトル
名前
Url
コメント