2011-01-03 9 views
0

私はこのアプリケーションをMVCスタイルに変換しようとしています。 これは私の元のソースです:プログラミング中にMVCを考えて助けてください

以下

http://pastebin.com/xELEt0yi

は私の問題MVC

http://pastebin.com/B21cskhA

にソース上に作成するための私の試みです:

  • 私はどのように理解していません別のクラス から電話するモデル、ビューまたはコントロールを呼び出すために、各クラスの下に "_ init _"を作成しようとしました。残念ながら 私は、このエラーに遭遇した: はRuntimeError:最大再帰深度が
  • を超えて私は多分辞書に私 データを回すことについて考えたが、私は正しくそれを作成していた場合、私は は知りません。 上記の試行されたMVCソースには、私も参照している辞書 があります。
  • 最後のものは私の意見です 2つの方法があります。 "y"が の場合、 "n"が何か他のことをする場合は何か。 は、どのように私はそれらからの切り替え私の コントローラをさせる行くのです、 が、それはこのようなものになるだろう: http://pastebin.com/Z9pp1L3g

誰かが私のMVCのソースを見て、このタスクを完了に私を導くことができます。

おかげMVCを使用して

+1

このような単純なコードでMVCを使用する必要はありません。不必要にコードを複雑にします。 –

+0

質問は少し広がっているようです。通常、include型キーワードを使用して別のクラスから呼び出します。ソースは、メソッドで呼び出すファイルからデータを知る必要があります。 – JohnMerlino

+0

これは事実ですが、MVC変換前の私のアプリケーションは完璧に動作します。全く問題はありません。私は、OOPスタイルとしてプログラムを書く心のセットを手に入れようとしています。 これはMVCスタイルのソースとしてこれを完成させるのに近いですが、私は上記の問題をどのように完了するか分かりません。 –

答えて

0

マイアプリケーション:

http://pastebin.com/0CiTqiwu

私は、このタスクを完了でかなり近かったです。

class Controller: 
    def __init__(self): 
     self.view = View() 
    def main(self): 
     self.view.filename() 
     self.view.tcpdump() 

私は同僚の助けを借りてそれにそれを変更した後、スクリプトが完璧に動作するように判明:私は

class Controller: 
    def __init__(self): 
     self.model = Model() 
     self.view = View() 
    def main(self): 
     self.model.filename() 
     self.view.tcpdump() 

の代わりとしてそれを持っていました。操作は、単純なtcpdumpスクリプトをMVCスタイル、成功に変える!

ありがとうございました〜

関連する問題