GUIs vs CLIs vs APIs
When interacting with Jetstream2, you can choose between using a Graphical User Interface (GUI), a Command Line Interface (CLI) or an Application Programmer Interface (API). Each has advantages and disadvantages that you must consider in the context of your situation. Here are some generic pros and cons for using each type of interface.
GUI
- Pros
-
- Easy to learn and use, with less need to memorize commands/steps.
- Perhaps the only way for some non-technical users to perform technical tasks.
- Often accessible from a web browser on any computer, anywhere in the world.
- May be more accessible than other interfaces for users with disabilities.
- Cons
-
- Users are limited to the subset of functionality that is included in the interface.
- All steps must be performed by hand each time a task is performed.
- Can take longer for an expert to perform a task than when using other interfaces.
CLI
- Pros
-
- Does not require a windowed environment to run - can be run from a text terminal.
- Experienced users are often able to perform tasks more quickly than with a GUI.
- More functionality is usually available than through a GUI.
- Provides the ability to script a series of commands to be executed as one job.
- Cons
-
- Can be confusing for beginners, with possibly many commands to be learned.
- Usually intolerant of spelling and syntax errors in commands.
- Shell/terminal access is not always readily available.
API
- Pros
-
- Usually provides access to every last bit of functionality that is available.
- May execute more efficiently than GUIs or CLIs.
- Can more easily be used in applications that integrate with other libraries or services.
- Cons
-
- Requires substantial programming skills to use.
- Applications that use the API must be updated if the API definition changes.
- To use an API, a developer must write the entire application that calls it.