オブジェクト指向プログラミングは、私がプログラミングで見た中で最高のアイデアです。しかし、それはすべての場合において最良のことではありません。その要点を見るには少しのプログラミング経験が必要であり、多くの人々はそうでないときにOOPを行うと主張しています。
「構造化プログラミング」を調べることができれば、おそらくすぐに役立つ何かが見つかるでしょう。(必ず古い構造化プログラミングについて読んでください。古い用語はしばしば新しい、より洗練された意味を持ち、あなたはまだ何も凝ったものを必要としません。)これはプログラムをサブルーチンに分解することに関するかなり単純な概念です。オブジェクトに分割します。メインプログラムは、サブルーチン(Javaの「メソッド」)を呼び出して作業を行う短いルーチンです。各サブルーチンは、パラメーターによって何が伝えられているかだけを知っています。(これらのパラメーターの1つはファイル名である可能性があるため、少しごまかすことができます。)サブルーチン/メソッドの見出しを見ると、その機能の概要がわかります。 ほとんど一目でします。
その後、すべてのサブルーチンは、メソッドを呼び出さずに数行のコードでジョブが実行されるまで、同様に分解されます。いくつかのメソッドを呼び出すメインプログラム。それぞれがいくつかのメソッドを呼び出し、それぞれが...作業を行う小さなシンプルなメソッドまで。このようにして、非常に大きなプログラム(または小さなプログラム)の任意の部分を見て、その機能をすばやく理解できます。
Javaは、オブジェクト指向コードを書いている人のために特別に設計されています。しかし、最も強力なオブジェクト指向プログラムでも、構造化されたプログラミングを使用しているため、どの言語でもいつでも破壊できます。(私はオブジェクト指向をプレーンCで行いました。)したがって、JavaでSPなどを実行できます。クラスを忘れて、小さな管理可能なものに分解できる大きなメソッドに集中してください。SPを使用すると、コードを再利用したり、DRY(グーグル、ただし「自分を繰り返さない」という意味)の原則を利用したりすることができます。
「クラス」を導入せずにコードを複数の部分に分割する理由と方法を説明したことを願っています。それらは素晴らしいアイデアであり、ゲームにとっては単なるものであり、JavaはOOPにとって素晴らしい言語です。しかし、あなたがしていることをしている理由を知る方が良いです。OOPが意味を持ち始めるまで、そのままにしておきます。