SlideShare una empresa de Scribd logo
1 de 25
GUI Application
Development
Guidelines
BY LOUIS WAYNE
GUI

Graphical User Interface
WHAT IS GUI?
• A graphical user interface (GUI) is a human-computer interface (i.e., a
way for humans to interact with computers) that uses windows, icons
and menus and which can be manipulated by a mouse and to some
extent using keyboard.
• A major advantage of GUIs is that they make computer operation
easier to learn and use. For example, it is much easier for a new user
to move a file from one directory to another by dragging its icon with
the mouse than by having to remember and type many commands to
accomplish the same task.
GUI Programming
• Uses a simplified approach to programming.
• Most of the components are predefined in a generic way.
• Can be incorporated according to the needs or requirements of
the application.
• It provides a very comfortable feel to the programmer to
develop applications without getting into complicated and
cumbersome logic and commands.
• Most of the GUI tools are developed
To provide simplified approach to programming.
To provide enormous inbuilt functionality to the programmer.
Application Development
Guidelines
There are 21 application
development guidelines
1. Understand the need of the application
before starting the development.
Eg: Fahrenheit Conversion Application
Why we need it, its advantages?
•
•

For the easy conversion of values without doing it
manually.
Time saving, any one can access the application and use
it, user friendly etc.
2. Find out all possible inputs, which are
required to produce the desired result
or results.
E.g. Fahrenheit Conversion Application
•
•

Both decimal values as well as integer values as input.
Allow only numeric values as input
3.

Make sure that the user provides appropriate
information with minimum efforts to avoid
ambiguity in data.
•
•
•

Appropriately deciding on the various input components
Maximize use of radio button, checkbox, combo box, and list.
Wherever possible avoid use of text field and text area for accepting
inputs from the user to reduce ambiguity.
E.g. While inputting Marital status in a form
using TEXT FIELD (values are given according to user)

Restrict the user by using COMBOBOX:
(Reduce the no: of options to the user)
4.

Radio Button should be used wherever one of the option out of
limited number of options are required to be taken from the user.
For example,

For accepting gender (Male or Female)

For marital status (Single or Married)

For Membership type(Monthly , Annual, Life Time)
5. Checkbox should be used wherever multiple
options are required to be selected from a limited number of known set
of options.
For example,

For accepting multiple hobbies (Swimming, Singing,
Dancing, Debating)
6.

Combo box should be used wherever only one of the option from a
large number of known set of options is required to be taken from
the user
For example,

For selecting marital status
7.

List should be used wherever multiple options are required to be
selected from a large number of known set of options.
For example,

For selecting activities
List and Combo box
8.
It is advisable to use List and Combo box when there are too
many options as they help save space and are less cumbersome to
design as compared to radio button and checkbox.

9.
Options in a list or a combo box may be
displayed in alphabetical order so that it is easier
for the user to locate the appropriate option or
may be displayed according to the probability of
choice. The most probable answer should be at
the top.
For example,
To take input of name of a state
• The names should be displayed according to alphabetical order.

To take input of employee designation
• The highest level should be put at last and the lowest level should be
put at top.

The explanation for this is since there are more
employees at lower levels as compared to higher
levels, the probability of choosing the lower level
is more.
10.
It is advisable to use appropriate labels for each input and output
options to help the user to correctly interpret them.
For example,

User has to input user id and password




11.
While writing the code do not use variable names as A, B, C etc.
Instead use meaningful names and follow naming conventions. All the
variables and constants must be named according to the naming
conventions. They make the code easier to read, understand and
maintain.
For example,

A variable storing total marks – Total
A variable holding cost price - CP
12. Ensure Clarity of expressions. All the expressions should be easy to
understand for the user. There should not be a compromise to reduce
the statements by loosing their clarity.
For example,

double farenconv;
farenconv=9/5*(jTextfeild1.getText()+32);
This can be rewritten as:

