Differences

This shows you the differences between two versions of the page.

py:lesson3_func [2010/09/28 23:20]
yamamoto
py:lesson3_func [2012/10/25 22:23] (current)
Line 127: Line 127:
    my_key = year_month + "," + my_triplet[1]     my_key = year_month + "," + my_triplet[1]
    taishaJikoku = my_triplet[2]     taishaJikoku = my_triplet[2]
-    zangyo  = cal_zangyo_minute("17:20", taishaJikoku)    #<- ここらへんがシンプル化+    zangyo  = cal_zangyo_minutes("17:20", taishaJikoku)    #<- ここらへんがシンプル化
    ruikeibo.setdefault(my_key, 0)     ruikeibo.setdefault(my_key, 0)
    ruikeibo[ my_key ] += zangyo     ruikeibo[ my_key ] += zangyo
Line 135: Line 135:
回答が短くなった…とは言いがたいですが、cal_zangyo_minutes関数を一生懸命つくっておいたおかげで、ファイルを読み込みながら処理する部分はちょっとシンプルに直すことができました。 回答が短くなった…とは言いがたいですが、cal_zangyo_minutes関数を一生懸命つくっておいたおかげで、ファイルを読み込みながら処理する部分はちょっとシンプルに直すことができました。
 +
 +さらに、読みやすくなったとも感じませんか。関数の名前を cal_zangyo_minutes としましたが、ここを見て、「ああ、残業時間を、きっと分単位で出すんだね」と理解させることができるため、あとでプログラムを直したいときに容易になるわけです。関数の名前をつけるときは、このように、あとで理解をしやすくする名前にするよう強く努力すべきです。(あ、cal ってのは、calicurate(算出する)のつもりでつけました。あんまり分かりやすくもなかったかも。でも長すぎる関数名もアレですしねえ…)
関数を使いながら課題を解く、というのはこんな感じのものです。 関数を使いながら課題を解く、というのはこんな感じのものです。
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki