ナナエフ

同人ゲームサークル『7-FIELD』制作ブログ  -ゲーム制作やイベント参加などの活動情報 + 雑記-

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

プログラムの動作速度は、単純化した処理の繰り返しで比較 ~ C#言語における 「if」「switch」

tetsuwoです。 【 twitter

ソフト開発でプログラミングをするならば、ほぼ間違いなく実施するであろう条件分岐。

C# 言語の処理分岐を、if文・switch文で速度比較した結果がでていたのでメモ。

  【 [C#] 「世界一IQの低いソースコードはこれ。」のような if 文を書いた場合の速度を測ってみた 】 - プログラミング C# - 翔ソフトウェア (Sho's)
 

 
参考元記事の処理の場合は、switchのが高速!あくまで参考元の場合は!

「世界一IQの低いソースコードはこれ。」 という内容のツイートに触発されて試したもののようです。

処理の概要は以下の通り。

  ① 255個の int型定数を用意
  
  ② 単純な比較を行うメソッドを用意
  
      引数 : int
    
      戻り値 : string (①の定数名)
    
      処理 : 渡された int値に応じて①の定数と比較し、一致した定数名を返す
    
      ※定数判定を if ~ else if で実施するパターンと、switch ~ case で実施するパターンを用意
  
  ③ ②のメソッドを繰り返し呼び出すループを255周実行(周回数を引数とする)
  
  ④ ③にかかる処理時間を計測



ソースコードは、処理が単純な割に定義分がズラっと並び長くなるのでリンク先を参照。

④の結果、②のメソッドを if ~ else if で判定した場合に比べ switch ~ case で判定した時の方が

約3倍 高速で実行される、といったものになりました。



もちろん処理内容どころか、繰り返し回数が変わるだけで結果は変わってくることもある。

「当然これがいい」と思っている命令を、こういった単純な処理で比較し

メソッド1つ、メンバの型1つから、より良いものを選ぶ事が大事ですね・・・と改めて思いましたとさ。



結局のところ、例によって例のごとく「固定観念コンチクショウ」という訳でした。
 
 
 
宣伝

2031年 秋、北守新都市。生活にAR技術が根付いたこの街で

"傷"を抱えた7人がそれぞれに見出す"真実"とは。


ad4_introduction01.png

当サークル第2弾作品「薄鈍アドベント」DL販売中です。

体験版も公開しておりますので、目に止まりましたらお試しあれ。
スポンサーサイト
  1. 2014/08/03(日) 21:00:00|
  2. 制作
  3. | トラックバック:0

トラックバック

トラックバック URL
http://7fblog.blog.fc2.com/tb.php/435-882b2bc8
この記事にトラックバックする(FC2ブログユーザー)

カウンター

プロフィール

akinasi, tetsuwo

Author:akinasi, tetsuwo
FC2ブログへようこそ!

検索フォーム

カレンダー

04 | 2017/05 | 06
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -

最新記事

最新コメント

最新トラックバック

月別アーカイブ

カテゴリ

告知 (63)
制作 (88)
ソフト紹介 (19)
素材紹介 (10)
言外 (7)
雑記 (361)
ナナエ (29)

リンク

このブログをリンクに追加する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。