COMPUTER ENGINEERING
Bachelor TR-NQF-HE: Level 6 QF-EHEA: First Cycle EQF-LLL: Level 6

Ders Genel Tanıtım Bilgileri

Course Code: 1410121002
Ders İsmi: Programming II
Ders Yarıyılı: Spring
Ders Kredileri:
Theoretical Practical Credit ECTS
2 2 3 3
Language of instruction: TR
Ders Koşulu: 1410111001 - Programlama I | BIM101 - Programlamaya Giriş I
1410111001 - Programlama I | BIM101 - Programlamaya Giriş I | BIM102 - Programlamaya Giriş II
1410111001 - Programlama I | BIM101 - Programlamaya Giriş I | BIM102 - Programlamaya Giriş II
Ders İş Deneyimini Gerektiriyor mu?: No
Type of course: Necessary
Course Level:
Bachelor TR-NQF-HE:6. Master`s Degree QF-EHEA:First Cycle EQF-LLL:6. Master`s Degree
Mode of Delivery: Face to face
Course Coordinator : Dr.Öğr.Üyesi Recep DURANAY
Course Lecturer(s): Dr.Öğr.Üyesi Recep DURANAY
Course Assistants:

Dersin Amaç ve İçeriği

Course Objectives: This course teaches students the basics of C ++ programming language in goal oriented programming.
Course Content: In this course, students will learn the basic principles of object oriented program development using the C ++ programming environment. The topics of the course include fundamentals of program design and algorithm development strategies, classes, objects, data members, methods, abstract data types, operator loading, inheritance and polymorphism. Object oriented programming techniques such as the application of inheritance and polymorphism in object design will also be discussed in the course.

Learning Outcomes

The students who have succeeded in this course;
Learning Outcomes
1 - Knowledge
Theoretical - Conceptual
1) Students will be able to express the term abstraction in program design.
2 - Skills
Cognitive - Practical
1) Students will be able to define the principles of object oriented design in programming.
2) Students will be able to develop programs using objects in the C ++ programming language.
3) Students will be able to apply the concept of polymorphism in program development with the C ++ programming language.
3 - Competences
Communication and Social Competence
Learning Competence
Field Specific Competence
1) Students will be able to use the technique of inheritance in classroom designs with the C ++ programming language.
Competence to Work Independently and Take Responsibility

Ders Akış Planı

Week Subject Related Preparation
1) Introduction to C ++ Basics: From C to C ++ programming language. C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
2) Introduction to Object Oriented Programming: Classes, objects, member functions and data members; Lab # 1. C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
3) Classes: Class space, auxiliary functions, constructors and destructors, friend functions and friend classes, "this" pointer, static class members, data abstraction and information hiding; Lab # 2. C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
4) Inheritance Part I: Introduction to inheritance, base classes and derived classes, "protected" members; Lab # 3. C++ How to Program: (Early Objects Version), Global Edition (İngilizce) by Deitel & Deitel
5) Inheritence II. Section: Relationship between base classes and derived classes, “public”, “protected” and “private” inheritance; Lab # 4. C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
6) Inheritence III. Section: Applications of inheritance; Lab # 5. C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
7) Polymorphism Part I: Introduction to polymorphism, virtual functions C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
8) Midterm
9) Dynamic linking, polymorphism examples C++ How to Program: (Early Objects Version), Global Edition (İngilizce) by Deitel & Deitel
10) Polymorphism Part II: Abstract classes and pure virtual functions; Lab # 6 C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
11) Polymorphism III. Section: Polymorph applications; Lab # 7. C++ How to Program: (Early Objects Version), Global Edition (İngilizce) by Deitel & Deitel
12) Operator Loading: Basics of operator loading, global function versus operator functions as class members C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
13) Flow addition and flow subtraction operators, loading unary operators, loading binary operators C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
14) Flow In / Out: Streams, stream out, stream in C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
15) Flow regulators; Lab # 8. C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
16) Final

Sources

Course Notes / Textbooks: C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson
References: C++ Early Objects 10/e, Tony Gaddis, Judy Walters, Godfrey Muganda; Pearson

Ders - Program Öğrenme Kazanım İlişkisi

Ders Öğrenme Kazanımları

1

2

