OBJECT ORIENTED PROGRAMMING THROUGH C++ / JAVA

Paper Code: 
MCA 121
Credits: 
04
Periods/week: 
04
Max. Marks: 
100.00
Objective: 

Course Objectives:

The course enables the students to

  1. Define the concepts of object oriented Programming.
  2. Understand the concept of classes, Inheritance, Polymorphism and conditional statements.
  3. Demonstrate the understanding of concepts by implementing them to practical problems.
  4. Differentiate between structured programming and object oriented programming.
  5. Evaluate the understanding of the concepts by applying them to problems in different domains.
  6. Construct cases and new ideas where the knowledge of object oriented programming can be implemented.

Course Outcomes(COs):

Learning Outcome (at course level)

 

Learning and teaching strategies

Assessment Strategies

  1. Define the concepts of object oriented programming language
  2. Understand the basic features of object oriented programming and apply them through C++/Java language.
  3. Implement knowledge of object oriented programming solution of practical problems.
  4. Compare and contrast the object oriented & non object oriented approaches to obtain solutions
  5. Evaluate the pros and cons of using oops and apply it to problems in different domains.
  6. Develop computer application based project using oops.

Approach in teaching: Interactive Lectures, Tutorials, Demonstration, Team teaching, Quiz

 

Learning activities for the students:

Self-learning assignments, Effective questions, Giving tasks, Field practical

 

 

 

  • Assignment
  • Written test in classroom
  • Classroom activity
  • Multiple choice questions

Semester End Examination

 

 

12.00
Unit I: 

Evolution of OOP, OOP Paradigm, advantages of OOP, Comparison between functional programming and OOP Approach, characteristics of object oriented language. Introduction to C++, Identifier and keywords, constants, C++ operators, type conversion, Variable declaration, statements, expressions, input and output.

12.00
Unit II: 

Conditional expression loop statements, breaking control statements, Classes and objects, constructors and destructors, operator overloading, inheritance, Virtual Function, friend function, Static function, Assignment and copy initialization, this pointer, dynamic type information and polymorphism

10.00
Unit III: 

C++ streams, console stream classes, formatted and unformatted console I/O operations, manipulators, File streams, classes file modes file pointers and manipulations file I/O, Exception handling, Defining function, types of functions templates, function templates, dynamic memory allocation.

14.00
Unit IV: 

OOP in Java – Characteristics of Java – The Java Environment – Java Source File -Structure – Compilation. Fundamental Programming Structures in Java – Defining classes in Java – constructors, methods -access specifiers – static members -Comments, Data Types, Variables, Operators, Control Flow, Arrays , Packages – JavaDoc comments.

12.00

Inheritance – Super classes- sub classes, abstract classes and methods- final methods and classes – Interfaces, Exception Handling- Types of Exceptions, try-catch block, multiple catch-block, nested try blocks, nested try block, throw, throws, finally keywords, Custom exceptions, Threads, Thread Life-Cycle, Thread Priority, Garbage Collection, Basics of event handling- AWT Basics, Java Event Classes and Listener Classes, Types of Components, Adapter Classes.

 

ESSENTIAL READINGS: 

Essential Readings:

  • K.R. Venugopal, Raj Kumar Buyya, “Mastering C++", McGraw-Hill, 2017.
  • Rajaram R, Object Oriented Programming and C++”, 2nd Edition, New Age International, 2013.
  • Herbert Schildt, “Java: The Complete Reference”, 11th Edition, McGraw-Hill, 2019.
  • E. Balagurusamy, “Programming with Java: A Primer”, 6th Edition, Tata McGraw-Hill, 2019.

 

Suggested Readings:

  • John R. Hubbard, Atul Kahate , “Programming with C++”, TMH, 2017.
  • Sourav Sahay, “Object Oriented Programming with C++”, 2nd Edition, Oxford University Press, 2012

 

REFERENCES: 

E-resources:

  • Spoken Tutorials: https://spoken-tutorial.org/tutorial-search/?search_foss=C%20and%20Cpp&search_language=&page=2.
  • Udemy: https://www.udemy.com/topic/object-oriented-programming/.
  • Javatpoint  https://www.javatpoint.com/java-tutorial.
  • Object-Oriented Programming: Learn the principles of programming for building large and extensible systems. https://www.edx.org/course/object-oriented-programming.

Journals:

  • International Research Journal of Engineering and Technology (IRJET): https://www.irjet.net/archives/V7/i10/IRJET-V7I10247.pdf
  • IJSR: International Journal of Scientific Research: https://www.worldwidejournals.com/international-journal-of-scientific-research-(IJSR)/.
  • International Journal of Computer Applications Technology and Research: https://www.ijcat.com/.
  • ACM: https://dl.acm.org/.

 

Academic Year: