Object-Oriented Programming: Principles
Course description
Overview: This course introduces you to general principles underlying the practice of object-oriented programming. The concepts and principles in this course are presented in a generic manner, and as such are intended to prepare the student for programming in virtually any object-oriented programming language. Where specific illustrations are required, they are presented through pseudo-code.
Prerequisites: Windows 95: Introduction or equivalent understanding of computers and operating systems. It is helpful to have already taken Introduction to Programming.
Performance-based objectives
Lesson objectives help students become comfortable with the course, and also provide a means to evaluate learning. Upon successful completion of this course, students will be able to:
* Explain what constitutes an object-oriented approach to programming, and identify potential benefits of object-oriented programming over other approaches.
* Describe the following aspects of object-oriented programming: objects, classes, subclassing, inheritance, and polymorphism.
* List and describe the steps and critical attributes involved in a good software project plan.
* List and describe key attributes of software analysis and design tools and methodologies.
* Briefly describe the general benefits of using an object-oriented approach to developing windowed applications, including the use of application frameworks and class libraries.
* Briefly describe the general benefits of using an object-oriented approach to developing Web applications.
Course content
Lesson 1: Overview and Benefits of Object-oriented Programming
Approaches to Software Design
Evolution of the Object Model
Benefits of Object Programming
Lesson 2: The Object Model
Objects
Classes
Subclassing and Inheritance
Polymorphism
Lesson 3: From Plan to Product
Developing a Plan
Identifying Software Requirements
Designing a General Class Structure
Building a General Application Framework
Implementing Features
Final Polishing
Lesson 4: Tools and Methodologies
Analysis and Design Methodologies
Notations
Lesson 5: Object Programming in Windowed Environments
Benefits of OOP in Windowed Application Environments
Application Frameworks and Class Libraries
Lesson 6: Object Programming for the Web
How Web Applications Work
Web Objects
Building a Simple Object-oriented Program