When you come from a Java background like I do and you take a look at JavaScript, the sheer mass of tools is overwhelming. The ecosystem is evolving very fast with new tools coming up every couple of months. Below, I tried to give a comparison between Java build tools and their equivalent in the JavaScript world.
Preface
The list below aims to show similarities - not differences. Of course, every tool has its own set of features and individual strengths. The tools on the left are not the very same as the tools on right, just for another software stack. However, to see some similarities might help to better understand how the JavaScript world works.
Runtime
- Platform where all tools will run on
- Executes scripts, tests, etc.
Task Runner
- Executes scripts and orchestrates tasks
- Copy files, uglify, minify, package…
Package Manager
- Dependency Management
- Versioning
Test Runner
- Tests and Test Suits
- Execution of tests
Mocking/Assertion Library
- Assertions and expectations (
assertThat(1 + 1, is(2))
) - Mocks and stups
Best regards, Thomas.