Computer Programming (Evening Education) | |||||
Associate | TR-NQF-HE: Level 5 | QF-EHEA: Short Cycle | EQF-LLL: Level 5 |
Course Code: | MYO042 | ||||
Course Name: | Web Development Techniques | ||||
Semester: | Fall | ||||
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 main purpose of this course is to teach students modern web development techniques and provide in-depth knowledge, especially focusing on the React library. The course covers the basic concepts of React, component-based development approach, interaction between components, and data management. In this way, students will improve their ability to create modular, sustainable and extensible web applications. |
Course Content: | The content of the course focuses on API communication, routing and navigation, aiming to provide students with the skills of extracting data from external sources, creating navigation experiences in web applications and managing user interactions. By addressing advanced topics such as State management and Redux, it aims to help students gain competence in state management in large-scale applications. In the project development part, it aims to provide students with the opportunity to put the knowledge they have learned into practice and gain working experience in real-world scenarios. Additionally, test writing and quality assurance topics aim to provide students with the opportunity to learn about improving software development processes and creating maintainable code. |
The students who have succeeded in this course;
1) Understanding the use of React and JSX. 2) Ability to use React component structure, Ability to communicate data with props and state. 3) Understanding the concept of event handling in React. 4) Ability to redirect pages using React Router. 5) Ability to communicate data with APIs using Fetch API and Axios. 6) Understanding state management using Context API and Redux. 7) Ability to use basic React Hooks (useState, useEffect, etc.). 8) Ability to develop a React project using the topics learned. 9) Ability to write tests in React applications. 10) In-depth understanding of React Hooks & Knowledge of React middleware and async operations. |
Week | Subject | Related Preparation |
1) | What is React? Why is it used? & JSX (JavaScript XML) Basics | None |
2) | React First Application: "Hello World" | None |
3) | React Component Structure / Props and State Concepts | None |
4) | Component Lifecycle Methods | None |
5) | State Kullanımı ve State Yönetimi | None |
6) | Event Handling in React / Form Transactions | None |
7) | Parent-Child Relations & Child-Parent Communication, Communication Between Components | None |
8) | Midterm | 1,2,3,4,5,6,7 |
9) | React Router Library | None |
10) | Page Redirects and Navigation | None |
11) | Fetch API Usage, Using Axios, Data Communication with APIs | None |
12) | Context API, Redux Basics, Redux Middleware and Async Transactions | None |
13) | Developing a Project Using the Information Learned, Writing Tests in React, React Hooks | None |
14) | General Review of the Course and Advanced Resources | None |
15) | Final | All Weeks |
Course Notes / Textbooks: | React Tamamen Uygulamalı ve Güncel - Uğur GELİŞKEN |
References: | https://www.btkakademi.gov.tr/portal/course/react-ile-web-programciligi-10035 ENGİN DEMİROĞ |
Course Learning Outcomes | 1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
|||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Program Outcomes | |||||||||||||
1) He gains the ability of problem solving and analytical thinking skills. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |||
2) He learns the fundamentals of computer programming, hardware and software and the basic computer concepts. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 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 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |||
4) He understands object-oriented programming concept and web programming. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |||
5) He learns radix systems, fundamental electronics and computer hardware knowledge. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |||
6) He gains mobile programming skills and develops applications for mobile platforms. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |||
7) He designs and codes databases. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |||
8) He learns to program and use computer networks, open source operating systems. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |||
9) He uses the English language effectively. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |||
10) He learns to use appropriate data structures according to programming requirements. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |||
11) He develops software individually or as a team. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |||
12) He follows developments in the field, high technology tools / applications. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |||
13) He gains awareness of professional and ethical responsibility and has an awareness of professional ethics. | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 |
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 | 5 | 1 | 18 | |||
Quizzes | 1 | 15 | 1 | 16 | |||
Midterms | 1 | 20 | 1 | 21 | |||
Final | 1 | 30 | 1 | 31 | |||
Total Workload | 86 |