This is a philosophical question really. Lately I've been using both GUIs and CLIs for the same systems and got to wondering if there are "rules" or "standards" or "guides" that would tie the two together? Otherwise, it seems that the trivial answer would be "no" - but that rather assumes that there IS NO glue between the two. Is there? Examples?
Here's a recent example:
I am working with PowerShell and was changing the font size in the ISE command window for a new monitor. A couple of times the font size came back way too big - which seemed to have something to do with opening and closing windows etc. Did the font size change at a fundamental level or somewhere in between? Now then, generally this change is being done using the PowerShell ISE / Tools/ .. GUI.. So then I tried to find the font setting *using PowerShell* commands. I wasn't successful .. but no matter. That's one example of wondering if there's any sort of a tie that's documented for programmers? In other words:
- if it's in the GUI then are there corresponding methods in the CLI?
- if it's in the CLI then are there corresponding methods in the GUI? (I won't be at all surprised if the answer to this one is "no"). If the answer is "no" then how is the dividing line defined or described? Or is it at all?
Here's another example:
Juniper networks' J-Web interface seems to me to be back-burnered. It seems to have gotten worse over the years. Changing from SRX2.. to SRX3.. is a big change in my view. Everyone who is any good at JUNOS seems to be very CLI oriented. There seems to be no glue here that would drive the J-Web design.
As you can see, I don't even know what to call such a "standard" or "guide" or "method". Yet, I'm sure that folks have pondered this question.
What's it called? Any good examples? etc.
Nomenclature is possibly an all encompassing explanation how the same thing can be referred to by different vendors.
GUI I would agree in most cases was/is an afterthought
Otherwise, the design would be more intuitive.