Object-Oriented Programming: Principles

Course specifications
Course number: 77-906
Software version number: 
Course length: 1 day(s)

Hardware/software required to run this course
	·	A computer with a Web browser and an Internet connection. A small number of activities require Microsoft Windows.

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.

Delivery method: Instructor-led, group-paced, classroom-delivery learning model with structured discussion activities.

Benefits: Students will learn general programming concepts that provide a basis for object programming in many different languages

Target student: The target student is interested in learning general object-oriented programming concepts. This course provides a foundation for students desiring to go on and learn one or more object-oriented programming languages.

What's next: Any of Element K's introductory courses on object-oriented programming languages would be a good course to take after this one. For example, students wishing to learn C++ programming could take “C++ Programming.”

Object-Oriented Programming: Principles

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.

Object-Oriented Programming: Principles

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