Common requirements:  (not provided by user )

Submission format
    
       floppy disk (or CD)
       access window is at bottom of disk
       print label:  Name, CIS501, homework title(s)
       folder structure:
             homework_N_folder:
                   readme.txt  << if any
                   bat file
                   src  folder
                       package folder
                            *.java
                   class folder
                       package folder
                            *.class
                   data folder
                            *.jpg
                            *.txt   <<< serialized files ,  help_text 

GUI features:

 

          informative title on the frame bar

          frame centered on screen

          splash frame for slow jbInit()     <<< later

standard menu structure

common color scheme

inactive controls are dimmed

 

          about frame with program & author info

& author picture (1.5 x 1.0 in)

          pop-up frames overlap the main frame

          info frame with verticle scollable text  <<  should use  some  help tool


           meaningful  error messages to user

                            

          selection input uses selection vs data entry

          date input uses calendar bean

          file selection via standard fileChooser

          slow progress operations show a progress bar 

 

Code style:

         

          files signed with name, date, course

          text files read as single block

          persistent data is serialized  (to  *.txt )
         
informative names for classes, methods, beans:

                   someApp

                   someFrame

                   collections as “AllUsers”

          anonymous event-handler methods in the containing frame

                   (Frame NOT implement ActionListener )

 

Class architecture:

 

          App-GUI-model-[controller]  architecture 

          collections use standard collections (java.util.* )

          collections wrapped in type-specific adaptor class

                   (collections NOT bound as list, array, etc.)

 

Run behavior:


         
complete system exit

          load / save  for persistent data

          file names related to the project are relative to the project folder
               (not absolute paths as C:/stuff  or  U:/stuff )          

 


notes:

 

       Jframe   -> jPanel  -> jScrollPane -> jTextArea

 

       jFrame -> jPanel -> jLable -> ImageIcon ->  image.gif