An intermediate course in object-oriented programming. Topics include object-oriented modeling, algorithms, inheritance, polymorphism, input/output. Emphasis will be on issues of object-oriented design and good programming practices. Students entering this course are expected to have a solid knowledge of programming in the object-oriented paradigm. The focus will be on developing skills in program design as a necessary prerequisite to effective implementation.
- Develop software in an Integrated Development Environment.
- Demonstrate competence in basic programming concepts.
- Use a given UML diagram to construct a class with constructors and methods from it.
- Demonstrate competence in collections such as arrays and array lists.
- Describe data persistence and develop programs that persist data by performing file input and output.
- Demonstrate competence in using Java Exceptions to secure potentially failing parts of a program.
- Demonstrate the skills to define subclasses for a given class.
- Use GUI elements to build graphical interfaces.
- Use Recursion to solve problems.
- Use inheritance and design patterns to structure a larger object-oriented program.