double farenconv, Tc;
Tc=Integer.parseInt(jTextfeild1.getText());
farenconv=(9/5)*(Tc+32);
Control Structures
13.
The conditional construct if..else should be preferred when there
are very few alternative execution paths to choose from and also when
decisions are to be made based on ranges of values or conditions. For
example, to show gender
based title etc.
For example,
Control Structures
13. The conditional construct if..else should be preferred when there are very
few alternative execution paths to choose from and also when decisions are
to be made based on ranges of values or conditions.
For example, to show gender based title etc.
14. The switch construct should be used when there are too many alternative
execution paths and decisions is based only on a single integer or countable
value.
For example, to show weekday based message etc.
15. For repeating code a known number of times, the for loop is the best choice
and when the number of iterations is not preknown, use the while or the
do..while loop. When you want to test a condition at the end of the loop to
see whether some block should be repeated, the do..while statement should
be preferred.
For example,
• To sum 10 numbers for loop can be used
• To accept password, the do..while is the best.
16. Use appropriate comments.
Comments are very essential.
• It provides internal documentation of a program.
• It can be used to explain the various complicated steps of the program
thereby making the program more understandable for the user.

In Java single line comments begin with // and multiple lines of
comments are enclosed between /* and */ .
For example,
int length, breadth, area;
length=Integer.parseInt(jTextField1.getText());
//length variable accepting the value from jtextfield1
breadth=Integer.parseInt(jTextField2.getText());
//breadth variable accepting the value from jtextfield2
int area=length * breadth // area is calculated and stored in the variable area.
/* to display the area using a JOptionPane
the code is as follows */
JOptionPane.showMessageDialog(this, area);
17. Insert blank lines and blank spaces where necessary to separate logical
group of statements.
18. Proper indentation must be used to highlight nesting of constructs like
if, select or loops.
19. Avoid using Free formatting styles. it makes program less readable and
difficult to debug. Pretty printing should be encouraged.
• We can type any number of statements in the same line separated by a;
(semi colon). This is called free formatting style.
int length,breadth,area;length=Integer.parseInt(jTextField1.getText());breadth=Integer.parseInt(jTextField2.getText());

•
•

Prettyprinting is the formatting of a program to make it more readable.
These formatting consist of
 Changes in positioning, spacing, color, contrast, size and similar modifications
 To make the content easier to view, read and understand.
 Also called as code beautifiers or syntax highlighters.
 The shortcut is Alt + Shift+ F.
int length , breadth, area;
length=Integer.parseInt(jTextField1.getText());
breadth=Integer.parseInt(jTextField2.getText());
20. The application must be reliable. It must be capable of
handling situations like wrong input or no input. It should
display proper error messages in case of such errors.
if (English>100 || ASkills>100 || GK>100)
JOptionPane.showMessageDialog(this,"Re-Enter Marks (Out of 100)");

Check if the marks input by the user for any of the subjects are greater
than 100 or not an if they are then display the message
"Re-Enter Marks (Out of 100)”

21. The application should be portable. It should be able to run
on different platforms.
From System to System , In different Operating systems.
GUI-Desktop
Application
GUI-Web Application

Más contenido relacionado

Destacado

EFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the DesktopEFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the DesktopSamsung Open Source Group
 
Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Samsung Open Source Group
 
Enlightenment as Standalone Wayland Compositor
Enlightenment as Standalone Wayland CompositorEnlightenment as Standalone Wayland Compositor
Enlightenment as Standalone Wayland CompositorSamsung Open Source Group
 
A Detailed Look at Cairo's OpenGL Spans Compositor Performance
A Detailed Look at Cairo's OpenGL Spans Compositor PerformanceA Detailed Look at Cairo's OpenGL Spans Compositor Performance
A Detailed Look at Cairo's OpenGL Spans Compositor PerformanceSamsung Open Source Group
 
Gui Development with qooxdoo
Gui Development with qooxdooGui Development with qooxdoo
Gui Development with qooxdooSebastian Werner
 
Rails GUI Development with Ext JS
Rails GUI Development with Ext JSRails GUI Development with Ext JS
Rails GUI Development with Ext JSMartin Rehfeld
 
IoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilityIoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilitySamsung Open Source Group
 
Principles of Machine Design Aesthetic & Ergonomic Consideration In Design .
Principles of Machine Design  Aesthetic & Ergonomic Consideration In Design .Principles of Machine Design  Aesthetic & Ergonomic Consideration In Design .
Principles of Machine Design Aesthetic & Ergonomic Consideration In Design .Mech-4u
 
Graphical User Interface
Graphical User Interface Graphical User Interface
Graphical User Interface Bivek Pakuwal
 
Free/Open Source Software for Science & Engineering
Free/Open Source Software for Science & EngineeringFree/Open Source Software for Science & Engineering
Free/Open Source Software for Science & EngineeringKinshuk Sunil
 
User Interface Design
User Interface DesignUser Interface Design
User Interface DesignJReifman
 

Destacado (17)

Eo fosdem 15
Eo fosdem 15Eo fosdem 15
Eo fosdem 15
 
EFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the DesktopEFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the Desktop
 
Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)
 
Enlightenment as Standalone Wayland Compositor
Enlightenment as Standalone Wayland CompositorEnlightenment as Standalone Wayland Compositor
Enlightenment as Standalone Wayland Compositor
 
Application GUI Design
Application GUI DesignApplication GUI Design
Application GUI Design
 
A Detailed Look at Cairo's OpenGL Spans Compositor Performance
A Detailed Look at Cairo's OpenGL Spans Compositor PerformanceA Detailed Look at Cairo's OpenGL Spans Compositor Performance
A Detailed Look at Cairo's OpenGL Spans Compositor Performance
 
Clang: More than just a C/C++ Compiler
Clang: More than just a C/C++ CompilerClang: More than just a C/C++ Compiler
Clang: More than just a C/C++ Compiler
 
Gui Development with qooxdoo
Gui Development with qooxdooGui Development with qooxdoo
Gui Development with qooxdoo
 
01 gui 01
01 gui 0101 gui 01
01 gui 01
 
Rails GUI Development with Ext JS
Rails GUI Development with Ext JSRails GUI Development with Ext JS
Rails GUI Development with Ext JS
 
02 gui 02
02 gui 0202 gui 02
02 gui 02
 
IoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilityIoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT Interoperability
 
Principles of Machine Design Aesthetic & Ergonomic Consideration In Design .
Principles of Machine Design  Aesthetic & Ergonomic Consideration In Design .Principles of Machine Design  Aesthetic & Ergonomic Consideration In Design .
Principles of Machine Design Aesthetic & Ergonomic Consideration In Design .
 
Graphical User Interface
Graphical User Interface Graphical User Interface
Graphical User Interface
 
Free/Open Source Software for Science & Engineering
Free/Open Source Software for Science & EngineeringFree/Open Source Software for Science & Engineering
Free/Open Source Software for Science & Engineering
 
User Interface Design
User Interface DesignUser Interface Design
User Interface Design
 
Macintosh vs. windows
Macintosh vs. windowsMacintosh vs. windows
Macintosh vs. windows
 

Similar a Gui application development guidelines

Programming Methodology
Programming MethodologyProgramming Methodology
Programming Methodologyarchikabhatia
 
Basic Information About C language PDF
Basic Information About C language PDFBasic Information About C language PDF
Basic Information About C language PDFSuraj Das
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAAiman Hud
 
Introduction to Programming Fundamentals 3.pdf
Introduction to Programming Fundamentals 3.pdfIntroduction to Programming Fundamentals 3.pdf
Introduction to Programming Fundamentals 3.pdfAbrehamKassa
 
OOP -interface and objects.pptx
OOP -interface and objects.pptxOOP -interface and objects.pptx
OOP -interface and objects.pptxEdFeranil
 
Best Coding Practices in Java and C++
Best Coding Practices in Java and C++Best Coding Practices in Java and C++
Best Coding Practices in Java and C++Nitin Aggarwal
 
