Computer Programming (Evening Education) | |||||
Associate | TR-NQF-HE: Level 5 | QF-EHEA: Short Cycle | EQF-LLL: Level 5 |
Course Code: | MYO052 | ||||
Course Name: | Advanced Web Development Methods | ||||
Semester: | Spring | ||||
Course Credits: |
|
||||
Language of instruction: | Turkish | ||||
Course Condition: | |||||
Does the Course Require Work Experience?: | No | ||||
Type of course: | Departmental Elective | ||||
Course Level: |
|
||||
Mode of Delivery: | Face to face | ||||
Course Coordinator: | Öğr. Gör. AHMET SELİM ÖVER | ||||
Course Lecturer(s): | Öğr. Gör. Ramazan Bakır | ||||
Course Assistants: |
Course Objectives: | The aim of this course is to provide students with fundamental knowledge and skills to develop web applications using Node.js. Students will gain in-depth understanding of integration with popular web frameworks like Express.js and NoSQL databases like MongoDB. Additionally, the course focuses on advanced topics such as security, performance optimization, and real-time applications, aiming to empower students to enhance their web development abilities at a professional level. |
Course Content: | The main objective of this course is to provide students with the fundamental knowledge and skills to develop web applications using Node.js. Participants will gain in-depth knowledge on topics such as Express.js, a popular web framework, and MongoDB, one of the NoSQL databases. Additionally, the course will focus on advanced topics like security, performance optimization, and real-time applications, enabling students to enhance their web development skills at a professional level. |
The students who have succeeded in this course;
1) Understanding what is Node.js 2) Ability to create and manage Express.js applications. 3) To be able to apply RESTful API design principles. 4) Ability to perform CRUD operations on MongoDB. 5) Being able to perform database operations and take security measures. 6) Being able to configure the Express.js application in an advanced way. 7) Ability to implement real-time communication using Socket.io. 8) Familiarity with advanced topics, such as GraphQL and Docker. |
Week | Subject | Related Preparation |
1) | Orientation & What is Node.js? Why should we use Node.js? | None |
2) | Node.js installation & Review of basic JavaScript concepts | None |
3) | What is Express.js? & Basic route and middleware concepts | None |
4) | Express.js application structure & Creating and managing routes | None |
5) | Basics of HTTP & Designing RESTful APIs / Creating APIs with Express.js | None |
6) | What is MongoDB? &MongoDB installation and basic usage | None |
7) | Integrating Mongoose with MongoDB & Performing CRUD operations on MongoDB | None |
8) | Midterm | 1-7. Weeks |
9) | User authentication / Using JSON Web Tokens (JWT) | None |
10) | Database operations and security measures | None |
11) | Using Express middleware, project structuring and modularization & Advanced configuration of Express.js applications | None |
12) | What is WebSocket? / Using Socket.io | None |
13) | WebSocket integration for real-time communication & application deployment and hosting management | None |
14) | Performance optimization & Security best practices & Advanced topics: GraphQL, Docker, etc. | None |
15) | Final | 1-14. Weeks |
Course Notes / Textbooks: | NODEJS - KODLAB YAYIN ve Mehmet Canker |
References: | https://www.udemy.com/course/komple-web-gelistirme-kursu-nodejs/ |
Course Learning Outcomes | 1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
|||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Program Outcomes | |||||||||||||
1) He gains the ability of problem solving and analytical thinking skills. | |||||||||||||
2) He learns the fundamentals of computer programming, hardware and software and the basic computer concepts. | |||||||||||||
3) He develops algorithms according to the problems, gains the ability to distinguish the appropriate ones from the fundamental algorithms for the problem. | |||||||||||||
4) He understands object-oriented programming concept and web programming. | |||||||||||||
5) He learns radix systems, fundamental electronics and computer hardware knowledge. | |||||||||||||
6) He gains mobile programming skills and develops applications for mobile platforms. | |||||||||||||
7) He designs and codes databases. | |||||||||||||
8) He learns to program and use computer networks, open source operating systems. | |||||||||||||
9) He uses the English language effectively. | |||||||||||||
10) He learns to use appropriate data structures according to programming requirements. | |||||||||||||
11) He develops software individually or as a team. | |||||||||||||
12) He follows developments in the field, high technology tools / applications. | |||||||||||||
13) He gains awareness of professional and ethical responsibility and has an awareness of professional ethics. |
No Effect | 1 Lowest | 2 Average | 3 Highest |
Program Outcomes | Level of Contribution | |
1) | He gains the ability of problem solving and analytical thinking skills. | 3 |
2) | He learns the fundamentals of computer programming, hardware and software and the basic computer concepts. | 3 |
3) | He develops algorithms according to the problems, gains the ability to distinguish the appropriate ones from the fundamental algorithms for the problem. | 3 |
4) | He understands object-oriented programming concept and web programming. | 3 |
5) | He learns radix systems, fundamental electronics and computer hardware knowledge. | 3 |
6) | He gains mobile programming skills and develops applications for mobile platforms. | 3 |
7) | He designs and codes databases. | 3 |
8) | He learns to program and use computer networks, open source operating systems. | 3 |
9) | He uses the English language effectively. | 3 |
10) | He learns to use appropriate data structures according to programming requirements. | 3 |
11) | He develops software individually or as a team. | 3 |
12) | He follows developments in the field, high technology tools / applications. | 3 |
13) | He gains awareness of professional and ethical responsibility and has an awareness of professional ethics. | 3 |
Semester Requirements | Number of Activities | Level of Contribution |
Quizzes | 1 | % 15 |
Midterms | 1 | % 35 |
Final | 1 | % 50 |
total | % 100 | |
PERCENTAGE OF SEMESTER WORK | % 50 | |
PERCENTAGE OF FINAL WORK | % 50 | |
total | % 100 |
Activities | Number of Activities | Preparation for the Activity | Spent for the Activity Itself | Completing the Activity Requirements | Workload | ||
Course Hours | 3 | 7 | 1 | 24 | |||
Quizzes | 1 | 15 | 15 | ||||
Midterms | 1 | 20 | 1 | 21 | |||
Final | 1 | 25 | 1 | 26 | |||
Total Workload | 86 |