Study-Unit Description

Study-Unit Description


CODE CIS2201

 
TITLE Object Oriented Programming (Java and C# for .NET Framework Platform)

 
UM LEVEL 02 - Years 2, 3 in Modular Undergraduate Course

 
MQF LEVEL 5

 
ECTS CREDITS 5

 
DEPARTMENT Computer Information Systems

 
DESCRIPTION This study-unit will introduce students to design and implementation of computer applications based on Object Oriented paradigm supported by two world leading platforms, Java and .NET Framework. For the .NET network platform C# is chosen as the most frequently used and powerful language.

Part 1:

The first part of the study-unit is focused to the development of skills to write well designed application programs by implementing all elements of the object-oriented paradigm. The programs will be developed as Console applications to force students to concentrate on the concepts of object orientation.

Topics in brief:
Concepts of Classes, Objects and Interfaces. Application of Abstraction, Encapsulation, Inheritance and Polymorphism of objects and methods. Arrays and Collections. Files and Streams. Software reuse. Error handling using Exceptions.

Part 2:

The second part of the study-unit is focused to application of the skills developed in part I to write Windows based Applications using event driven control.

Topics in brief:
Structure of Windows application and concept of event-driven control as opposed to procedure-driven control. Simple I/O. Design of GUI including Window components (menus, dialogues, visual collection components etc.). Interfaces and Delegates.

Part 3:

- Creation of customized components;
- Multithreading;
- Introduction to Web Services, simple applications;
- .NET Reflection.

Introduction to Regular Expressions

Available visual tools (MS Visual Studio NET) will be used for implementation of these Applications. (Delphi tool will be used for minor illustrations at the end of the study-unit).

Study-unit Aims:

The aim is to study and apply features of Object Oriented paradigm to the development of application programs and software for both (Java and C# .NET) platforms. The reason behind is that the implementation of the OO paradigm differs in the two languages. Both basic and advanced features will be taught and also implemented in various, typical, types of applications, (both stand alone and distributed) while using appropriate object libraries and Integrated Development Tools supporting rapid software development.

Learning Outcomes:

1. Knowledge & Understanding:
By the end of the study-unit the student will be able to:

- Describe how the OO paradigm features such as Abstraction, Encapsulation, Inheritance and Polymorphism of both objects and methods are implemented and differ in both Java and C# languages;
- Differentiate between event-driven control as opposed to procedure-driven control;
- Explain and demonstrate event driven handling way of processing with Window Components (Controls);
- Understand and apply important OOP constructs such as interfaces and delegates;
- Explain and use retrospective way of getting objects data and methods programmatically (Reflection);
- Explain and demonstrate concept of software re-use and extension;
- Explain way of handling errors using Exceptions.

2. Skills:
By the end of the study-unit the student will be able to:

- Apply knowledge of OO design to develop and implement object oriented application programs using user defined classes;
- Design and implement OO applications of Windows type using event driven handling;
- Develop user classes with the aim of their future re-use;
- Incorporate event handlers to user-created classes;
- Develop user designed Window Components(Controls) based on available language components;
- Create user-developed libraries;
- Use higher data structures such as arrays and collections as well as Streams to store objects on persistent media;
- Develop concurrently processing applications using Threads;
- Develop client applications consuming Web Services as well as applications providing Web services;
- Use IDE tools for development (e.g. Visual Studio, NetBeans).

Main Text/s and any supplementary readings:

- Ferguson J. et al C# Bible Wiley Publishing, Inc. 2002 ISBN 0-7645-4834-4
- Deitel H.M et al C# 2010 for Programmers (4th Edition), Prentice Hall, November 2010 ISBN-10: 0132618206
- Deitel H.M et al Visual C# 2010 How to Program (4th Edition) , Prentice Hall November 2010 ISBN-10: 0132151421
- K Litwak Pure Java 2 SAMS, ISBN 0-672-31654-4
- Deitel H.M et al Java: How to Program, 8th Edition Prentice Hall March 2009 ISBN-10: 0136053068
- Deitel H.M et al C# for Experienced Programmers, Prentice Hall ISBN 0130461334
- G Booch Object Oriented Analysis and Design with Applications, 2nd edition Addison-Wesley Professional 1993

 
ADDITIONAL NOTES Students taking this study-unit need to have a technical background

 
STUDY-UNIT TYPE Lecture and Practical

 
METHOD OF ASSESSMENT
Assessment Component/s Sept. Asst Session Weighting
Assignment Yes 30%
Examination (2 Hours) Yes 70%

 
LECTURER/S NnaEmeka Emmanuel Chukwu
Christopher Porter (Co-ord.)

 

 
The University makes every effort to ensure that the published Courses Plans, Programmes of Study and Study-Unit information are complete and up-to-date at the time of publication. The University reserves the right to make changes in case errors are detected after publication.
The availability of optional units may be subject to timetabling constraints.
Units not attracting a sufficient number of registrations may be withdrawn without notice.
It should be noted that all the information in the description above applies to study-units available during the academic year 2024/5. It may be subject to change in subsequent years.

https://www.um.edu.mt/course/studyunit