Al-Isra University Faculty of Information Technology Department of CS Course Plan ___________________________________________________________________________________ Course No.: 605225 Course Name: Object Oriented Paradigms Course Website: Course Classification: Department Compulsory (CIS,CS,SE) Time Division: 2 Lectures +2 Practical Hours Semester &Year: Summer, 2014/2015 Course Description (3 credit hours, Prerequisite: 605113/ Programming Fundamentals) Introduction to OOP, models, objects, methods, links, message passing, polymorphism, dynamic binding, classes constructors and destructors, association, generalization and specialization, inheritance, overridden methods, aggregation. Students are required to perform some lab experiments using the latest C# language version and UML. Course Intended Outcomes At the end of the course, students are expected to learn: OOP terminology and concepts. Applying OOP using C# and UML. Writing challenging applications in C#. Using OO methodologies. Course Outline Week 1 1st Lecture Course plan Classes and Objects UML Diagrams Predefined & User defined Classes 2nd Lecture Lab Developing OOP applications Driver (client) Class Object reference variable Invoking Methods String Example Encapsulation 2 3 4 Encapsulation Die class Instance data Visibility modifiers Constructors Destructor Accessors and Mutators The toString Method The Static modifier Method design and decomposition Example(1) Method Overloading Dependency between Objects Inheritance 5 6 Deriving Subclasses Example: words program 1st Exam Coin Class Example Method declaration Data Scope The this Reference Bank Account Example Die class Bank Account Example Objects as parameters Example(2) Example(1) Example(2) Aggregation Relationship ClubMember Example Theoretical Quiz#1 ClubMember Example Practical Quiz#1 The protected modifier The base reference Multiple Inheritance Example 1st Practical Exam Words program Al-Isra University Faculty of Information Technology Department of CS Course Plan ___________________________________________________________________________________ 7 Overriding Methods Example Overloading vs. Overriding Class Hierarchies Object Class Example Abstract class Abstract class in UML Interface Hierarchies Visibility revisited Example Designing for inheritance Inheritance design issues Restricting Inheritance Theoretical Quiz#2 Example Practical Quiz#2 Reference and Inheritance Polymorphism vs. Inheritance Polymorphism Example Polymorphism 8 Binding 2nd Exam Interfaces 9 The comparable Interfaces Polymorphism Example Example of Interfaces The Iterator Interface Polymorphism vs. Interface 2nd Practical Exam Example of Interfaces Final Exam Textbook 1. C# 2010 FOR PROGRAMMERS FOURTH EDITION DEITEL® DEVELOPER SERIES Suggested references 1. Beginning C# Object-Oriented Programming (Expert's Voice in .NET) 2. http://www.blackwasp.co.uk/csharpobjectoriented.aspx 3. http://java.sun.com/docs/books/tutorial/ 4. Java How to Program, Harvey M. Deitel, Paul J. Deitel. Sixth Edition, Prentice Hall, 2004. 5. Java programming Notes: http://www.leepoint.net/notes-C#/index.html Marking First Exam Second Exam Activity Final Exam 15 marks (theoretical), 10 marks (Lab) 15 marks (theoretical), 10 marks (Lab) 10 marks 40 marks Assignments and/or Projects Assignments / Projects Quizzes H.W Programming Projects Description After each milestone As specified each lecture To be discussed Due Date See the above schedule Within 28 hours 9 Jan Marking 40% of Activity Mark 20% of Activity Mark 40% of Activity Mark Regulations 1. 2. 3. There will NOT be any makeup for quizzes Attendance is mandatory and University regulations will be enforced. All Cheating incidents will be reported to the chair. The following activities are considered cheating: a. Turning in assignment that includes parts of someone else's work. b. Turning in someone else’s assignment as your own. c. Giving assignment to someone else to turn in as their own. d. Copying answers in a test or quiz. e. Taking a test or quiz for someone else. f. Having someone else take a test or quiz for you. 4. See Student handbook for other regulations. Al-Isra University Faculty of Information Technology Department of CS Course Plan ___________________________________________________________________________________ Required Tools/Software JSDK (1.5 or higher) [http://C#.sun.com/j2se] TextPad 5 [www.textpad.com] Emailing Guidelines: 1. 2. 3. 4. All homework, assignments, projects, etc., are sent by email to the email address shown below (under Instructor’s Information). Be sure to send them before the due date. Fill in the subject field of the email using the following format: CS301_Family-Name_First-Name_Subject, where: a) CS301 is abbreviation for the course. Other courses should have similar abbreviations b) Family-Name and First-Name are replaced by your family name and your first name. c) Subject is replaced by the title of the assignment, project, etc. You may also use the email to ask questions about the course. In this case, just type the world “question” in the place of _Subject as described in 3-c above. Instructors' information Section: 2 Lecture Room: 4137 Lab: 4321 Instructor's Name: Dr. Jamal Zraqou Office No.: 4130 Email: jamal_sam@iu.edu.jo Office Hours: 09:00 -10:00 (Thr) 1:50-2:50 (Mon, Wen, Thr ) Other office hours are available by appointment Important: The content of this syllabus may not be changed during the current semester. Instructor Council Chair