『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次
CoCで重要なのは、まず規約を良く練る事です。
矛盾した規約に従うことほど辛いものはありません。
もう一つ、作業を開始しやすいよう、テンプレートを作ることも大切です。ドキュメントを検索する手間は少ない方が良いに決まっています。新規ユーザーの敷居を下げるのが重要です。
#adapter_scaffold.py from __future__ import with_statement import sys import os protocol = sys.argv[1] class_name = protocol.capitalize() + "Adapter" file_name = protocol.lower() + "_adapter.py" scaffolding = u'''\ #encoding:utf-8 #%(file_name)s class %(class_name)s: """Adapter class to send message for %(protocol)s""" def send_message(message): """ """ #メッセージを送信するコード if __name__ == "__main__": pass ''' % { "file_name": file_name, "class_name": class_name, "protocol": protocol, } with open(os.path.join("adapter", file_name), "w") as f: f.write(scaffolding.encode("utf-8"))
adapter_scaffold.py spam
でspam用のアダプタが自動生成されます。