Skip to main content
TR

PROGRAMMING LANGUAGES

Course
CMPE501 - PROGRAMMING LANGUAGES
Department
Computer Engineering - English - Master
Course Type
Course
Status
Required
Language
English
Credit
3
ECTS
0
T+P+L
3 + 0 + 0
Course Coordinator(s)
Asst. Prof. Dr. Tolga YIRTICI
Prerequisite
-
Keywords

Course Description

Brief historical perspective. Understanding and using Integrated Development Environment (IDE). Java basics, introduction to graphical user interfaces (GUI) for Java, using Swing Components and Java Listeners, Swing dialogue boxes, developing GUI applications, theory of Object Oriented Programming with Unified Modeling Language (UML). Object-Oriented (OO) problem solving, Object-Oriented (OO) concepts (inheritance, composition, abstract classes etc.), object relations, developing Object-Oriented (OO) applications with design patterns, Unit Testing, Project Presentations.

PROGRAMMING LANGUAGES

Evaluation Tools (Active Term)

Item Type Weight (%)
Final Final 50
Project 1 Project 25
Project 2 Project 25
Total 100

Course outcomes

  1. 01 Design and develop software using object oriented design and programming methods
  2. 02 Practice UML Class diagrams to effectively create object oriented design models
  3. 03 Using persistency and database features alongside with programming
  4. 04 Using advanced features such as XML Parsing and Text file processes with programming langauges
  5. 05 Practice Parallel programming features such as threats and objects
  6. 06 Practice the fundamentals of Network and Socket Programming

Course Syllabus

Week Topic
Week 1 Introduction to Java Language and Eclipse IDE,
Week 2 Java statements, datatypes and debugging
Week 3 Object Oriented Programming & Concepts
Week 4 JavaFX and GUI Development
Week 5 JavaFX and GUI Development Cont.
Week 6 Working with multiple Windows and Dialogs
Week 7 Collections in Advanced Programming: Sets, Lists and Queue
Week 8 Midterm Exam
Week 9 Midterm Exam
Week 10 Database Connections (Apache Derby - JDBC): Select, Insert, Delete, Update operations.
Week 11 Threads, Semaphore, Mutex, Synchronization
Week 12 Text, Binary, Random Access Files
Week 13 Class serialization, Logging
Week 14 Socket programing
Week 15 Design Patterns

Reference Books & Course Materials

  1. 01 Java: The Complete Reference, Ninth Edition, 2016
  2. 02 Java: A Beginner's Guide, Eighth Edition 8th Edition, 2018
  3. 03 More Java 17: An In-Depth Exploration of the Java Language and Its Features 3rd ed. Edition by Kishori Sharan, Peter Späth, 2021

Learning Outcomes

  1. L01 Design and develop software using object oriented design and programming methods
  2. L02 Practice UML Class diagrams to effectively create object oriented design models
  3. L03 Using persistency and database features alongside with programming
  4. L04 Using advanced features such as XML Parsing and Text file processes with programming langauges
  5. L05 Practice Parallel programming features such as threats and objects
  6. L06 Practice the fundamentals of Network and Socket Programming

Program Outcomes

  1. Based on bachelor's-level qualifications, be able to develop and deepen knowledge at the level of specialization in the same or a different field.
  2. Should be able to understand and appreciate the interdisciplinary interactions related to their field.
  3. Should be able to apply expert-level theoretical and practical knowledge acquired in their field.
  4. Should be able to integrate knowledge from their field with knowledge from other disciplines, interpret it, and generate new knowledge.
  5. Should be able to resolve problems encountered in their field through the application of appropriate research methods.
  6. Should be able to independently carry out research or professional work that requires expertise in their field.
  7. Should be able to develop innovative strategic approaches for resolving complex and unpredictable problems encountered in their field of practice and take responsibility for producing effective solutions.
  8. Should be able to demonstrate leadership in environments where solving problems related to their field is required.
  9. Should be able to critically assess the advanced knowledge and skills acquired in their field and manage their own learning processes.
  10. Should be able to systematically present current developments in their field and their own studies, supported by quantitative and qualitative data, to both disciplinary and non-disciplinary audiences through written, oral, and visual communication.
  11. Should be able to critically analyze and enhance social relationships and the norms that shape these relationships, and initiate actions aimed at their transformation when necessary.
  12. Should be able to communicate effectively through oral and written communication in at least one foreign language at the B2 level of the Common European Framework of Reference for Languages (CEFR).
  13. Should be able to utilize information and communication technologies and relevant computer software at an advanced level appropriate to the requirements of their field.
  14. Should be able to manage and evaluate the processes of collecting, interpreting, applying, and communicating data related to their field in accordance with social, scientific, cultural, and ethical values, and promote the understanding of these values.
  15. Should be able to develop strategies, policies, and action plans in areas related to their field and assess the results obtained in accordance with quality assurance processes.
  16. Should be able to apply the advanced knowledge acquired in their field, along with problem-solving and application skills, in interdisciplinary studies.

Po-Lo Matrix

LO Average
L01 - - - - - - - - - - - - - - - - -
L02 - - - - - - - - - - - - - - - - -
L03 - - - - - - - - - - - - - - - - -
L04 - - - - - - - - - - - - - - - - -
L05 - - - - - - - - - - - - - - - - -
L06 - - - - - - - - - - - - - - - - -