2017-08-15 15 views
-3

私は、自分の最初の小さなゲームをPythonで作っている自己教えプログラマーで、「グローバル」変数とクラスを持つ方法を知りたいと思っています。だから私はpygameを使用しています、私の基本的なプログラマーの構造は、私は__ name __ == "__ main __" thingyを持っていて、それから、私のProgramConstants(もっと後で)クラスをコアとしてインスタンス化し、main()を呼び出します。メインではプログラム初期化関数を呼び出し、delta time update fps tickerで基本的な処理と表示関数とキーボードマネージャー関数の呼び出しで構成されるゲームループに入ります。今、私のProgramConstantsクラスについては...プログラムの先頭に定義されたクラスで、大規模なinit関数を持っています。すべてのグローバル変数とクラスがインスタンス化され、初期化されています。なぜこれをしたのですか?各関数では、グローバルではなく最初から「グローバルコア」と呼ばれる短く、1000の異なる変数を呼び出します。 (コアはPro.Constaのインスタンスの名前にちょうどbtwです)今、私は見て、それは明らかに定数を除いて一般的に "global"を使用するのが妥当でないと分かりませんでした。 (皮肉なことに、Pr.Constクラスのほとんどのものは定数ではありません)ので、私はどのように多くの変数を持っていますか?私は自分のinit関数でそれらを宣言し、それらを前後にすべての私の関数を介して再利用性が少ないか、または私はちょうどメインにパックするかを解析するか?きちんとしたやり方は?私はjsのプログラマーである兄に尋ねました。彼は設定ファイルを持っていると言いましたが、それはPythonでは遅くて悪いですね。誰かが大規模なコード内のすべての変数を整理する最善の方法を教えてくれたら、読んで、書き込んだり、読んで、どこかにすべてを単に格納しておく必要があります。おかげで、すでに事前にグローバル変数のためのPythonのベストプラクティス

PS:ゲームが終了イマイチまだあなたには、いくつかのクラスが何をすべきか迷っているならば...

編集:ここにコメントを受けて、私はこのプロジェクトで作られたGitのハブの担当者へのリンクです:https://youtu.be/uWvb3QzA48c

+2

コードサンプルの価値が1000ワード – PRMoureu

+0

@PRMoureu私はいくつかのコードをリンクする必要がありますか? – MrClottom

+0

はいいいえ、あなたの質問にいくつかのコードを埋め込む必要があります – PRMoureu

答えて

-2

https://github.com/DrClottom/Egg-On-Your-Face.gitは、おかげでとにかくここVIDへのリンクです、

がうまく組織実証したビデオを持っているのpythonでゲーム開発のためのチュートリアルシリーズを発見(gitのハブプロジェクトの前にそれが動作を期待を共有することはありません)推奨されるPythonコードの書式については、https://www.python.org/dev/peps/pep-0008/を参照してください。可能であれば、グローバル変数とオブジェクトを持つことよりもオブジェクト指向を利用することが最善です。

+0

PEP8はこれとは関係ありません。それは*スタイルガイド*です。 –

関連する問題