3

5

4

Program Outcomes
1) PO 1.1) Sufficient knowledge in mathematics, science and computer engineering
2) PO 1.2) Ability to apply theoretical and applied knowledge in mathematics, science and computer engineering for modeling and solving engineering problems.
3) PO 2.1) Identifying complex engineering problems
4) PO 2.2) Defining complex engineering problems
5) PO 2.3) Formulating complex engineering problems
6) PO 2.4) Ability to solve complex engineering problems
7) PO 2.5) Ability to choose and apply appropriate analysis and modeling methods
8) PO 3.1) Ability to design a complex system, process, device or product to meet specific requirements under realistic constraints and conditions.
9) PO 3.2) Ability to apply modern design methods under realistic constraints and conditions for a complex system, process, device or product
10) PO 4.1) Developing modern techniques and tools necessary for the analysis and solution of complex problems encountered in engineering applications
11) PO 4.2) Ability to select and use modern techniques and tools necessary for the analysis and solution of complex problems encountered in engineering applications
12) PO 4.3) Ability to use information technologies effectively.
13) PO 5.1) Examination of complex engineering problems or discipline-specific research topics, designing experiments
14) PO 5.2) Examination of complex engineering problems or discipline-specific research topics, experimentation
15) PO 5.3 ) Analysis of complex engineering problems or discipline-specific research topics, data collection
16) PO 5.4) Analyzing the results of complex engineering problems or discipline-specific research topics
17) PO 5.5) Examining and interpreting complex engineering problems or discipline-specific research topics

Ders - Öğrenme Kazanımı İlişkisi

No Effect 1 Lowest 2 Low 3 Average 4 High 5 Highest
           
Program Outcomes Level of Contribution
1) PO 1.1) Sufficient knowledge in mathematics, science and computer engineering 5
2) PO 1.2) Ability to apply theoretical and applied knowledge in mathematics, science and computer engineering for modeling and solving engineering problems.
3) PO 2.1) Identifying complex engineering problems
4) PO 2.2) Defining complex engineering problems
5) PO 2.3) Formulating complex engineering problems
6) PO 2.4) Ability to solve complex engineering problems
7) PO 2.5) Ability to choose and apply appropriate analysis and modeling methods
8) PO 3.1) Ability to design a complex system, process, device or product to meet specific requirements under realistic constraints and conditions.
9) PO 3.2) Ability to apply modern design methods under realistic constraints and conditions for a complex system, process, device or product
10) PO 4.1) Developing modern techniques and tools necessary for the analysis and solution of complex problems encountered in engineering applications
11) PO 4.2) Ability to select and use modern techniques and tools necessary for the analysis and solution of complex problems encountered in engineering applications
12) PO 4.3) Ability to use information technologies effectively.
13) PO 5.1) Examination of complex engineering problems or discipline-specific research topics, designing experiments
14) PO 5.2) Examination of complex engineering problems or discipline-specific research topics, experimentation
15) PO 5.3 ) Analysis of complex engineering problems or discipline-specific research topics, data collection
16) PO 5.4) Analyzing the results of complex engineering problems or discipline-specific research topics
17) PO 5.5) Examining and interpreting complex engineering problems or discipline-specific research topics

Öğrenme Etkinliği ve Öğretme Yöntemleri

Course
Labs
Homework

Ölçme ve Değerlendirme Yöntemleri ve Kriterleri

Yazılı Sınav (Açık uçlu sorular, çoktan seçmeli, doğru yanlış, eşleştirme, boşluk doldurma, sıralama)
Homework
Uygulama

Assessment & Grading

Semester Requirements Number of Activities Level of Contribution
Laboratory 10 % 10
Homework Assignments 10 % 10
Midterms 1 % 20
Semester Final Exam 1 % 60
total % 100
PERCENTAGE OF SEMESTER WORK % 40
PERCENTAGE OF FINAL WORK % 60
total % 100

İş Yükü ve AKTS Kredisi Hesaplaması

Activities Number of Activities Duration (Hours) Workload
Course Hours 14 2 28
Laboratory 14 2 28
Study Hours Out of Class 14 4 56
Homework Assignments 14 2 28
Midterms 1 2 2
Final 1 3 3
Total Workload 145