Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CSC308 Lecture 07

CSC308 Lecture 07

Software Engineering I
Clean Coding I
(202301)

Javier Gonzalez-Sanchez

October 01, 2022
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. jgs CSC 308 Software Engineering 1 Lecture 07: Clean Coding

    1 Dr. Javier Gonzalez-Sanchez [email protected] www.javiergs.com Building 14 -227 Office Hours: By appointment
  2. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 |

    2 § Construction or Coding § Testing (Unit, UI, Integration, Stress, Regression) Activities
  3. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 |

    6 Key Ideas DRY KIS Readable (comments, names, spaces,…)
  4. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 |

    7 import javax.swing.*; public class Example extends JFrame{ public static void main(String[] args) { Example frame = new Example(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(500,500); frame.setVisible(true); } } Method main()
  5. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 |

    8 import javax.swing.*; public class Example extends JFrame{ public Example() { super("Hello World Swing"); GridLayout layout = new GridLayout(3,2); setLayout(layout); JLabel label = new JLabel("Hello World"); add(label); JButton button = new JButton("Click Me"); add(button); JTextField text = new JTextField("Text", 10); add(text); JCheckBox check = new JCheckBox("Option"); add(check); } public static void main(String[] args) { Example frame = new Example(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(500,500); frame.setVisible(true); } } Layouts
  6. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 |

    9 import javax.swing.*; public class Example extends JFrame{ public Example() { super("Hello World Swing"); BorderLayout layout = new BorderLayout(); setLayout(layout); JLabel label = new JLabel("Hello World"); add(label, BorderLayout.CENTER); JButton button = new JButton("Click Me"); add(button , BorderLayout.SOUTH); JTextField text = new JTextField("Text", 10); add(text , BorderLayout.NORTH); JCheckBox check = new JCheckBox("Option"); add(check , BorderLayout.EAST); } public static void main(String[] args) { Example frame = new Example(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(500,500); frame.setVisible(true); } } Layouts
  7. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 |

    16 Office Hours Tuesday and Thursday 3 - 5 pm But an appointment required Sent me an email – [email protected]
  8. jgs

  9. jgs CSC 308 Software Engineering 1 Lab 07: Clean Coding

    Dr. Javier Gonzalez-Sanchez [email protected] www.javiergs.com Building 14 -227 Office Hours: By appointment
  10. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 |

    20 Lab Program a Calculator in Java • Basic Functionality • Take care of your code – Readability, DRY, KIS
  11. jgs CSC 308 Software Engineering I Javier Gonzalez-Sanchez, Ph.D. [email protected]

    Winter 2022 Copyright. These slides can only be used as study material for the class CSC308 at Cal Poly. They cannot be distributed or used for another purpose.