Вы находитесь на странице: 1из 10

Lovely Professional University,Punjab

Format For Instruction Plan [for Courses with Lectures,Tutorials and Labs

Course No CSE202

Cours Title OBJECT ORIENTED PROGRAMMING

Course Planner 11267 :: JASPREET KAUR

Lectures Tutorial Practical Credits 3 1 3 5

Text Book:

1 Forouzan and Gilberg, "Computer Science - A Structured Approach using C++", Cengage Learning

Other Specific Book:

2 Herbert Schildt, The Complete Reference in C++, Publishers: Tata Mc Graw Hill 3 E. Balagurusamy "Object Oriented Programming with C++" , Prentice Hall 4 J Marget A. Ellis and Bjarne Stroustrup , "The Annotated C++ Reference Manual", Addison Wesley, New York. 5 Lafore R. "Object oriented programming in C++", Waite Group 6 Lippman F. B. "C++ Primer", Addison Wesley 7 Herbert Schildt, "Teach Yourself C++", Tata Mc Graw Hill 8 Kamthane, Ashok N. Object oriented Programming with ANSI and Turbo C++, Pearson Education 9 Sumit Mittu, "A Workbook on C++", Cengage Learning

Other Reading Sr No Jouranls atricles as compulsary readings (specific articles, Complete reference) 10 Dr. Dobb's Journal 11 www.artima.com (Online C++ Journals) 1 Approved for Autumn Session 2011-12

12 http://www.informatik.uni-trier.de/~ley/db/journals/joop/index.html 13 http://c2.com/cgi/wiki?JournalOfObjectOrientedProgramming 14 http://en.wikipedia.org/wiki/C/C%2B%2B_Users_Journal 15 http://wordaligned.org/articles/printed-c-journals 16 http://domains.techweb.com/ 17 http://www.apl.jhu.edu/~paulmac/c++-references.html#Journals Relevant Websites Sr. No. (Web adress) (only if relevant to the courses) 18 Http://www.cplusplus.com Salient Features Documentation pages and tutorials describing specifics about the different features of the C++ language. C++ Language Tutorial: Collection of tutorials covering all the features of this versatile and This document is intended for knowledgeable users of C (or any other language using a C-like grammar, like Perl or Java) who would like to know more about, or make the transition to, C++. Frequently asked questions in C++ About C, C++ and C# brings the latest programming tutorials, programming challenges,C++ for beginners LearnCpp.com is a totally free website devoted to teaching you to program in C++. Whether youve had any prior experience programming or not, the tutorials on this site will walk you through all the s ACM (Association for Computing Machinery), the worlds largest educational and scientific computing society, delivers resources that advance computing as a science and a profession. ACM provides the c pointers pointers

19 http://www.icce.rug.nl/documents/cplusplus 20 http://www.research.att.com/~bs/bs_faq.html 21 http://cplus.about.com 22 http://www.learncpp.com

23 www.acm.org

24 http://www.cplusplus.com/doc/tutorial/pointers/ 25 http://www.newty.de/fpt/index.html

Detailed Plan For Lectures


Week Number Lecture Number Lecture Topic Chapters/Sections of Pedagogical tool Textbook/other Demonstration/case reference study/images/anmatio n ctc. planned

Part 1
Week 1 Lecture 1 Introduction to concepts of OOP and OOP Languages ->Reference :3,ch1(Pg ch1_oops.ppt 4-14) Approved for Autumn Session 2011-12

Week 1

Lecture 2 Lecture 3

Elements & Structure of C++ program Constants, Data Types, Variables, Identifiers and Storage Classes Reading and writing Data using cin and cout. Writing, Editing, Compiling and Linking programs Operators, Expressions and Statements. Operator Precedence and Associativity Control Transfer Statements (selection, repetition, jump). Control Transfer Statements (selection, repetition, jump). Library Functions

->Reference :1,ch2 (Pg ch2_oops.ppt 27-28) ->Reference :1,ch2 (Pg ch3_oops.ppt 32-43) ->Reference :1,ch -1 (pg 10-11) ch2 (pg 4558) ->Reference :1,ch3 (pg 75-96) ->Reference :1,ch5 & ch6 ->Reference :8,ch4 ->Reference :1,ch5 & ch6 ->Reference :8,ch4 control_structures.ppt

Week 2

Lecture 4

Lecture 5 Lecture 6

Week 3

Lecture 7

control_structures.ppt

Lecture 8

->Reference :1,ch4 (pg http://publib.boulder.ibm 147-154) .com/infocenter/tpfhelp/c urrent/index.jsp? topic=/com.ibm.ztpfztpfdf.doc_put.cur/gtpc2/ libfun.html ->Reference :1,ch4 (pg ch4_functions.ppt 119-145)

Lecture 9

Creating User Defined functions

Week 4

Lecture 10

Functions with Default parameters/arguments. Inline ->Reference :1,ch4 (pg ch4_functions.ppt Functions 146-147) ch11 (pg 542) ->Reference :3, ch4 (pg74-78)

Part 2
Week 4 Lecture 11 Function Overloading ->Reference :3,ch4 (pg ch5_function_overloadin 80-81) g.ppt ->Reference :8,ch5 (pg 173-180) ->Reference :1,ch8 ->Reference :1,ch11 (pg 567-573) ->Reference :1,ch11 (pg 574-575) arrays.ppt

Lecture 12 Week 5 Lecture 13 Lecture 14

Using arrays in C++ (one-dimensional and twodimensional) Structures, Unions, and Enumerations Type Definition using typedef statement.

Approved for Autumn Session 2011-12

Week 5 Week 6

Lecture 15 Lecture 16

Creating classes, Class objects, Manager Functions (constructors and destructor)

->Reference :1,ch10 (pg 488-498) ->Reference :1,ch10 (pg 499-510) ->Reference :3,ch6 ->Reference :1,ch10 (pg 499-510) ->Reference :3,ch6

classes.ppt constructors_destructors .ppt constructors_destructors .ppt

Lecture 17

Manager Functions (constructors and destructor)

Lecture 18

Friend Functions and Friend classes

->Reference :1,ch10 friend_function.ppt (pg 521 & 560) ->Reference :8,ch6 (pg 229-238) ->Reference :1,ch11 (pg 545-556) ->Reference :3,ch7 ->Reference :1,ch11 (pg 545-556) ->Reference :3,ch7 ->Reference :1,ch14 Operator_overloading.p pt Operator_overloading.p pt strings.ppt

Week 7

Lecture 19

Operator Overloading (unary operator, binary operator overloading) and Type conversions. Operator Overloading (unary operator, binary operator overloading) and Type conversions. String Concepts

Lecture 20

Lecture 21

MID-TERM Part 3
Week 8 Lecture 22 Lecture 23 Lecture 24 Week 9 Lecture 25 Inheritance: Basics, Types and Modes Inheritance Types continued Overriding member functions Resolving ambiguities in inheritance ->Reference :1,ch12 ->Reference :3,ch 8 ->Reference :1,ch12 ->Reference :3,ch 8 ->Reference :1,ch12 (pg 612-614) ->Reference :3,ch 8 (pg 203) & ch 9 (pg 234- 240) ->Reference :1,ch 9 ->Reference :24 ->Reference :25 http://www.cplusplus.co m/doc/tutorial/pointers/ inheritance.ppt inheritance.ppt

Lecture 26 Lecture 27

Pointer variables v/s Reference variables, Defining and using pointer and reference variables Pointers with Functions (Passing arguments to function using Reference and using Pointers, Returning pointers from functions).

Week 10

Lecture 28

The void pointer, Pointer to Pointer, The this pointer ->Reference :3,ch 9 ->Reference :8,ch 10

Approved for Autumn Session 2011-12

Part 4
Week 10 Lecture 29 Lecture 30 Class Template Dynamic Memory Allocation using new and delete operators Virtual Functions and Abstract Classes Dynamic Binding using Virtual Functions Input/output classes File States and File Opening Modes ->Reference :1,ch13 (pg 658-669) ->Reference :8,ch 11 dynamic_memory.ppt

Week 11

Lecture 31 Lecture 32 Lecture 33

->Reference :1,ch12 (pg 615-629) ->Reference :1,ch12 (pg 616) ->Reference :1,ch16 (pg 771) ->Reference :1,ch16 (pg 772-775) files1.ppt files1.ppt files2.ppt

Week 12

Lecture 34 Lecture 35 Lecture 36

Text and binary files. Reading and Writing from Files ->Reference :1,ch16 (pg 776-800) Detecting File errors. ->Reference :1,ch 15

Spill Over
Week 13 Lecture 37 Lecture 38 Lecture 39 Exceptional Handling Throwing mechanism, catching mechanism rethrowing an exception, specifying exceptions ->Reference :1,ch 15 ->Reference :3,ch13 ->Reference :1,ch 15 ->Reference :3,ch13 ->Reference :1,ch 15 ->Reference :3,ch13

Details of homework and case studies


Homework No. Objective Topic of the Homework Nature of homework (group/individuals/field work Individual Evaluation Mode Allottment / submission Week 6/6

Class Test 1

To test the knowledge of students To test the knowledge of students

Topics covered in week 1-5

Paper based test

Class Test 2

Topics covered in weeks 6-9

Individual

Paper based test

10 / 10

Approved for Autumn Session 2011-12

term paper 1

To test their Minor projects in C++ given to test their programming skills programming skills

Individual

Minor project (program) must be running and properly executed

3/9

Scheme for CA:out of 100*


Component class test, term paper Frequency 2 Total :Out Of 3 Each Marks Total Marks 10 10 20 20

* In ENG courses wherever the total exceeds 100, consider x best out of y components of CA, as explained in teacher's guide available on the UMS List of suggested topics for term paper[at least 15] (Student to spend about 15 hrs on any one specified term paper) Sr. No. Topic 1 Periodic table 2 Program for video shop data base 3 Address Book Program in C++ 4 Fast Food Automation System 5 Phone Book Program implemented in C++ 6 Program for a STUDENT DATABASE and all options such as add, delete, update and other operations 7 Supermarket Billing 8 Student Report card 9 Program for video shop data base. 10 Implementation of a text editor 11 Menu driven program that lets you keep track of student's course schedule. 12 Telephone billing 13 Immigration consultancy database 14 scientific calculator 15 Student Information system

Approved for Autumn Session 2011-12

Plan for Tutorial: (Please do not use these time slots for syllabus coverage)
Tutorial No. Lecture Topic Type of pedagogical tool(s) planned (case analysis,problem solving test,role play,business game etc)

Tutorial 1

Programming practice and problems based on tokens, identifiers, data types, constants, storage classes Programming practice and problems based on operators Problems on Control structures

Problem solving

Tutorial 2

Problem solving

Tutorial 3 Tutorial 4 Tutorial 5 Tutorial 6 Tutorial 7

Problem solving

Programming practice and problems based on functions Problem solving Problems on Arrays, Structures and unions Programming practice and problems based on classes Problem solving Problem solving

Programming practice and problems based on operator Problem solving overloading

After Mid-Term
Tutorial 8 Programming practice and problems based on inheritance Resolving ambiguities in inheritance, Problems on pointers Programming practice and problems based on templates Programming practice and problems based on virtual function Programming practice and problems based on file handling Problem solving

Tutorial 9

Problem solving

Tutorial 10

Problem solving

Tutorial 11

Problem solving

Tutorial 12

Problem solving

*Each experiment of the lab will be evaluated using following relative scheme:
7 Approved for Autumn Session 2011-12

Component J/E WR VIVA

% of Marks 50 20 30

List of experiments :Lecture Number Problem solving 1 Problem solving 2 Lecture Topic Simple programs using cin and cout statements Programs based on Operators, Expressions and Statements Pedagogical Tools Or Equipment Planned PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler lab Manual Not Applicable Not Applicable

Problem solving 3 Problem solving 4 Problem solving 5 Problem solving 6 Problem solving 7 Problem solving 8 Problem solving 9 Problem solving 10 Problem solving 11 Problem solving 12

Programs to implement if-else statements. Programs to implement loops (while, do while and for) Programs based on other control transfer statements (switch case, go to, break, continue, etc.) Programs to create user defined functions. Programs to create user defined functions. Programs to implement Functions with Default parameters/arguments Programs to implement inline functions Programs based on Function Overloading Programs based on Function Overloading

PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler

Not Applicable Not Applicable Not Applicable

PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler

Not Applicable Not Applicable Not Applicable

PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler

Not Applicable Not Applicable Not Applicable Not Applicable

Program to illustrate the concept of one class with one PCs, LCD Projectors, Turbo C++ Compiler object

Approved for Autumn Session 2011-12

Problem solving 13 Problem solving 14 Problem solving 15 Problem solving 16 Problem solving 17 Problem solving 18

Program to illustrate the concept of one class with more than one object Program to illustrate the concept of array of objects Programs to implement constructors and destructors Programs to implement Friend Functions and Friend classes Programs to implement operator overloading Programs to implement operator overloading

PCs, LCD Projectors, Turbo C++ Compiler

Not Applicable

PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler

Not Applicable Not Applicable Not Applicable

PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler

Not Applicable Not Applicable

Mid Term
Problem solving 19 Problem solving 20 Problem solving 21 Problem solving 22 Problem solving 23 Programs to illustrate the concept of inheritance and its PCs, LCD Projectors, Turbo C++ Compiler types Programs to illustrate the concept of inheritance and its PCs, LCD Projectors, Turbo C++ Compiler types Resolving ambiguities in inheritance Programs based on pointers Programs to implement pointers with functions (Passing arguments to function using Reference and using Pointers, Returning pointers from functions) Programs to implement pointers with functions (Passing arguments to function using Reference and using Pointers, Returning pointers from functions) Dynamic Memory Allocation using new and delete operators PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler Not Applicable

Not Applicable

Not Applicable Not Applicable Not Applicable

Problem solving 24

PCs, LCD Projectors, Turbo C++ Compiler

Not Applicable

Problem solving 25 Problem solving 26 Problem solving 27 9

PCs, LCD Projectors, Turbo C++ Compiler

Not Applicable

Programs implementing Virtual Functions and Abstract PCs, LCD Projectors, Turbo C++ Compiler Classes Programs implementing Virtual Functions and Abstract PCs, LCD Projectors, Turbo C++ Compiler Classes

Not Applicable

Not Applicable

Approved for Autumn Session 2011-12

Problem solving 28 Problem solving 29 Problem solving 30

Programs based on text files Reading and Writing from Files Detecting File errors.

PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler PCs, LCD Projectors, Turbo C++ Compiler

Not Applicable Not Applicable Not Applicable

10

Approved for Autumn Session 2011-12