Skip to Content

This browser is no longer supported.

For the best WWT.com experience, please use one of our supported browsers.

Safari Logo Safari Chrome Logo Chrome Firefox Logo Firefox Edge Logo Edge
Search wwt.com...
Related Content

See all search results

Featured Solutions
What's trending
?
Home
Solutions & Services
Solutions
Automation & Orchestration
Cloud
Data Center
Digital
Digital Workspace
ESG
Mobility
Networking
Security Transformation
See all Solutions
See all Solutions
Services
Application Services
ATC Lab Services
Consulting Services
Customer Success
Infrastructure Services
Mergers & Acquisitions
Strategic Resourcing
Supply Chain & Integration
See all Services
See all Services
Industries
Utilities
Financial Services
Global Service Provider
Healthcare
Life Sciences
Manufacturing
Oil & Gas
Public Sector
Retail
See all Industries
See all Industries
Partners
Cisco
Dell Technologies
HPE
NetApp
VMware
f5
Intel
Microsoft
Palo Alto
See all Partners
See all Partners
Learning & Support
ATC
Communities
Events
Labs
About
Footer Links
Careers
Contact Us
Diversity & Inclusion
Locations
News
Sustainability

What's new

Lab ATC

Software Engineering Concepts: Recursion Tutorial

There's a popular idiom in software engineering: in order to understand recursion, you must first understand recursion. This lab provides an environment for practicing writing recursive algorithms for a few challenging examples. Starting with a simple case of calculating the factorial of a number, you will be guided through the process of writing tests to define the behavior (Test-Driven Development or TDD) and then determining the base case and recursive step to solve the problem. You will then use what you have learned to solve the more challenging cases of calculating the Fibonacci sequence, and solving the "Tower of Hanoi" puzzle using recursive algorithms. This lab uses the programming language TypeScript, so some familiarity with TypeScript or JavaScript (ECMA Script 2016) will be helpful to complete the lab. There are code samples throughout the documentation that will help you along, and checkpoints included for you to check out working code if necessary.

Nov 22, 2021

2 min read

Page Thumbnail
Article Node.js

Using Mock Service Worker to Improve Jest Unit Tests

Mock Service Worker (MSW) improves unit tests of components that make API calls by defining mocks at the network level instead of mocking our own custom code. Better still, we get that benefit while also making our test code smaller, easier to read and easier to reuse.

Aug 5, 2021

11 min read

Lab Node.js

Test-Driven Development Guided Lab: Refactoring Existing Code

Legacy code, code that is not under active development or has been passed on to a new engineering team, carries a stigma of being difficult to change and/or maintain. It is often treated as a black box that cannot be altered due to fear of repercussions. This fear does not have to exist, and legacy code can be adopted and improved through refactoring practices. This lab will walk you through the process of adding "characterization tests" to the code that has been provided, and then guide you through several refactoring cycles to make the code easier to understand and maintain. Through this, you will learn and practice effective refactoring techniques.

Apr 19, 2021

2 min read

Lab Node.js

Test-Driven Development Lab: Build a To-Do API

Putting test-driven development into practice is the best way to learn to apply TDD effectively. This lab allows you to explore TDD by implementing a "To Do" Application Programmer Interface (API) using JavaScript. This application uses a database to persist data, which means that you will need to follow best-practices to test interfaces to third-party systems effectively. During this lab, you will work to implement both the tests that drive the intended behavior of the application and the code that satisfies those tests. This lab is implemented using JavaScript (ES6). Some experience with JavaScript will be helpful to complete the lab, but there are code samples provided in the documentation that can help you if you are unsure.

Mar 24, 2021

3 min read

Page Thumbnail
Article Node.js

What Is CORS (Cross-Origin Resource Sharing)?

Why do I get a CORS error on my website? What does it mean when a client needs us to implement CORS?

Dec 10, 2020

5 min read

Lab Node.js

Test-Driven Development Guided Lab: Mocking External Dependencies

This lab will guide you through the process of test-driven development (TDD) for code with external dependencies. The lab covers mocking dependencies both by hand and using a mocking framework. The code for this lab will be written using JavaScript (ES6).

Nov 3, 2020

2 min read

Page Thumbnail
Article Node.js

Using Jest to Run Integration Tests

Jest is a popular unit test framework that can easily be extended to include integration tests. We'll discuss writing an integration framework in a Node environment backed by a MySQL database.

Sep 29, 2020

6 min read

Lab ATC

Turning a Website Into a Progressive Web App

In this lab you turn a website into a Progressive Web Application, this way it can run on a edge device without an Internet connection.

Sep 22, 2020

1 min read

Lab ATC

Test-Driven Development Guided Lab: Implement a Stack Object

This lab will guide you in the process of implementing a stack object through test-driven development (TDD) practices. The tests are written for you; follow the documentation to implement the features of the stack and pass the tests one-by-one. This lab is implemented using JavaScript (ES6). Some experience with JavaScript will be helpful to complete the lab, but there are code samples provided in the documentation that can help you if you are unsure.

Jul 14, 2020

2 min read

Logo for Node.js

Node.js

Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside of a web browser.

See more

What's related

Digital Software Development Application Services ATC React Data Center
Ā© World Wide Technology. All Rights Reserved
  • About
  • Careers
  • Locations
  • News
  • Press Kit
  • Contact Us
  • Privacy Policy
  • Acceptable Use Policy
  • Quality
  • Information Security
  • Supplier Management