S12_CSE142_Object_Oriented_Programming

=CSE142: Object Oriented Programming= =Program:= BS(CS)

Semester:
Spring 2012

Instructor:
Abdul Wajed

TA: Samita Bai

**Course Lead:**
Abdul Wajed

**Credit Hours:**
4 (3 credit hours for theory + 1 credit hour for lab)

Prerequisite(s):
CSE141, CSE145

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.

Course Objectives:
After studying this course the students should be able to: Organize large code by using classes and packages

To reuse and enhance existing code with the help of Aggregation & Inheritance Get a better understanding of object lifecyle and memory managment Understand the requirements for Exception Handling and Delegates Understand the need for Concurrency and Persistence

URLs (Optional):
The following website created by Nick Parlante of Stanford is very helpful for Programming Practice. []

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.

by Harvey M. Deitel, Paul J. Deitel ISBN-10: 0136053068 | ISBN-13: 978-0136053064 | Publication Date: March 27, 2009
 * Java: How to Program,**

by Daniel Shiffman ISBN-10: 0123736021 | ISBN-13: 978-0123736024 | Publication Date: September 2, 2008
 * Learning Processing: A Beginner's Guide to Programming Images, Animation, and Interaction**

by Bruce Eckel ([])
 * Thinking in Java (eBook)**

Web Resources:
[] [] [] [] []

Grading Policy:
Theory = 60% Mid Term = 15% + 15% Final = 30%

Lab = 40% Assignments = 20% Term Report = 10% Presentation = 10%

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

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

Class Time Spent On (In Credit Hours):
Theory: 2.5 Problem Analysis: 0.5 Solution Design: 0.5 Social and Ethical Issues: 0.5

and explore 2D games online for project work ||  || ||
 * ==**Topics Covered in the Course **== ||
 * S.No || Date of the lecture || Topic of Lecture || Additional Reference Material ||
 * 1 || 2 Feb 2012 || Introduction and Administrative Matters ||  ||
 * ||  || Download Thinking in Java
 * 2 || 6 Feb 2012 || Encapsulation Principle || [[file:Lec02_06022102.txt]]
 * 3 ||  ||   ||   ||
 * 4 ||  ||   ||   ||
 * 5 ||  ||   ||   ||
 * 6 ||  ||   ||   ||
 * 7 ||  ||   ||   ||
 * 8 ||  ||   ||   ||
 * 9 ||  ||   ||   ||
 * 10 ||  ||   ||   ||
 * 11 ||  ||   ||   ||
 * 12 ||  ||   ||   ||
 * 13 ||  ||   ||   ||
 * 14 ||  ||   ||   ||
 * 15 ||  ||   ||   ||
 * 16 ||  ||   ||   ||
 * 17 ||  ||   ||   ||
 * 18 ||  ||   ||   ||
 * 19 ||  ||   ||   ||
 * 20 ||  ||   ||   ||
 * 21 ||  ||   ||   ||
 * 22 ||  ||   ||   ||
 * 23 ||  ||   ||   ||
 * 24 ||  ||   ||   ||
 * 25 ||  ||   ||   ||
 * 26 ||  ||   ||   ||
 * 27 ||  ||   ||   ||
 * 28 ||  ||   ||   ||