KLAIPĖDA UNIVERSITY STUDY MODULE PROGRAMME

1. Name of the Module: Programming 9 0 8 0 0 3 Department: Computer Science 9 0 8 2. Duration of the Module (hours per term) Study form Lectures Classes Laboratory Independent work Maximum number of Practical work, students individual During the During Credits During During classes term exams classses Laboratory work and individual classes Full time 48 32 32 24 3 15 Evening 48 32 32 24 3 15 Distance

3. Coordinator (teacher) Doc. dr. Vitalijus Denisovas 0 5 2 2 Teaching staff: assist. Aidas Šmaižys 4 4 5 8 assist. Birutė Rataitė 4 7 2 5

(position, degree, name, surname)

4. Group of the Modules 5. Study level 6. Language of instruction General education X Bachelor X Lithuanian X Fundamentals Special Professional English Specialisation Master Russian Doctoral German Other:

7. The Module to be taught to Code of the Study Programme Name of the Study Programme Term P - Compulsory A - Elective 6 1 2 0 9 P 1 0 5 Informatics 2 P

8. Aims, Objectives and Skills to be Provided This module continues to provide students with systematic fundamental knowledge about programming, programming languages and modern programming technologies and is aimed to develop professional skills of object-oriented programming using modern visual programming environments (IDE) and graphical user interface (1.5, 1.6.1, 1.6.6.). The module provides students with cognitive abilities of combining the elements of theory and practice (2.1, 2.5) while individually working with a real programming task in a computer lab (3.3.3, 3.4, 3.5) and to theoretically understand new technologies (2.4). It cultivates transferable skills of logical thinking and of using algorithm, the skills of solving problems (4.4) as well as supports developing of learning skills indispensable for continuous professional growth (4.10) and raises intellectual attitudes, such as creativity, innovative approach, enthusiasm, discipline, and motivation (4.11). It also ensures the acquisition of specific skills such as to meet the to meet the requirements of the client in the designing and implementation of software (5.1) and the ability to design novel software products (5.3) and to professionally employ the software systems (5.4).

9. Module Description* (<200 words) The module extends students knowledge of programming languages by presenting C language properties in an easy to understand comparative way. Then it presents object-oriented programming (OOP) principles, explains main features of objects and classes such as encapsulation, inheritance, polymorphism, early and late binding, virtual methods and others. More complex OOP elements like metaclasses, parametric classes, containers, etc. are also discussed and used. Finally, it looks more in-depth at principles of OOP programming in modern graphical event-driven environments like MS Windows. During laboratory work students apply theoretical knowledge and develop practical skills working with OOP languages (mainly C++) and using typical modern visual programming environments (Borland C++ Builder, MS Visual C++, and/or others.) to develop MS Windows applications.

Contact 10. Lecture Subjects* hours Comparison of Pascal and C program structure, control and data structures. C language operations 3 and their priorities. C data types and their transformations. Pointers and address arithmetic. 4 Structured data types. Preprocessor. Functions. 4 From structural and modular programming to the Object-Oriented Programming (OOP). Object 4 concept, objects and classes. Object-oriented languages: Object Pascal, C ++ and others. Objects and classes. Operations with objects, messages. Object-oriented programming principles 6 and properties: encapsulation, inheritance, polymorphism, early and late binding, virtual methods. Class construction mechanisms and examples in C++ and Object Pascal. 5 Elements of modern OOP models: meta-classes, containers, parameterisation, exceptions. 4 Programming in Delphi and C++ Builder/MS Visual C++ environments, configuring projects. 4 Forms and visual components (VCL). Events-driven programming, graphical user interface. Applied program structure in MS Windows 5 environment. Windows API. Graphical components and multimedia, introductory animation. 3 Data exchange and processing means. 3 Detection of errors, exceptions. Debugging of OO software. 3

