>>298
モジュールレベルの可視性とクラスレベルの可視性を使い分ける

クラスの外部からアクセスする前提のプロパティやメソッドならアンダースコアは付けない
利用者側コードでDriverを生成させる必然性はなさそうなのでフレームワーク側でDriverを生成してControllerをinitして返すAPIを用意する
__init__.pyでモジュールのユーザーに公開すべき内部モジュールを選別する
公開モジュールで非公開モジュールをインポートするときはアンダースコアを付ける