DEPARTMENT OF SOFTWARE ENGINEERING (ENGLISH)
Bachelor TR-NQF-HE: Level 6 QF-EHEA: First Cycle EQF-LLL: Level 6

Ders Genel Tanıtım Bilgileri

Course Code: 1400111003
Ders İsmi: Programming I
Ders Yarıyılı: Fall
Ders Kredileri:
Theoretical Practical Credit ECTS
2 2 3 3
Language of instruction: EN
Ders Koşulu:
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 Adem ÖZYAVAŞ
Course Lecturer(s): Dr.Öğr.Üyesi Adem ÖZYAVAŞ
Course Assistants:

Dersin Amaç ve İçeriği

Course Objectives: This course is designed for students with no programming experience. The course teaches the fundamental concepts of procedural programming and the fundamentals of introductory level object-oriented programming. Topics include algorithms and problem solving, data types, control structures, functions, arrays, testing, and finding errors.
Course Content: The course assumes no knowledge in computer programming. It introduces the students to the basic concepts and techniques of developing programs for problem solving. Imperative/procedural/structured programming methodology is used throughout the course to teach the fundamentals of programming. In this course, students learn how to design, implement, debug, and document programs. It establishes the foundation on which students are able to develop application programs using the C programming language.

Learning Outcomes

The students who have succeeded in this course;
Learning Outcomes
1 - Knowledge
Theoretical - Conceptual
2 - Skills
Cognitive - Practical
1) Implementing the developed algorithms with C / C ++ language
2) Student will be able to analyze codes in C programming language.
3 - Competences
Communication and Social Competence
Learning Competence
Field Specific Competence
1) Developing algorithms to solve simple problems
Competence to Work Independently and Take Responsibility
1) The student designs C programs that include decision structures, loops and functions.

Ders Akış Planı

Week Subject Related Preparation
1) Introduction to programming C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
2) Lexical elements, operators and the C system; Basic data types; LAB # 1. C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
3) Flow control Part I: Operators, expressions and binary algebra concepts; if, ifelse and switch commands; LAB # 2. C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
4) Flow control Part II: for, while, dowhile, break, continue and goto commands; LAB # 3. C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
5) Functions Part I: Notification, definition, signature, pre-product, initialization, title concepts, return commands; LAB # 4. C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
6) Functions Part II: Calling by value, scope, storage classes, recursion concepts, recursive functions; LAB # 5. C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
7) Arrays and pointers Part I: Arrays, initialization, pointers, calling by reference, dynamic memory management concepts. C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
8) MIDTERM C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
9) Arrays and pointers Part II: The concept of arrays, multidimensional arrays and pointer arrays, arguments to be given to the main program; LAB # 6. C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
10) Array and pointer applications; LAB # 7. C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
11) Structures Part I: Declarations and applications of simple structures C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
12) Structures Part II: Using struct arrays and developing advanced applications using constructs; LAB # 8. C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
13) Pointers C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
14) Pointers C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
15) File opening modes and file entry and exit operations C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik
16) Final C++ programming : From Program Analysis to Program design 8. basım. By D. S. Malik

Sources

Course Notes / Textbooks: The C Programming Language, by Dennis Ritchie and Brian Kernighan
References: The C Programming Language, Dennis Ritchie ve Brian Kernighan

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

Ders Öğrenme Kazanımları

1

2

4

3

Program Outcomes
1) Competent knowledge of mathematics, science and technology, and computer engineering; ability to apply this knowledge to engineering solutions.
2) Skills to design and conduct experiments, collect data, analyze and interpret results.
3) Ability to design a complex system, process, device or product under realistic constraints and conditions to meet specific requirements; ability to apply modern design methods for this purpose.
4) Ability to develop, select and use modern techniques and tools required for analysis and solution of complex problems encountered in engineering practice; ability to use information technologies effectively.
5) Ability to design and conduct experiments, collect data, analyze and interpret results to investigate complex engineering problems or discipline-specific research topics.
6) Ability to work effectively in intra-disciplinary and multi-disciplinary teams; ability to work individually.
7) Ability to communicate effectively in Turkish, both orally and in writing; Knowledge of at least one foreign language; the ability to write and understand written reports effectively, to prepare design and production reports, to make effective presentations, to give and receive clear and understandable instructions.
8) Awareness of the necessity of lifelong learning; the ability to access information, to follow developments in science and technology, and to constantly renew oneself.
9) Acting in accordance with ethical principles, professional and ethical responsibility awareness; information about standards used in engineering applications.
10) Information about business life practices such as project management, risk management and change management; awareness of entrepreneurship, innovation; information about sustainable development.
11) Knowledge about the universal and social effects of engineering applications on health, environment and safety and the problems of the age reflected in the field of engineering; awareness of the legal consequences of engineering solutions.

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

No Effect 1 Lowest 2 Low 3 Average 4 High 5 Highest
           
Program Outcomes Level of Contribution
1) Competent knowledge of mathematics, science and technology, and computer engineering; ability to apply this knowledge to engineering solutions.
2) Skills to design and conduct experiments, collect data, analyze and interpret results. 3
3) Ability to design a complex system, process, device or product under realistic constraints and conditions to meet specific requirements; ability to apply modern design methods for this purpose.
4) Ability to develop, select and use modern techniques and tools required for analysis and solution of complex problems encountered in engineering practice; ability to use information technologies effectively. 3
5) Ability to design and conduct experiments, collect data, analyze and interpret results to investigate complex engineering problems or discipline-specific research topics. 5
6) Ability to work effectively in intra-disciplinary and multi-disciplinary teams; ability to work individually.
7) Ability to communicate effectively in Turkish, both orally and in writing; Knowledge of at least one foreign language; the ability to write and understand written reports effectively, to prepare design and production reports, to make effective presentations, to give and receive clear and understandable instructions.
8) Awareness of the necessity of lifelong learning; the ability to access information, to follow developments in science and technology, and to constantly renew oneself.
9) Acting in accordance with ethical principles, professional and ethical responsibility awareness; information about standards used in engineering applications.
10) Information about business life practices such as project management, risk management and change management; awareness of entrepreneurship, innovation; information about sustainable development.
11) Knowledge about the universal and social effects of engineering applications on health, environment and safety and the problems of the age reflected in the field of engineering; awareness of the legal consequences of engineering solutions.

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

Bireysel çalışma ve ödevi
Course
Grup çalışması ve ödevi
Labs
Homework
Web Tabanlı Öğrenme

Ö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 % 5
Homework Assignments 3 % 15
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