User Interface Design
User Interface DesignUser Interface Design
User Interface DesignGil Pasiona
 
CP c++ programing project Unit 1 intro.pdf
CP c++ programing project  Unit 1 intro.pdfCP c++ programing project  Unit 1 intro.pdf
CP c++ programing project Unit 1 intro.pdfShivamYadav886008
 
Programming Guidelines
Programming GuidelinesProgramming Guidelines
Programming GuidelinesRamesh Joshi
 
76829060 java-coding-conventions
76829060 java-coding-conventions76829060 java-coding-conventions
76829060 java-coding-conventionsslavicp
 
Programming concepts By ZAK
Programming concepts By ZAKProgramming concepts By ZAK
Programming concepts By ZAKTabsheer Hasan
 
Coding standard and coding guideline
Coding standard and coding guidelineCoding standard and coding guideline
Coding standard and coding guidelineDhananjaysinh Jhala
 

Similar a Gui application development guidelines (20)

Programming Methodology
Programming MethodologyProgramming Methodology
Programming Methodology
 
Programming Methodology
Programming MethodologyProgramming Methodology
Programming Methodology
 
Basic Information About C language PDF
Basic Information About C language PDFBasic Information About C language PDF
Basic Information About C language PDF
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIA
 
I x scripting
I x scriptingI x scripting
I x scripting
 
Coding standard
Coding standardCoding standard
Coding standard
 
Introduction to Programming Fundamentals 3.pdf
Introduction to Programming Fundamentals 3.pdfIntroduction to Programming Fundamentals 3.pdf
Introduction to Programming Fundamentals 3.pdf
 
Learning the C Language
Learning the C LanguageLearning the C Language
Learning the C Language
 
Aniket tore
Aniket toreAniket tore
Aniket tore
 
OOP -interface and objects.pptx
OOP -interface and objects.pptxOOP -interface and objects.pptx
OOP -interface and objects.pptx
 
C Programming Unit-1
C Programming Unit-1C Programming Unit-1
C Programming Unit-1
 
Best Coding Practices in Java and C++
Best Coding Practices in Java and C++Best Coding Practices in Java and C++
Best Coding Practices in Java and C++
 
User Interface Design
User Interface DesignUser Interface Design
User Interface Design
 
CP c++ programing project Unit 1 intro.pdf
CP c++ programing project  Unit 1 intro.pdfCP c++ programing project  Unit 1 intro.pdf
CP c++ programing project Unit 1 intro.pdf
 
Programming Guidelines
Programming GuidelinesProgramming Guidelines
Programming Guidelines
 
76829060 java-coding-conventions
76829060 java-coding-conventions76829060 java-coding-conventions
76829060 java-coding-conventions
 
Programming concepts By ZAK
Programming concepts By ZAKProgramming concepts By ZAK
Programming concepts By ZAK
 
Apa style-1 (1)
Apa style-1 (1)Apa style-1 (1)
Apa style-1 (1)
 
Introduction to ‘C’ Language
Introduction to ‘C’ LanguageIntroduction to ‘C’ Language
Introduction to ‘C’ Language
 
Coding standard and coding guideline
Coding standard and coding guidelineCoding standard and coding guideline
Coding standard and coding guideline
 

Más de LOUIS WAYNE

CIVIL ENGINEERING CONSTRUCTIONS MATERIALS
CIVIL ENGINEERING  CONSTRUCTIONS MATERIALS CIVIL ENGINEERING  CONSTRUCTIONS MATERIALS
CIVIL ENGINEERING CONSTRUCTIONS MATERIALS LOUIS WAYNE
 
Construction Materials
Construction Materials Construction Materials
Construction Materials LOUIS WAYNE
 
PPT ON GLOBAL WARMING
PPT ON GLOBAL WARMINGPPT ON GLOBAL WARMING
PPT ON GLOBAL WARMINGLOUIS WAYNE
 
PPT ON HARDWARE AND CONCEPT
PPT ON HARDWARE AND CONCEPT PPT ON HARDWARE AND CONCEPT
PPT ON HARDWARE AND CONCEPT LOUIS WAYNE
 

