FI1BDJS05 JavaScript Servers

FI1BDJS05 JavaScript Servers

  • Course description
    • Course code
      FI1BDJS05
    • Level of study
      5.1
    • Program of study
      Back-End Development 1
    • Credits
      5
    • Course coordinator
      Frederick Johannes Botha, Joshua Wiggill
Teaching term(s)
2025 Spring
Authors
Joshua Wiggill
About the Course

The course provides knowledge of concepts, processes and tools of conventions and solutions for setting up a development environment for building server-based JavaScript solutions and deploying those servers on a local computer. Candidates will learn to use the Node runtime and the associated Node Package Manager (NPM). Through NPM, they will explore the JavaScript ecosystem of tools and package management.

 

The focal point of these packages will be the use of external packages to build JavaScript servers. Candidates will be taught how to create, launch and maintain these servers locally on their own machines. These server solutions will encompass the concepts of routing, path variables, parameters and simple endpoints.

The Node runtime is a pivotal component of the JavaScript developer’s toolkit; it is used in many frameworks as part of the development process but is also used as a standalone production server. As projects grow in scope and complexity, they rely more on external packages, and NPM provides a central tool for managing these dependencies within a given project.

Using their prior knowledge and the topics covered in this course, candidates will be able to create server solutions to meet the needs of simple single-purpose applications.

Course Learning Outcomes
Learning outcomes - Knowledge

The candidate:

  • has knowledge of concepts, processes, and tools that are used in Node based JavaScript projects and solutions
  • has knowledge of concepts, processes, and tools that are used in Node Package Manger based project and solutions
  • has knowledge of concepts, processes, and tools of server-based JavaScript solutions
  • has knowledge of the industry of server-based JavaScript solutions and is familiar with the field of work
  • can update his/her vocational knowledge of server-based JavaScript solutions
Learning outcomes - Skills

The candidate:

  • can apply vocational knowledge server-based JavaScript solutions to practical and theoretical solutions
  • masters the use of Node as a tool to develop, deploy, and maintain general purpose JavaScript solutions
  • masters the use of Node as a tool to develop, deploy, and maintain server-based JavaScript solutions
  • masters the use of Node Package Manager
  • masters the use of a server framework for building Node based web servers
  • can find information and material that is relevant to selecting appropriate Node libraries for use in JavaScript solutions
General Competence

The candidate:

  • understands the ethical principles that apply when developing, deploying, and maintaining server-based JavaScript solutions
  • has developed an ethical attitude in relation to the role of JavaScript server developers and maintainers
  • can carry out work as a JavaScript server developer and maintainer
Teaching and Learning

In this course, the following teaching and learning methods can be applied, but are not limited to:

  • Lecture: Educator-led presentations or activities providing knowledge, skills, or general competencies in the subject area.
  • Group work: Collaborative activities where students work together to solve problems or complete tasks.
  • Tutoring: One-on-one or small group sessions with an instructor for personalized guidance and support.
  • Student presentations: Opportunities for students to demonstrate their understanding of course material by presenting to peers.
  • Online lessons: Digital content delivered via an online learning platform.
  • Guidance: Individualized advice and direction from instructors to support students in their learning journey.
  • Workshops: Practical sessions focused on hands-on application of theoretical concepts or skills.
  • Self-study: Independent study where students engage with course material on their own without any teacher support.
Reading list

Teaching materials, reading lists, and essential resources will be shared in the learning platform and software user manuals where applicable.

Assessments
Form of assessmentGrading scaleGroupingDuration of assessment
Course Assignment
Pass / Fail
Individual
1 Week(s)