Skip to main content

Fundamentals of Client-Side Programming LanguageLaajuus (5 cr)

Code: 4A00HB46

Credits

5 op

Objectives

The aim of the course is to equip students with a profound understanding of a front-end programming language, providing a solid foundation for effective programming skills and the development of modern web applications.

Upon completing the course, the student will be able to:

• Create and maintain project structures, understanding the significance of project management in software development.
• Master the principles of code quality assurance, being able to implement and utilize tools for identifying code errors and adhering to style guidelines.
• Understand the basics of the language, including syntax, variables, data types, and basic structures, reinforcing the foundation for quality code writing.
• Develop skills in utilizing objects and functions, effectively encapsulating data structures and functionalities.
• Understand and apply asynchronous programming, mastering event-driven programming paradigms and the management of asynchronous operations.
• Deepen understanding of object-oriented programming principles, including concepts of objects, classes, and inheritance, applying them in practical programming tasks.
• Handle modules, promoting code modularization and reusability, enhancing software maintainability and scalability.
• Analyze and apply concepts of inheritance and prototype chain, forming a strong foundation for understanding relationships between objects and inheritance of properties in software development.

Content

The course content focuses on general principles and practices of software development, which include:

• Project management and maintenance
• Code quality checking and adherence to standards
• Key structures and paradigms of the programming language
• Code modularization, reusability, and maintainability
• Fundamentals and practices of asynchronous programming
• Key concepts of object-oriented programming and design principles

Prerequisites

Introduction to Programming

Assessment criteria, satisfactory (1-2)

The student can thoroughly use the syntax and structures of the programming language taught. They understand the basic concepts of modules, objects, and functions, and can implement simple asynchronous operations. The student demonstrates their ability in basic code quality assurance and project management.

Assessment criteria, good (3-4)

The student masters the advanced features of the programming language taught and has a deeper understanding of the principles of asynchronous programming. They can proficiently apply the principles of object-oriented programming and modular programming, ensuring efficient code reuse and maintainability. The student demonstrates the ability to apply code quality assurance methods in complex environments and manages projects effectively in demanding situations.

Assessment criteria, excellent (5)

The student demonstrates a profound understanding of the concepts and principles underlying the programming language being taught. This understanding enables the student to solve complex problems effortlessly. They adeptly apply various programming paradigms and techniques and master code quality assurance and project management at the highest level. A deep understanding of asynchronous programming and modular design empowers the student to implement and optimize complex applications.

Enrolment period

09.06.2025 - 07.09.2025

Timing

01.08.2025 - 31.12.2025

Credits

5 op

Mode of delivery

Contact teaching

Unit

Business Information Systems

Campus

TAMK Main Campus

Teaching languages
  • Finnish
Degree programmes
  • Degree Programme in Business Information Systems
Teachers
  • Jussi Pohjolainen
Person in charge

Teemu Heinimäki

Groups
  • 24TIKOOT1

Objectives (course unit)

The aim of the course is to equip students with a profound understanding of a front-end programming language, providing a solid foundation for effective programming skills and the development of modern web applications.

Upon completing the course, the student will be able to:

• Create and maintain project structures, understanding the significance of project management in software development.
• Master the principles of code quality assurance, being able to implement and utilize tools for identifying code errors and adhering to style guidelines.
• Understand the basics of the language, including syntax, variables, data types, and basic structures, reinforcing the foundation for quality code writing.
• Develop skills in utilizing objects and functions, effectively encapsulating data structures and functionalities.
• Understand and apply asynchronous programming, mastering event-driven programming paradigms and the management of asynchronous operations.
• Deepen understanding of object-oriented programming principles, including concepts of objects, classes, and inheritance, applying them in practical programming tasks.
• Handle modules, promoting code modularization and reusability, enhancing software maintainability and scalability.
• Analyze and apply concepts of inheritance and prototype chain, forming a strong foundation for understanding relationships between objects and inheritance of properties in software development.

Content (course unit)

The course content focuses on general principles and practices of software development, which include:

