4 ms·
While more complicated, CLIs tend to be more expressive, easier to program as a platform and simpler to communicate between than GUIs. Expressive, because they
by Joof 11y ago
While more complicated, CLIs tend to be more expressive, easier to program as a platform and simpler to communicate between than GUIs.
Expressive, because they are built on top of (and as a part of) languages. You can do this in a GUI, but it seems to be rare; instead the program typically defines how you manage inputs and outputs.
They are easy to program for. GUIs typically require an additional framework (and are still difficult to build).
CLI typically communicates over plain text. Getting two GUI programs to talk to each other is typically very difficult. You can string a bundle of CLI commands together and build new functionality, but this is much more difficult with a GUI. This is partly a philosophical difference; the CLI platform encourages plaintext interop, but a GUI platform typically encourages isolated programs (possibly with API).
That said, nothing is perfect. There are plenty of instances were a GUI is better. People can understand visual data better and notably it's far easier to understand in an intuitive way. But it's certainly not a 100% replacement.