a- Knowledge and Understanding :-
On completing this course, students will be able to :-
a1- Understand basic principles of object-oriented program design.
a2- Understand the basic and some advanced issues related to writing classes and methods - such as data, visibility, scope, parameters passing, object references, and nested classes.
a3- Understand the basic ideas behind class hierarchies, polymorphism, and programming to interfaces.
a4- Understand basic principles, main features and operations of abstract data types
b-Intellectual Skills :-
At the end of this course, the students will be able to :-
b1- Use structured and object-oriented techniques in designing programs.
b2- put in practice the acquired knowledge and understanding of language and object-oriented design in relatively simple case studies.
b3- develop an implementations of abstract data types using different approaches, and evaluate their differences.
b4- Creat an GUI using high level language.
c-Professional Skills :-
On completing this course, the students are expected to be able to :-
c1- Read and store data in a file.
c2- competently read 'foreign' source code and analyze object and class hierarchies.
d-General Skills :-
At the end of this course, the students will be able to :-
d1- The ability to work effectively as an individual, in teams and in multidisciplinary settings together with the capacity to undertake lifelong learning.
d2- The ability to design and conduct experiments and to analyze and interpret data.