logo
korczak.xyz

Backend JavaScript Programming

Backend JavaScript Programming

The course is designed for beginners in programming. The course is divided into five parts: programming basics, advanced language features, TypeScript, backend tools in JS, and programming project. Each of these parts is described below. The course consists of mentor meetings and student's own work between meetings.

Student's own work between meetings

  • Familiarization with the theoretical part of the next topic
  • Solving of tasks to consolidate previously discussed topics

Mentor meeting

  • Discussion of issues requiring further explanation
  • Code review of tasks completed by the student, aimed at directing towards good programming practices
  • Introduction to the next topic
  • Tips for solving more difficult tasks

Course parts:

1. Programming basics

In this part of the course, we progress from the first "Hello world," through variables, data types, operators, conditional statements, loops, objects, and arrays, up to functions. These concepts are common to all programming languages, and a good understanding and mastery of them is crucial to continue learning.

2. Advanced language features

After mastering the programming basics, the student can move on to more advanced concepts such as:

  • Anonymous functions
  • Asynchronous programming
  • Exceptions
  • Unit testing
  • Modules
  • Object-oriented programming
  • npm dependency management
  • Environment management

These topics must be discussed to be able to read and create more advanced code. This is also important because the above concepts are used in frameworks/libraries which are the focus of the next part of the course.

3. TypeScript

TypeScript is a language that contains additional syntax for managing types in written code. This is necessary if the code is to be of high quality and stable in production deployments.

4. Backend tools in JavaScript

This part of the course focuses on getting to know the tools used to create backend applications in JS. This can be ExpressJS, GCP SDK, Azure SDK, or 0Auth. The choice of technology depends on the student's needs.

5. Programming project

The best way to consolidate knowledge is to use it in practice. Therefore, the last part of the course is the student's independent execution of a programming project. The goal is to write an application from scratch that will implement the functionalities defined by the student. Both the conceptual process - what the application should do - and the process of creating and deploying the application will be supported by the mentor. This will allow for practice in writing code according to specification, managing tasks, using GIT, deployment, and testing of the written code.