11. Contents of the Laboratory work and classes The first part of laboratory works in a computer lab includes teacher explanation of a certain topic and a set of instructional tasks to be solved (programmed) by students in C/C++ language. During the second part of the laboratory works students are guided through the incremental development of more and more complex application in MS Windows environment. Finally, they have to develop their own applications on individual basis and to present it for final assessment.

12. Teaching methods Comparative overview of the subject and series of regular lectures. Practical classes in a computer lab with initial explanation of the laboratory work topic by the teacher. Individual programming and assessment. The electronic teaching materials are also available for students form the KU virtual learning environment.

* Study module descriprion is published in the Study Programmes Book of the Klaipėda University. 13. Attendance Attendance (no more than 0,1 in the final mark) 3 times not attended ≈-0,1 40 not attended – talked-about in the Department

14. Grading procedure The 10 point scale system and accumulative assessment are employed. Student’s independent term work is graded and the final grade is derived during the exam.

15. Student‘s independent work during the term Task format and subjects Assessment period Hours per Percentage (part) (month) term in the final mark Practical work in a computer lab and at home. September – 16 0,25 Presentation of lab work results to the teacher. November Development of an individual application and December 16 0,25 its presentation for assessment. Total: 32 0,5

16. Exam and Final Grading 16.1 Part of final mark (<= 0,5) 0,5 16.2 Form of Exam (written, verbal) Written 16.3 Duration of Exam (hours) 2 16.4 Description of exam content: test (quiz) of 10 questions, conversation if required.

17. Prerequisites Name Code Name Code Introduction to Programming 9 0 8 0 0 2

Number of 18. Literature recommended copies in the library 1. Vidžiūnas A. C++ ir C++ Builder pradmenys. K.: Smaltija, 2002.-316 p. 25 2. Vidžiūnas A. C++ duomenų tipai ir struktūros. K.: VDU, 1998.– 240 p. 5 3. Vidžiūnas A. Delphi 5 programavimas ir vaizdiniai komponentai. K.: Smaltija, 2001.-322 p. 25 4. Vidžiūnas A., Blonskis J., Bukšnaitis V., Barzdaitis V. Delphi 5 programavimo pavyzdžiai. 25 K.: Technologija, 2000.– 188 p. 5. V. Denisovas. Programavimas. Electronic teaching materials in VLE: http://www.vma.ku.lt/ Available 6. J. Blonskis, V.Bukšnaitis, J. Končienė, D.Rubliauskas. C++ praktikumas. Mokomoji knyga. 2 Kaunas: Technologija, 2001. - 168 p. 7. Г.С. Иванова, Т.Н. Ничушкина, Е.К. Пугачев. Объектно-ориентированное Department программирование. М.: МГТУ, 2001. 320 с. 8. Г. Шилдт. Самоучитель C++, 3-е изд. СПб.: BHV, 1998. –688 с. Department 9. У. Мюрей, К. Паппас. Visual C++. Руководство для профессионалов. СПб.: BHV, Department 1998. –912 с. 10. А.И. Касаткин, А.Н. Вальвачев. От Turbo С к Borland С++: Справочное пособие. Мн.: 2 Вышэйшая школа, 1992. –240 с. 11. Д. Рассохин. От Си к Си++. М.: Эдель, 1993. -128 с. 2 12. Архангельский А.Я. Разработка прикладных программ для Windows в Delphi 5. 2 М.:БИНОМ, 1999. –256 с. Coordinator (teacher): doc. dr. V. Denisovas 2005-10-24 (position, degree, name, surname) (signature) (date of completion) Head of the Computer Science Department: (Name of Department responsible) Doc. dr. V. Denisovas...... 200 5-10-24. (position, degree, name, surname) (signature) (signing date) Module is accredited until: 2008. 09. 01. (data) Chair of the Modules Accreditation Committee of the Faculty of Natural Sciences and Mathematics: prof. habil. dr. D. Švitra ...... (position, degree, name, surname) (signature)