/js-fun-at-a-restaurant

Exercise on JS fundamentals at a restaurant!

Primary LanguageJavaScript

JS Fun at a Restaurant

Overview

In front end web development, the programming language you will encounter most often is JavaScript. Soon, we'll also use HTML and CSS to help a user interact with our applications, however before we do that, we need to understand how to use JavaScript to handle the logic of our applications.

In this project, you'll be gaining experience working with variables, primitive data types, looping, arrays, and objects. As you work through the iterations, be sure to take time to stop and refactor you solutions. There is rarely one right way to solve a problem in programming, and part of your job will be evaulating the trade offs between different approaches to solving a problem.

Learning goals

  • Understand what JavaScript primitives are, and how/when to use them
  • Understand how to declare variables and assign data to them
  • Practice using objects and arrays

Setup

  • Fork this project to your own Github account
  • clone the repository to your local machine
  • cd into the project
  • run npm install to install the necessary dependencies

Iterations

0: Practice Variables, Primitives, Functions, Arrays, and Objects

  • In the src/ directory, you'll find a file called warm-up.js. Read through the instructions in the file carefully. The exercises in this file will help you to complete the rest of the iterations

1: Complete the meal tests

  • For the rest of the iterations, you will be working to build out some js functionality, using a test suite as your guide.
  • Start with the meal.js file.
    • Unskip the first test in test/meal-test.js
    • Run npm test test/meal-test.js
    • Read the error messages CAREFULLY!
    • Make the test pass.
  • Before moving on to the next iteration, take time to refactor your solutions. Is this the best approach to solving the problem? Is there a different way you could make the tests pass?

2: Complete the order tests

  • Unskip the first test in test/order-test.js, and get to work passing the tests
  • Run npm test test/order-test.js
  • Before moving on to the next iteration, take time to refactor your solutions. Is this the best approach to solving the problem? Is there a different way you could make the tests pass?

3: Complete the restaurant tests

  • Unskip the first test in test/restaurant-test.js and get to work passing the tests
  • Run npm test test/restaurant-test.js
  • Before moving on to the next iteration, take time to refactor your solutions. Is this the best approach to solving the problem? Is there a different way you could make the tests pass?

Extension (If you get to it): Complete the Chef tests

  • Unskip the first test in test/Chef-test.js, and get to work passing the tests
  • Run npm test test/Chef-test.js
  • Take time to refactor your solutions. Is this the best approach to solving the problem? Is there a different way you could make the tests pass?