Más de LOUIS WAYNE (6)

Ceramics
CeramicsCeramics
Ceramics
 
CIVIL ENGINEERING CONSTRUCTIONS MATERIALS
CIVIL ENGINEERING  CONSTRUCTIONS MATERIALS CIVIL ENGINEERING  CONSTRUCTIONS MATERIALS
CIVIL ENGINEERING CONSTRUCTIONS MATERIALS
 
Construction Materials
Construction Materials Construction Materials
Construction Materials
 
PPT ON GLOBAL WARMING
PPT ON GLOBAL WARMINGPPT ON GLOBAL WARMING
PPT ON GLOBAL WARMING
 
PPT ON SOUND
PPT ON SOUNDPPT ON SOUND
PPT ON SOUND
 
PPT ON HARDWARE AND CONCEPT
PPT ON HARDWARE AND CONCEPT PPT ON HARDWARE AND CONCEPT
PPT ON HARDWARE AND CONCEPT
 

Último

GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfphamnguyenenglishnb
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfSpandanaRallapalli
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxMaryGraceBautista27
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptxSherlyMaeNeri
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptxmary850239
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 

Último (20)

GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdf
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptx
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptx
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 

Gui application development guidelines

  • 3. WHAT IS GUI? • A graphical user interface (GUI) is a human-computer interface (i.e., a way for humans to interact with computers) that uses windows, icons and menus and which can be manipulated by a mouse and to some extent using keyboard. • A major advantage of GUIs is that they make computer operation easier to learn and use. For example, it is much easier for a new user to move a file from one directory to another by dragging its icon with the mouse than by having to remember and type many commands to accomplish the same task.
  • 4. GUI Programming • Uses a simplified approach to programming. • Most of the components are predefined in a generic way. • Can be incorporated according to the needs or requirements of the application. • It provides a very comfortable feel to the programmer to develop applications without getting into complicated and cumbersome logic and commands. • Most of the GUI tools are developed To provide simplified approach to programming. To provide enormous inbuilt functionality to the programmer.
  • 5. Application Development Guidelines There are 21 application development guidelines
  • 6. 1. Understand the need of the application before starting the development. Eg: Fahrenheit Conversion Application Why we need it, its advantages? • • For the easy conversion of values without doing it manually. Time saving, any one can access the application and use it, user friendly etc.
  • 7. 2. Find out all possible inputs, which are required to produce the desired result or results. E.g. Fahrenheit Conversion Application • • Both decimal values as well as integer values as input. Allow only numeric values as input
  • 8. 3. Make sure that the user provides appropriate information with minimum efforts to avoid ambiguity in data. • • • Appropriately deciding on the various input components Maximize use of radio button, checkbox, combo box, and list. Wherever possible avoid use of text field and text area for accepting inputs from the user to reduce ambiguity.
  • 9. E.g. While inputting Marital status in a form using TEXT FIELD (values are given according to user) Restrict the user by using COMBOBOX: (Reduce the no: of options to the user)
  • 10. 4. Radio Button should be used wherever one of the option out of limited number of options are required to be taken from the user. For example, For accepting gender (Male or Female) For marital status (Single or Married) For Membership type(Monthly , Annual, Life Time)
  • 11. 5. Checkbox should be used wherever multiple options are required to be selected from a limited number of known set of options. For example, For accepting multiple hobbies (Swimming, Singing, Dancing, Debating)
  • 12. 6. Combo box should be used wherever only one of the option from a large number of known set of options is required to be taken from the user For example, For selecting marital status
  • 13. 7. List should be used wherever multiple options are required to be selected from a large number of known set of options. For example, For selecting activities
  • 14. List and Combo box 8. It is advisable to use List and Combo box when there are too many options as they help save space and are less cumbersome to design as compared to radio button and checkbox. 9. Options in a list or a combo box may be displayed in alphabetical order so that it is easier for the user to locate the appropriate option or may be displayed according to the probability of choice. The most probable answer should be at the top.
  • 15. For example, To take input of name of a state • The names should be displayed according to alphabetical order. To take input of employee designation • The highest level should be put at last and the lowest level should be put at top. The explanation for this is since there are more employees at lower levels as compared to higher levels, the probability of choosing the lower level is more.
  • 16. 10. It is advisable to use appropriate labels for each input and output options to help the user to correctly interpret them. For example, User has to input user id and password  
  • 17. 11. While writing the code do not use variable names as A, B, C etc. Instead use meaningful names and follow naming conventions. All the variables and constants must be named according to the naming conventions. They make the code easier to read, understand and maintain. For example, A variable storing total marks – Total A variable holding cost price - CP
  • 18. 12. Ensure Clarity of expressions. All the expressions should be easy to understand for the user. There should not be a compromise to reduce the statements by loosing their clarity. For example, double farenconv; farenconv=9/5*(jTextfeild1.getText()+32); This can be rewritten as: double farenconv, Tc; Tc=Integer.parseInt(jTextfeild1.getText()); farenconv=(9/5)*(Tc+32);
  • 19. Control Structures 13. The conditional construct if..else should be preferred when there are very few alternative execution paths to choose from and also when decisions are to be made based on ranges of values or conditions. For example, to show gender based title etc. For example,
  • 20. Control Structures 13. The conditional construct if..else should be preferred when there are very few alternative execution paths to choose from and also when decisions are to be made based on ranges of values or conditions. For example, to show gender based title etc. 14. The switch construct should be used when there are too many alternative execution paths and decisions is based only on a single integer or countable value. For example, to show weekday based message etc. 15. For repeating code a known number of times, the for loop is the best choice and when the number of iterations is not preknown, use the while or the do..while loop. When you want to test a condition at the end of the loop to see whether some block should be repeated, the do..while statement should be preferred. For example, • To sum 10 numbers for loop can be used • To accept password, the do..while is the best.
  • 21. 16. Use appropriate comments. Comments are very essential. • It provides internal documentation of a program. • It can be used to explain the various complicated steps of the program thereby making the program more understandable for the user. In Java single line comments begin with // and multiple lines of comments are enclosed between /* and */ . For example, int length, breadth, area; length=Integer.parseInt(jTextField1.getText()); //length variable accepting the value from jtextfield1 breadth=Integer.parseInt(jTextField2.getText()); //breadth variable accepting the value from jtextfield2 int area=length * breadth // area is calculated and stored in the variable area. /* to display the area using a JOptionPane the code is as follows */ JOptionPane.showMessageDialog(this, area);
  • 22. 17. Insert blank lines and blank spaces where necessary to separate logical group of statements. 18. Proper indentation must be used to highlight nesting of constructs like if, select or loops. 19. Avoid using Free formatting styles. it makes program less readable and difficult to debug. Pretty printing should be encouraged. • We can type any number of statements in the same line separated by a; (semi colon). This is called free formatting style. int length,breadth,area;length=Integer.parseInt(jTextField1.getText());breadth=Integer.parseInt(jTextField2.getText()); • • Prettyprinting is the formatting of a program to make it more readable. These formatting consist of  Changes in positioning, spacing, color, contrast, size and similar modifications  To make the content easier to view, read and understand.  Also called as code beautifiers or syntax highlighters.  The shortcut is Alt + Shift+ F. int length , breadth, area; length=Integer.parseInt(jTextField1.getText()); breadth=Integer.parseInt(jTextField2.getText());
  • 23. 20. The application must be reliable. It must be capable of handling situations like wrong input or no input. It should display proper error messages in case of such errors. if (English>100 || ASkills>100 || GK>100) JOptionPane.showMessageDialog(this,"Re-Enter Marks (Out of 100)"); Check if the marks input by the user for any of the subjects are greater than 100 or not an if they are then display the message "Re-Enter Marks (Out of 100)” 21. The application should be portable. It should be able to run on different platforms. From System to System , In different Operating systems.