• Project management and maintenance
• Code quality checking and adherence to standards
• Key structures and paradigms of the programming language
• Code modularization, reusability, and maintainability
• Fundamentals and practices of asynchronous programming
• Key concepts of object-oriented programming and design principles

Prerequisites (course unit)

Introduction to Programming

Assessment criteria, satisfactory (1-2) (course unit)

The student can thoroughly use the syntax and structures of the programming language taught. They understand the basic concepts of modules, objects, and functions, and can implement simple asynchronous operations. The student demonstrates their ability in basic code quality assurance and project management.

Assessment criteria, good (3-4) (course unit)

The student masters the advanced features of the programming language taught and has a deeper understanding of the principles of asynchronous programming. They can proficiently apply the principles of object-oriented programming and modular programming, ensuring efficient code reuse and maintainability. The student demonstrates the ability to apply code quality assurance methods in complex environments and manages projects effectively in demanding situations.

Assessment criteria, excellent (5) (course unit)

The student demonstrates a profound understanding of the concepts and principles underlying the programming language being taught. This understanding enables the student to solve complex problems effortlessly. They adeptly apply various programming paradigms and techniques and master code quality assurance and project management at the highest level. A deep understanding of asynchronous programming and modular design empowers the student to implement and optimize complex applications.

Assessment scale

0-5

Enrolment period

09.06.2025 - 07.09.2025

Timing

01.08.2025 - 31.12.2025

Credits

5 op

Mode of delivery

Contact teaching

Unit

Business Information Systems

Campus

TAMK Main Campus

Teaching languages
  • Finnish
Degree programmes
  • Degree Programme in Business Information Systems
Teachers
  • Jussi Pohjolainen
Person in charge

Jussi Pohjolainen

Groups
  • 24TIKOOT2

Objectives (course unit)

The aim of the course is to equip students with a profound understanding of a front-end programming language, providing a solid foundation for effective programming skills and the development of modern web applications.

Upon completing the course, the student will be able to:

• Create and maintain project structures, understanding the significance of project management in software development.
• Master the principles of code quality assurance, being able to implement and utilize tools for identifying code errors and adhering to style guidelines.
• Understand the basics of the language, including syntax, variables, data types, and basic structures, reinforcing the foundation for quality code writing.
• Develop skills in utilizing objects and functions, effectively encapsulating data structures and functionalities.
• Understand and apply asynchronous programming, mastering event-driven programming paradigms and the management of asynchronous operations.
• Deepen understanding of object-oriented programming principles, including concepts of objects, classes, and inheritance, applying them in practical programming tasks.
• Handle modules, promoting code modularization and reusability, enhancing software maintainability and scalability.
• Analyze and apply concepts of inheritance and prototype chain, forming a strong foundation for understanding relationships between objects and inheritance of properties in software development.

Content (course unit)

The course content focuses on general principles and practices of software development, which include:

• Project management and maintenance
• Code quality checking and adherence to standards
• Key structures and paradigms of the programming language
• Code modularization, reusability, and maintainability
• Fundamentals and practices of asynchronous programming
• Key concepts of object-oriented programming and design principles

Prerequisites (course unit)

Introduction to Programming

Assessment criteria, satisfactory (1-2) (course unit)

The student can thoroughly use the syntax and structures of the programming language taught. They understand the basic concepts of modules, objects, and functions, and can implement simple asynchronous operations. The student demonstrates their ability in basic code quality assurance and project management.

Assessment criteria, good (3-4) (course unit)

The student masters the advanced features of the programming language taught and has a deeper understanding of the principles of asynchronous programming. They can proficiently apply the principles of object-oriented programming and modular programming, ensuring efficient code reuse and maintainability. The student demonstrates the ability to apply code quality assurance methods in complex environments and manages projects effectively in demanding situations.

Assessment criteria, excellent (5) (course unit)

The student demonstrates a profound understanding of the concepts and principles underlying the programming language being taught. This understanding enables the student to solve complex problems effortlessly. They adeptly apply various programming paradigms and techniques and master code quality assurance and project management at the highest level. A deep understanding of asynchronous programming and modular design empowers the student to implement and optimize complex applications.

Assessment scale

0-5