COMPUTER EDUCATION AND INSTRUCTIONAL TECHNOLOGIES | |||||
Bachelor | TR-NQF-HE: Level 6 | QF-EHEA: First Cycle | EQF-LLL: Level 6 |
Course Code | Course Name | Semester | Theoretical | Practical | Credit | ECTS |
CMP1002 | Object Oriented Programming (C++) | Spring | 2 | 2 | 3 | 6 |
Language of instruction: | English |
Type of course: | Must Course |
Course Level: | Bachelor’s Degree (First Cycle) |
Mode of Delivery: | Face to face |
Course Coordinator : | MEHMET ŞÜKRÜ KURAN |
Course Lecturer(s): |
RA ÇİĞDEM ERİŞ Dr. Öğr. Üyesi CEMAL OKAN ŞAKAR Dr. Öğr. Üyesi ERKUT ARICAN Dr. Öğr. Üyesi ÖVGÜ ÖZTÜRK ERGÜN Dr. Öğr. Üyesi TARKAN AYDIN Instructor BARIŞ ERDOĞAN |
Recommended Optional Program Components: | None...... |
Course Objectives: | This course provides in-depth coverage of object-oriented programming principles and techniques using C++. Topics include classes, overloading, data abstraction, information hiding, encapsulation, inheritance, polymorphism, file processing, templates |
The students who have succeeded in this course; 1. Understand the basics of OOP features 2. Become familiar with classes and objects 3. Be able to understand pointers to objects 4. Be able to define function and class templates 5. Be able to use operator overloading 6. Be able to apply inheritance principle 7. Be able to apply polymorphism principle 8. Be able to use file input and output features |
1:C++ language features 2:Introduction to Classes and Objects 3:Classes and Objects 4:Introduction to Pointers 5:Classes a Deeper Look, Part 1 6:cont. Classes a Deeper Look, Part 1 7:Classes a Deeper Look, Part 2 8:cont. Classes a Deeper Look, Part 2 9:Defining Classes – Class Definitions / Information Hiding and Encapsulation 10:Operator Overloading 11:OOP: Inheritance 12:OOP: Polymorphism 13:File Input Output 14:Templates |
Week | Subject | Related Preparation |
1) | Introduction to Classes and Objects | None |
2) | Classes in Depth, Encapsulation (information hiding) | Previous topics should be reviewed. Brief information on class definitions should be obtained. |
3) | Destructors, Copy Constructors, Default Memberwise Assignment | Previous topics should be reviewed. Basic class examples must be written with C++. |
4) | Strings and String Operations in C++ | The sizes of the variable types in C++ and the storage types in memory unit of the computer must be investigated. |
5) | Function Overloading, Operator Overloading | Classes must be reviewed. |
6) | More Details about Classes (const object, member initializer list, friend keyword, etc.) | C++ programs containing classes must be developed with a C++ compiler. |
7) | Composition | |
8) | Midterm | |
9) | File Operations | Previous topics should be reviewed. Brief information on file operations and file types should be obtained. |
10) | Dynamic Memory Management, Static Classes | Previous topics should be reviewed. Brief information on class definitions / information hiding and encapsulation should be obtained. |
11) | Inheritance | |
12) | Polymorphism | Previous topics should be reviewed. |
13) | Templates | |
14) | Review of topics, Examples of Software Development with OOP | Previous topics should be reviewed. |
Course Notes / Textbooks: | C++ How to Program by Paul Deitel and Harvey Deitel |
References: | The C++ Programming Language by Bjarne Stroustrup |
Semester Requirements | Number of Activities | Level of Contribution |
Attendance | 14 | % 5 |
Quizzes | 3 | % 15 |
Midterms | 1 | % 30 |
Final | 1 | % 50 |
Total | % 100 | |
PERCENTAGE OF SEMESTER WORK | % 50 | |
PERCENTAGE OF FINAL WORK | % 50 | |
Total | % 100 |
Activities | Number of Activities | Duration (Hours) | Workload |
Course Hours | 14 | 2 | 28 |
Laboratory | 14 | 2 | 28 |
Quizzes | 3 | 12 | 36 |
Midterms | 1 | 22 | 22 |
Final | 1 | 26 | 26 |
Total Workload | 140 |
No Effect | 1 Lowest | 2 Low | 3 Average | 4 High | 5 Highest |
Program Outcomes | Level of Contribution | |
1) | To define concepts related to the latest knowledge, tools and other scientific resources for the teaching profession, educational technology and information technologies in terms of national and international standards. | |
2) | To explain the main elements of teaching strategies, methods and techniques, material design and assessment and evaluation processes that affect the development of educational technology integration. | |
3) | To develop competencies related to software languages, operating systems, computer networks and computer hardware. | 5 |
3) | To use the most appropriate curriculum frameworks to plan lessons and activities based on active and student-centered learning integrated with technology. | |
4) | To use the most appropriate curriculum frameworks to plan lessons and activities based on active and student-centered learning integrated with technology. | 3 |
5) | To plan, implement and evaluate classroom activities that utilize cutting-edge technologies to foster creativity, problem solving and critical thinking using scientific methods. | |
6) | To build strong theoretical and applied models to develop solutions to problems that focus on systems and human development within a learning organization. | |
7) | To review, evaluate and recommend strategies for technology integration based on the interests, needs, individual differences and developmental characteristics of students in primary and secondary education. | |
8) | To work individually and collaboratively in a team to carry out activities related to educational technology, information technology and the teaching profession in an interdisciplinary approach. | 4 |
9) | To effectively use and evaluate educational technologies and appropriately designed instructional models as a means of achieving and meeting learning objectives and requirements. | 3 |
10) | To utilize effective metacognitive techniques to make the classroom a community of learners engaged in lifelong learning activities. | |
11) | To prepare trainings and projects related to educational technology for the community and to provide counseling to individuals in enhancing learning through the appropriate use of technology. | 3 |
12) | To implement cost and time sensitive strategies to support individuals and organizations to carry out their work more effectively. | |
13) | To equip teachers to be pioneers and models in the application of technology for educational purposes using ethical and legal standards and to keep pace with changing technology. | |
14) | To investigate efficient design solutions and existing standards used today for educational technologies, curricula, innovations and outcomes related to work, school, education sector and virtual world. | 3 |
15) | To gain fluency in interpersonal communication, teaching frameworks and the use of different technologies in relation to national norms and laws. | 4 |