Skip to main content

Fullstack ProgrammingLaajuus (5 cr)

Code: 4A00HB49

Credits

5 op

Objectives

The objective of the course is to provide competence in the web development techniques, with which to develop modern web applications. The students learn comprehensive set of skills for building dynamic web applications. The course provides a well-rounded understanding of the entire web development process.

In addition to gaining hands-on experience with popular web technologies, students will also learn best practices for project management, collaboration and product deployment. By the end of the course, learners will have the ability to plan, design, and implement full-stack web applications that meet the needs of modern users.

Students will learn how to build responsive and interactive web interfaces, create APIs for data management, and implement user authentication and authorization. The hands-on approach will help students develop the critical thinking and problem-solving skills necessary to succeed in the rapidly evolving field of web development.

After completing the course, the student is able to
• implement a full-stack web-based application.
• use modern web development techniques.
• work in a project-based software development with others.
• publish software using e.g. cloud services.

Content

• Dynamic full-stack web applications
• Project-based software development
• Software deployment

Prerequisites

Introduction to Programming
Advanced Databases

Assessment criteria, satisfactory (1-2)

The student
• can build small-scale full-stack applications.
• can work in a project and publish software.

Assessment criteria, good (3-4)

The student
• can build versatile full-stack applications that utilize technologies comprehensively.
• can work in a project in active roles in developing operating models
• can respond to the planning and implementation of software releases.

Assessment criteria, excellent (5)

The student
• can build extensive full-stack applications that utilize a wide range and variety of technologies extensively, such as authentication and data management (e.g. ORM).
• can evaluate and adopt various technologies for project-specific tasks (e.g. version control, testing, deployment, virtualization, containers).