2016-05-16 10 views
-1

私自身のソフトウェアを作成するのは初めてです。私は学生ですので、私は段階的にレイアウトされたものを作成しましたが、実際には自分自身で処理を行ったことはありません。プログラムのメインメソッドにどれくらいのコードを入れるべきですか?

私は優れた設計技術を実装しようとしていて、OOPをうまく活用しようとしていましたが、私のコードはあまりよく書かれていないと心配しています。

私の主な心配は主な方法です。私がチャットプログラムを作っているところでは、メインメソッドを格納するクラスChatClientを作成しました。しかし、私が実際にメインメソッドに入れなければならないコードはすべて、JFrameクラスを呼び出して、プログラムのインターフェースを表示するようにしていることがわかりました。ここから、プログラムの全機能は他のクラスで処理されます。

プログラムをメインの方法で実行する方法をさらに制御する必要がありますか?それとも、メインメソッドのための単一の行を持つことは実際に罰金ですか?

+6

この短い主な方法は完全に正常です。 jframeがインスタンス化されると、残りのプログラムフローはイベントドリブンです。 –

+0

私はこれが個人的な好み/意見であり、あなたが良いOOP原則に従っているかどうかを実際に指示するものではないと思います。 **多型、継承、カプセル化などの原則を理解することに焦点を当てる必要があります**プログラムの残りの部分だけでなく、あなたの主要な方法をレイアウトする方法は、これらの原則の優れた実装に基づいている必要があります。 –

+0

通常、メインメソッドには1行または2行が含まれます。コマンドライン引数(args)の解釈が必要な場合は、mainメソッドから実行される静的メソッドでそれを行う必要があります。 –

答えて

1

メインメソッドとその周辺クラスは、プログラムを開始するためのエントリポイントとしてのみ使用するのが理想的です。

あなたが開発する各クラスは、将来的には他のプログラムやプロジェクトで実際に役立つ可能性があるため、独自の責任を負う必要があります。あなたは常にカップリングが低く、凝集力の高いプロジェクトを目標にしてください(ここではもっと詳しく:https://stackoverflow.com/a/14000957/6341202)。

したがって、元の質問に戻って、メインメソッドのコード行だけでJFrameを初期化するのはまったく問題ありません。

0

main()メソッドのすべてのコードを詰め込むのではなく、疎結合でコードを記述し、既存のコードに必要な変更が可能な場合、つまり、 メンテナンス性

0

メインメソッドで1行のコードを持つことは、良いOOP概念を使用して他のクラスやメソッドで作業フローを記述していれば良いことです。

0

メインの方法では、誰がプログラムを実行しようとしているか他のメソッドを呼び出すことをお勧めします。

public static void main(String[] args){ 
    Classname program = new Classname(); 
    program.start(); 
} 

public program(){ 
    //The code that you want in the main 
} 
0

main方法は、あなたが意味のある名前を割り当てることができないための唯一の方法です。したがって、予期しないことはしないでください。

理想的には、関数呼び出しは1つだけです。例外処理といくつかのロギング(プログラムのバージョン、ビルドの日付)も良いはずです。しかしそれ以上はありません。

関連する問題