Object-Oriented Programming/GUI Applications

From Wikiversity
Jump to navigation Jump to search

This lesson introduces GUI applications.

Objectives and Skills[edit | edit source]

Objectives and skills for this lesson include:

  • Develop project management skills to achieve a project goal within given constraints.
    • Initiating, planning, executing, controlling, and closing the work of a team.
    • Design a Gantt chart to illustrate the project's schedule
  • Design a object-oriented GUI program
    • Create a UML class diagram that characterizes the implementation details of the program (classes, methods, attributes, and their relationships)

Readings[edit | edit source]

  1. Wikiversity: Project Management
  2. Wikipedia: Graphical user interface
  3. Wikipedia: List of widget toolkits

Multimedia[edit | edit source]

Examples[edit | edit source]

Activities[edit | edit source]

Card Game[edit | edit source]

Create a GUI Application[edit | edit source]

  1. Review Stanford: The Card Game Assignment. Create an object-oriented GUI program that implements a card deck application.
  2. Include program, class, and method documentation consistent with the documentation standards for your selected programming language.
  3. Add unit testing to test all aspects of each class. Run tests automatically when the class module itself is run as the main program.

Add Lists[edit | edit source]

  1. Enhance the card game program above to use lists to implement decks, hands, and players.
  2. Add rules to the card game so users may play one of the following:
    • Black Jack
    • Crazy Eights
    • Go Fish
    • Old Maid
    • Rummy
    • War
  3. Include program, class, and method documentation consistent with the documentation standards for your selected programming language.
  4. Add unit testing to test all aspects of each class. Run tests automatically when the class module itself is run as the main program.

Add Dictionaries[edit | edit source]

  1. Enhance the card game program above to use dictionaries to implement scoring (tracking player wins and losses).
  2. Include program, class, and method documentation consistent with the documentation standards for your selected programming language.
  3. Add unit testing to test all aspects of each class. Run tests automatically when the class module itself is run as the main program.

Weather Application[edit | edit source]

Create a GUI Application[edit | edit source]

  1. Review OpenWeatherMap: API. Create an object-oriented GUI program that displays current weather for a given location entered or selected by the user.# Include program, class, and method documentation consistent with the documentation standards for your selected programming language.
  2. Add unit testing to test all aspects of each class. Run tests automatically when the class module itself is run as the main program.

Add Lists[edit | edit source]

  1. Enhance the weather application above to use lists to add hourly and daily weather forecasts for the given location.
  2. Include program, class, and method documentation consistent with the documentation standards for your selected programming language.
  3. Add unit testing to test all aspects of each class. Run tests automatically when the class module itself is run as the main program.

Add Dictionaries[edit | edit source]

  1. Enhance the weather application above to use dictionaries to track multiple locations entered or selected by the user. Track usage history and display location options in order by most recently used.
  2. Include program, class, and method documentation consistent with the documentation standards for your selected programming language.
  3. Add unit testing to test all aspects of each class. Run tests automatically when the class module itself is run as the main program.

Lesson Summary[edit | edit source]

Key Terms[edit | edit source]

See Also[edit | edit source]

References[edit | edit source]