ECTS - Study of Programming Languages
Study of Programming Languages (CMPE325) Course Detail
| Course Name | Course Code | Season | Lecture Hours | Application Hours | Lab Hours | Credit | ECTS | 
|---|---|---|---|---|---|---|---|
| Study of Programming Languages | CMPE325 | Area Elective | 3 | 0 | 0 | 3 | 6 | 
| Pre-requisite Course(s) | 
|---|
| CMPE225 | 
| Course Language | English | 
|---|---|
| Course Type | Elective Courses | 
| Course Level | Natural & Applied Sciences Master's Degree | 
| Mode of Delivery | Face To Face | 
| Learning and Teaching Strategies | Lecture. | 
| Course Lecturer(s) |  | 
| Course Objectives | The objective of this course is to teach different programming language concepts and paradigms, such as imperative, functional, and object-oriented paradigms. The students will be able to compare how different programming concepts are handled in different type of languages. The students get a chance to apply their knowledge by completing homework assignments written in example programming languages. | 
| Course Learning Outcomes | The students who succeeded in this course; 
 | 
| Course Content | Study of programming language concepts: syntax and semantics, types, values, expressions, and statements; program structure; procedures and functions; structured data; abstraction and encapsulation; inheritance; dynamic binding; concepts of programming paradigms by means of functional, procedural, and object-oriented programming languages. | 
Weekly Subjects and Releated Preparation Studies
| Week | Subjects | Preparation | 
|---|---|---|
| 1 | Preliminaries and Introduction | Chapter 1 (main text) | 
| 2 | Syntax and Semantics | Chapter 3.1, 3.2, 3.3 | 
| 3 | Lexical and Syntax Analysis | Chapter 4.1, 4.2, 4.3, 4.4 | 
| 4 | Names, Bindings, Type Checking, Scopes | Chapter 5 | 
| 5 | Names, Bindings, Type Checking, Scopes | Chapter 5 | 
| 6 | Data Types, Expressions | Chapter 6 | 
| 7 | Expressions and Assignment Statements | Ana ders kitabı Bölüm 7 | 
| 8 | Statement Level Control Structures | Chapter 8 | 
| 9 | Subprograms | Chapter 9 | 
| 10 | Subprograms | Chapter 9 | 
| 11 | Implementing Subprograms | Chapter 10 | 
| 12 | Abstract Data Types and Encapsulation | Chapter 12 | 
| 13 | Functional Programming | Chapter 15 | 
| 14 | Functional Programming | Chapter 15 | 
| 15 | Review | |
| 16 | Review | 
Sources
| Course Book | 1. Robert W. Sebesta, Concepts of Programming Languages, 10th Edition, Pearson, 2012. ISBN #978-0-321-50968-0. | 
|---|---|
| Other Sources | 2. David A. Watt, Programming Language Design Concepts, Wiley, 2004. | 
| 3. http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html | |
| 4. http://www.python.org/ | |
| 5. http://www.haskell.org/ | |
| 6. http://www.haskell.org/haskellwiki/Definition | 
Evaluation System
| Requirements | Number | Percentage of Grade | 
|---|---|---|
| Attendance/Participation | - | - | 
| Laboratory | - | - | 
| Application | - | - | 
| Field Work | - | - | 
| Special Course Internship | - | - | 
| Quizzes/Studio Critics | - | - | 
| Homework Assignments | 3 | 10 | 
| Presentation | - | - | 
| Project | - | - | 
| Report | - | - | 
| Seminar | - | - | 
| Midterms Exams/Midterms Jury | 2 | 55 | 
| Final Exam/Final Jury | 1 | 35 | 
| Toplam | 6 | 100 | 
| Percentage of Semester Work | 65 | 
|---|---|
| Percentage of Final Work | 35 | 
| Total | 100 | 
Course Category
| Core Courses | X | 
|---|---|
| Major Area Courses | |
| Supportive Courses | |
| Media and Managment Skills Courses | |
| Transferable Skill Courses | 
The Relation Between Course Learning Competencies and Program Qualifications
| # | Program Qualifications / Competencies | Level of Contribution | ||||
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 1 | Applies knowledge of mathematics, science, and engineering | X | ||||
| 2 | Designs and conducts experiments, analyzes and interprets experimental results. | |||||
| 3 | Designs a system, component, or process to meet specified requirements. | |||||
| 4 | Works effectively in interdisciplinary fields. | |||||
| 5 | Identifies, formulates, and solves engineering problems. | X | ||||
| 6 | Has awareness of professional and ethical responsibility. | |||||
| 7 | Communicates effectively. | |||||
| 8 | Recognizes the need for lifelong learning and engages in it. | X | ||||
| 9 | Has knowledge of contemporary issues. | |||||
| 10 | Uses modern tools, techniques, and skills necessary for engineering applications. | |||||
| 11 | Has knowledge of project management skills and international standards and methodologies. | |||||
| 12 | Develops engineering products and prototypes for real-world problems. | |||||
| 13 | Contributes to professional knowledge. | |||||
| 14 | Conducts methodological and scientific research. | |||||
| 15 | Produces, reports, and presents a scientific work based on original or existing knowledge. | |||||
| 16 | Defends the original idea generated. | |||||
ECTS/Workload Table
| Activities | Number | Duration (Hours) | Total Workload | 
|---|---|---|---|
| Course Hours (Including Exam Week: 16 x Total Hours) | 16 | 3 | 48 | 
| Laboratory | |||
| Application | |||
| Special Course Internship | |||
| Field Work | |||
| Study Hours Out of Class | 14 | 3 | 42 | 
| Presentation/Seminar Prepration | |||
| Project | |||
| Report | |||
| Homework Assignments | 3 | 8 | 24 | 
| Quizzes/Studio Critics | |||
| Prepration of Midterm Exams/Midterm Jury | 2 | 10 | 20 | 
| Prepration of Final Exams/Final Jury | 1 | 15 | 15 | 
| Total Workload | 149 | ||
