WYSIWYGへまたはWYSIWYGではない
これは、最良の場合には議論の余地のある質問です。
レイアウトマネージャーの使用方法と複合レイアウトの処理方法に関する重要な基本事項を教えてくれるので、すべてのジュニア開発者にハンドコーディングUIを開始することをお勧めします。
変更するたびにレイアウトを確認する必要があるため、これには時間がかかる傾向があります。
私は一般的な作業のほとんどでNetbeansのフォームエディタを個人的に使用していますが、UIを微調整します
構造
責任の境界について考え、再利用し、戦略を減らします。
あなたが望まないのは、すべてを行う巨大なマスタークラスです。維持と更新は難しいでしょう(私は毎日この恐怖と一緒に暮らしています)。
代わりに、責任の明確な領域を特定し、ゲッターとセッターまたはモデルを使用して、アプリケーション内でデータを移動します。コードを切り離すことができるほど、更新と変更が容易になります。
仕事のように識別し、可能な場合はインターフェースおよび抽象クラスとしてモデル化します。基本的に、コードの対処について考え始めるところは、おそらく設計がオフになっていることを示す良い兆候であり、重複をカバーするために抽象クラスの実装を検討する必要があります。
APIを利用して、Action
一般的に使用される概念を複製します(コピーアンドペーストはその一例です。メニュー項目、可能なツールバー項目、場合によってはポップアップ項目も必要です。これらはすべて同じAction
クラスで処理できます)。
データをビューから分離します。前にも言ったように、モデルを利用してください。データは、データがどのように収集または変更されるかを気にする必要はなく、それが可能であるということだけを気にする必要があります。同様に、ビューはデータの管理方法を気にする必要はなく、データの管理方法だけを気にする必要があります。
可能であれば、アプリケーションの個別の領域間のインターフェースを定義します。このようにして、アプリケーションをさらに切り離すことができ、どの部分も1つの実装に依存することはありません(hello my world:P)
コンポーネント階層を掘り下げてそのフィールドにアクセスしようとしないでください。コードを変更する必要がある場合は、悪夢が発生します。