CSE142

= = =Reference Course Outline for:** __ CSE142: Object Oriented Programming Techniques__ **=

**Course Lead:**
Abdul Wajed

Course Description:
This course describes another paradigm as a better replacement for structured/procedural programming paradigm (CSE141) for managing large programs to segregate code into reusable chunks called classes. Principles of Abstraction, Encapsulation, Inheritance and Polymorphism are explored as well as developing an understanding of code structuring and design philosophies. It requires a thorough understanding of fundamentals of programming. Topics include class definition, constructors, destructors, access control, method overloading and overriding, inheritance, static and dynamic binding, exception handling, object life cycle and garbage collection, and namespaces. Either Java, C# or C++ is used as a tool for implementation of concepts learnt in this course.

Prerequisite(s):
CSE141, CSE145

Typical Semester in which this course is offered:
Spring

Programs in which course is offered:
BS(CS)

Outline:
A topic wise, one to two page description of the course. For each topic, there should be a few lines of text describing the topic.

Books:
A list of Required and Recommended texts should be given here. Indication of where the book may be obtained from (e.g. IBA library or local book store) may be useful.

Web Resources:
Any web resources that may be used during the course.

Grading Policy:
The recommended grading policy, with weights attached to Quizzes, Homework assignements, Midterm exams, projects and Final Exams.

Uploaded Course Outline:
You may also upload a course outline here.