You are on page 1of 4

1.

Name of Course/Module: Object Oriented Programming


2. Course Code: CCP313
3. Rationale for the inclusion of the course/module in the programme :

Understanding object-oriented programming is essential for any Java programmer. The


object-oriented approach continues to sweep the software industry, becoming the
dominant approach to large-scale, adaptable, and reusable systems development. Hence,
students have to take this course in order to prepare themselves for future challenges and
to strengthen their skills in programming.

4. Semester and Year offered: Semester 3 Year 1


5. Credit Value: 3
6. Prerequisite (if any): None
7. Objectives:
The objectives of this course are to:
 Show the key features of object-oriented technology available in Java language.
 Demonstrate and use problem solving skills to solve programming problems in order
to complete a development of any applications developed using Java technology.
 Demonstrate appropriate algorithm, basic notions, data structures and graphical
interfaces with Java correctly and effectively using team skills strategy.
 Show a real world problem and its solutions using problem skills in Java.
 Expose the state-of-the-art of Java technology and web programming using Java
programming techniques.
8. Learning outcomes:
Upon completion, the students should be able to:
 Identify and operate the key features of object-oriented technology available in Java
language.
 Apply problem solving skills to solve programming problems in order to complete a
development of any applications developed using Java technology.
 Select appropriate algorithm, basic notions, data structures and graphical interfaces
with Java correctly and effectively using team skills strategy.
 Interpret a real world problem using problem solving skills in Java.
 Communicate the state-of-the-art of Java technology and web programming using
Java programming techniques.
9. Transferable Skills:
Creativity – Students are taught to think creatively what would be the problems
surround them that can be solved using computer programming.

Communication – Students are taught how to explore the programming software,


and communicate with others.

Project – Students are given an exposure to work on a project which can be


individual or team basis on programming tasks.

Technical – Students are taught on how to use all programming techniques to


accomplish given tasks.

Programming in Java – Students are taught how to build a program that can solve
different problems.
10. Teaching-learning and assessment strategy:
Teaching-learning
 Lectures – lectures are conducted weekly that cover every topic stated in the
course outline. Lectures also promote active and interactive learning with
students where mutual participation in question and answer and short discussion
are expected.
 Laboratory – the lab session is used to teach Java to the students. The course is
conducted in the computer laboratory equipped with Java tools.

Assessment
 Exam – It is a written form of summative assessment.
 Quiz – It is a written form of formative assessment that may be conducted during
the lecture period.
 Assignments - Students will be evaluated by a practical assignments or
theoretical report.
 Project – Students will involve in a project activity and have to complete outside
of the classroom. It may be assigned to an individual or group level. Marks will be
given based on the fulfillment to the assessment criteria of the project.
 Presentation – Students will be assessed on the communication ability and a
product of the project they have developed.

11. Synopsis:

The Java language is and object oriented programming language and platform. It contains
language facilities and libraries for networking and designed to execute code from remote
sources securely. The Java language introduces some new features that did not exist in
other languages like C and C++. Students will understand the object-oriented features of
Java and how they relate to concepts from object-oriented design by using the object-
oriented features of Java to efficiently implement abstract data-structures with clean and
simple interfaces. The object-oriented features of Java to implement object-oriented
designs of reasonable size and complexity. With this languages student will understand
the basic principles used to implement the abstract data structures and graphical
interfaces in Java.
12. Mode of Delivery
Lectures and Practical laboratory

13. Assessment Methods and Types


Continuous assessment: 60%
Final exam: 40%

14. Mapping of the course/module to the Programme Aims


 Competent information and communication technology practitioner with solid
theoretical and practical knowledge in the area of information technology.
 IT professional who is a proficient in communicating the state-of-the-art in
information technology.

15. Mapping of the course/module to the Programme Learning Outcomes


 Able to apply knowledge and skills in the field of information and communication
technology management
 Able to solve real world problem using information and communication
technology approach and techniques
 Able to be participate in a project-based assignment at individual or team level.
 Able to express ideas and opinions effectively in various communication style,
tools and media.

16. Content outline of the course/module and the SLT per topic
Topics
1. FUNDAMENTALS OF PROGRAMMING
1.1 Introduction to Computers, Programs, and
Java
1.2 Primitive Data Types and Operations
1.3 Selection Statements
1.4 Loops
1.5 Methods
1.6 Arrays

2. OBJECT-ORIENTED PROGRAMMING
2.1 Objects and Classes
2.2 Strings and Text I/O
2.3 Inheritance and Polymorphism
2.4 Abstract Classes and Interfaces
 Object-Oriented Design

3. GUI PROGRAMMING
3.1 Getting Started with GUI Programming
3.2 Graphics
3.3 Event-Driven Programming
3.4 Creating User Interfaces
3.5 Applets and Multimedia

4. EXCEPTION HANDLING, I/O, AND RECURSION


4.1 Exceptions and Assertions
4.2 Binary I/O
4.3 Recursion

5. DATA STRUCTURES
5.1 Lists, Stacks, Queues, Trees, and Heaps
5.2 Generics
5.3 Java Collections Framework, Algorithm
Efficiency and Sorting

6. CONCURRENCY, NETWORKING, AND


INTERNATIONALIZATION
6.1 Multithreading
6.2 Networking
6.3 Internationalization

7. ADVANCED GUI PROGRAMMING


7.1 JavaBeans and Bean Events
7.2 Containers, Layout Managers, and Borders
7.3 Menus, Toolbars, Dialogs, and Internal
Frames
7.4 MVC and Swing Models
7.5 JTable and JTree
8. WEB PROGRAMMING
8.1 Java Database Programming
8.2 Advanced Java Database Programming
8.3 Servlets
8.4 JavaServer Pages
8.5 Remote Method Invocation

17. Main references supporting the course:

 McAffer, J., Vanderlei, P., & Archer, S. (2010). Creating highly modular JAVA systems,
Oxford : Pearson Education.

Additional references supporting the course

 Bloch, J. (2008). Effective JAVA. (2nd Ed.). Oxford : Pearson Education.

 Liang, Y. D. (2006). Introduction to JAVA programming-comprehensive version (6th


Ed.). New Jersey : Prentice Hall.

 Gries & Gries. (2005). Multimedia introduction to programming using JAVA. New
York : Springer.

18. Other additional information


None

You might also like