ECTS - Advanced Network Programming
Advanced Network Programming (CMPE536) Course Detail
Course Name | Course Code | Season | Lecture Hours | Application Hours | Lab Hours | Credit | ECTS |
---|---|---|---|---|---|---|---|
Advanced Network Programming | CMPE536 | Area Elective | 3 | 0 | 0 | 3 | 5 |
Pre-requisite Course(s) |
---|
N/A |
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 introduce students to advanced network programming concepts. |
Course Learning Outcomes |
The students who succeeded in this course;
|
Course Content | Introduction to networking, overview of programming language that will be used to implement course content, threads and multi threading, exceptions, sockets, web sockets, streaming, file streaming, memory I/O streams, object streaming, client-side networking, server-side networking, HTTP networking, message queuing, synchronous and asynchronous com |
Weekly Subjects and Releated Preparation Studies
Week | Subjects | Preparation |
---|---|---|
1 | Basic Network Concepts | Chapter 1 (Text 2) |
2 | Network Communication Protocols and Services | Chapter 3 (Text 1) |
3 | Review of programming language constructs that will be used, exceptions | Chapter 4 (Text 1) |
4 | Threads, concurrency and multi threading. | Chapter 4 (Text 1), Chapter 3 (Text 2) |
5 | Streams, filtering the streams, memory I/O streams | Chapter 2 (Text 2) |
6 | Character streams, object streams | Chapter 2 (Text 2) |
7 | TCP/UDP sockets and programming | Chapter 5 (Text 1) |
8 | Socket based client-server communication | Chapter 6 (Text 1) |
9 | Server-side networking (native and web based) | Chapter 8 (Text 1) & Lecture Notes |
10 | Client-side networking (native and web) | Chapter 9 (Text 1) & Lecture Notes |
11 | Synchronous and asynchronous communication | Chapter 11 (Text 2) |
12 | NETTY like communication control mechanisms | Lecture Notes |
13 | Message Queuing (Producer-consumer architectures) | Lecture Notes |
14 | Multiplexing and routing message streams | Chapter 13 (Text 2) |
15 | Review | |
16 | Review |
Sources
Course Book | 1. “Advanced Network Programming – Principles and Techniques”, Ciubotaru, Bogdan, Muntean, Gabriel-Miro, ISBN 978-1-4471-5292-7 |
---|---|
2. “Java Network Programming”, 4th edition, Elliotte Rusty Harold, 2013, ISBN-10: 1449357679 |
Evaluation System
Requirements | Number | Percentage of Grade |
---|---|---|
Attendance/Participation | - | - |
Laboratory | - | - |
Application | - | - |
Field Work | - | - |
Special Course Internship | - | - |
Quizzes/Studio Critics | - | - |
Homework Assignments | - | - |
Presentation | - | - |
Project | 3 | 30 |
Report | - | - |
Seminar | - | - |
Midterms Exams/Midterms Jury | 1 | 35 |
Final Exam/Final Jury | 1 | 35 |
Toplam | 5 | 100 |
Percentage of Semester Work | 65 |
---|---|
Percentage of Final Work | 35 |
Total | 100 |
Course Category
Core Courses | |
---|---|
Major Area Courses | X |
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 | An ability to apply knowledge of mathematics, science, and engineering. | X | ||||
2 | An ability to design and conduct experiments, as well as to analyse and interpret data. | |||||
3 | An ability to design a system, component, or process to meet desired needs. | X | ||||
4 | An ability to function on multi-disciplinary domains. | |||||
5 | An ability to identify, formulate, and solve engineering problems. | X | ||||
6 | An understanding of professional and ethical responsibility. | X | ||||
7 | An ability to communicate effectively. | |||||
8 | Recognition of the need for, and an ability to engage in life-long learning. | X | ||||
9 | A knowledge of contemporary issues. | X | ||||
10 | An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice. | X | ||||
11 | Skills in project management and recognition of international standards and methodologies | |||||
12 | An ability to produce engineering products or prototypes that solve real-life problems. | X | ||||
13 | Skills that contribute to professional knowledge. | X | ||||
14 | An ability to make methodological scientific research. | |||||
15 | An ability to produce, report and present an original or known scientific body of knowledge. | |||||
16 | An ability to defend an originally produced idea. |
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 | 16 | 3 | 48 |
Presentation/Seminar Prepration | |||
Project | |||
Report | |||
Homework Assignments | 3 | 4 | 12 |
Quizzes/Studio Critics | |||
Prepration of Midterm Exams/Midterm Jury | 1 | 10 | 10 |
Prepration of Final Exams/Final Jury | 1 | 10 | 10 |
Total Workload | 128 |