Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [JAVA] Netbeans e main gigantesco

    Salve,

    forse la mia domanda risulterà un po banale ma come si può organizzare un main (sostanzialmente tutto codice per la gestione della GUI) in modo da renderlo molto più leggibile e soprattuto più "snello" (come numero di righe di codice)?

    Ho usato netbeans e mi ha generato un main con più di 2000 righe di codice!!!

    Molte grazie

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [JAVA] Netbeans e main gigantesco

    Originariamente inviato da hurricane86
    forse la mia domanda risulterà un po banale ma come si può organizzare un main (sostanzialmente tutto codice per la gestione della GUI) in modo da renderlo molto più leggibile e soprattuto più "snello" (come numero di righe di codice)?
    Io il main() più piccolo che in genere faccio è una cosa di questo tipo:

    codice:
    public class MainApplication {
        public static void main(String[] args) {
            SwingUtilities.invokeLater(new Runnable() {
                public void run() {
                    ApplicationFrame f = new ApplicationFrame();
                    f.setVisible(true);
                }
            });
        }
    }
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3

    Re: Re: [JAVA] Netbeans e main gigantesco

    Originariamente inviato da andbin
    Io il main() più piccolo che in genere faccio è una cosa di questo tipo:

    codice:
    public class MainApplication {
        public static void main(String[] args) {
            SwingUtilities.invokeLater(new Runnable() {
                public void run() {
                    ApplicationFrame f = new ApplicationFrame();
                    f.setVisible(true);
                }
            });
        }
    }
    Sposterei il problema su

    Codice PHP:
    ApplicationFrame f = new ApplicationFrame(); 

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Re: Re: [JAVA] Netbeans e main gigantesco

    Originariamente inviato da hurricane86
    Sposterei il problema su

    Codice PHP:
    ApplicationFrame f = new ApplicationFrame(); 
    Quello che ti ho postato è proprio un pezzetto di una mia applicazione che ho sviluppato di recente. Vuoi vedere come ho fatto ApplicationFrame??? A parte commenti, package, import, la classe è così:

    codice:
    public class ApplicationFrame extends JFrame {
        private MainPanel mainPanel;
    
        public ApplicationFrame() {
            super(ApplicationInfo.getTitle());
    
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setSize(600, 500);
    
            mainPanel = new MainPanel();
    
            setJMenuBar(mainPanel.getMenuBar());
    
            Container contentPane = getContentPane();
    
            contentPane.add(mainPanel);
        }
    }
    Quale è il succo del discorso??? Spezzare ... separare ... incapsulare il codice in tante piccole classi.

    Tu a questo punto potresti dirmi: "Sposterei il problema su mainPanel = new MainPanel();". Perfetto. Ma ti posso dire che il mio MainPanel, compresi commenti e tutto il resto, è meno di 200 righe (anzi le ridurrò ancora perché voglio poi separare meglio certe cose che al momento ho messo lì dentro). Perché fa uso di altri pannelli e componenti che ho definito in svariate altre classi separate.

    Io ho fatto un MainPanel perché la mia applicazione può funzionare sia come applicazione "desktop" che come applet. Quindi tutta la interfaccia è comunque racchiusa dentro MainPanel, che posso semplicemente (come vedi) inserire con poche righe sia dentro un JFrame che dentro un JApplet (la classe della mia MainApplet è meno di 100 righe).

    Questo fatto di spezzare, separare e incapsulare il codice in più classi non te lo fa per "magia" un IDE ..... lo devi fare tu, studiando bene come si compone la tua interfaccia utente, cercando di organizzare le classi in modo che ad esempio rappresentino pannelli che si possono inserire dentro altri pannelli e cercando di individuare cosa può essere separato e ha senso che sia a parte.
    E questo in sostanza vuol dire che il codice non devi fartelo fare da un IDE con i suoi tools "visuali" ma devi scriverlo tu a mano.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    ok il discorso mi è tutto chiaro. Preciso il fatto che ho usato un IDE per la realizzazione della GUI in primis per accellerare i tempi e dedicarmi al "core" dell'applicazione e in seconda battuta perchè è divenuta (molto) complessa (in riferimento al numero di componenti utilizzati) e per lo più multi-lingua. In sostanza non sarei mai giunto ad una soluzione così apprezzabile senza l'aiuto di un tool "visuale".

    Grazie per la risposta, saluti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.