#CLI与GUI的具体对比#
##CLI##
命令行界面(英语:command-line interface,缩写:CLI)是在图形用户界面得到普及之前使用最为广泛的用户界面,它通常不支持鼠标,用户通过键盘输入指令,计算机接收到指令后,予以执行。也有人称之为字符用户界面(CUI)。
通常认为,命令行界面(CLI)没有图形用户界面(GUI)那么方便用户操作。因为,命令行界面的软件通常需要用户记忆操作的命令,但是,由于其本身的特点,命令行界面要较图形用户界面节约计算机系统的资源。在熟记命令的前提下,使用命令行界面往往要较使用图形用户界面的操作速度要快。所以,在现在的图形用户界面的操作系统中,通常都保留着可选的命令行界面。
雖然現在許多電腦系統都提供了圖形化的操作方式,但是卻都沒有因而停止提供文字模式的命令行操作方式,相反的,許多系統反而更加強這部份的功能,例如Windows就不只加強了操作命令的功能和數量,也一直在改善Shell Programming的方式。而之所以要加強、改善,自然是因為不夠好;作業系統的圖形化操作方式對單一用戶端電腦的操作,已經相當方便,但如果是一群用戶端電腦,或者是24小時運作的伺服器電腦,圖形化操作方式有時會力有未逮,所以需要不斷增強命令行介面的腳本語言和巨集語言來提供豐富的控制與自動化的系統管理能力,例如Linux系統的Bash或是Windows系統的Windows PowerShell。
###Unix shell### Unix shell,一種殼層與命令行界面,是Unix操作系统下传统的用户和计算机的交互界面。第一個用户直接输入命令来执行各种各样的任务。
普通意义上的shell就是可以接受用户输入命令的程序。它之所以被称作shell是因为它隐藏了操作系统低层的细节。同样的Unix下的图形用户界面GNOME和KDE,有时也被叫做「虚拟shell」或「图形shell」。
Unix操作系统下的shell既是用户交互的界面,也是控制系统的脚本语言。当然在这点也有别于Windows下的命令行,虽然也提供了很简单的控制语句。在Windows操作系统下,可能有些用户从来都不会直接的使用shell,然而在Unix系列操作系统下,shell仍然是控制系统启动、X Window启动和很多其他实用工具的脚本解释程序。
####常見的CLI程式##
bash / sh / ksh / csh / zsh(Unix-like系統) COMMAND.COM(MS-DOS系統) cmd.exe / 命令提示字元(Windows NT和Windows CE系統) Windows PowerShell(支援.NET Framework技術的Windows NT系統)
##GUI##
图形用户界面(Graphical User Interface,簡稱GUI)是指采用图形方式显示的计算机操作用戶介面。与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。然而這介面若要透過在顯示器的特定位置,以「各種美觀、而不單調的視覺訊息」提示使用者「狀態的改變」,勢必得比簡單的文字訊息呈現,花上更多的計算能力,計算「要改變顯示器哪些光點,變成哪些顏色」。
#####历史变迁#####
1973年第一个可视化操作的Alto电脑在Xerox PARC完成。Alto是第一个把计算机所有元素结合到一起的图形界面操作系统。它使用3键鼠标、位运算显示器、图形窗口、以太网络连接。
1980年Three Rivers公司推出Perq图形工作站
1981年施乐公司推出了Alto的继承者Star,Alto曾首次使用了窗口设计
1983年苹果公司推出Apple Lisa个人电脑,是全球第一款搭载图形用户界面(GUI)的个人电脑。
1984年苹果公司推出Macintosh
1986年首款用于Unix的窗口系统X Window System发布
1988年IBM发布OS/2 1.10标准版演示管理器(Presentation Manager),这是第一种支持Intel计算机的稳定的图形界面
1992年微软公司发布Windows 3.1,增加了多媒体支持
1995年微软的Windows 95发布,其视窗操作系统的外观基本定型
1996年微软发布Microsoft Bob,此软件具有动画助手和有趣的图片
1996年IBM发布OS/2 Warp4,它的交互界面得到显著改善,至今仍有不少ATM机运行这样的系统
1997年KDE和GNOME两大开源桌面项目启动
1997年苹果公司发布Mac OS 8,这个系统具有三维外观并提供了SpringLoaded Folder功能
2000年苹果公司漂亮的Aqua,也就是Mac OS X系统的默认外观,可以让用户更轻松地使用计算机
2001年微软发布Windows XP,实现桌面功能的整合
2003年Mac OS X v10.3提供了一键单击访问任何已打开窗口的功能
2003年Sun公司的Java桌面系统为GNOME桌面添加了和Mac类似的效果
2006年微软发布Windows Vista,对此前其视窗操作系统的外观作了较大的修改
2009年微软发布Windows 7,对此前其视窗操作系统不仅是外观,甚至是对硬件的支持都作了较大修改,比Vista降低了对硬件的要求
2012年微软发布Windows 8
##组成##
###桌面###
在启动时显示,也是界面中最底层,有时也指代包括窗口、文件浏览器在内的“桌面环境”。在桌面上由于可以重叠显示窗口,因此可以实现多任务化。一般的界面中,桌面上放有各种应用程序和数据的图标,用户可以依此开始工作。桌面与既存的文件夹构成理念相违背,所以要以特殊位置的文件夹的参照形式来定义内容。比如在微软公司的Windows XP系统中,各种用户的桌面内容实际保存在系统盘(默认为C盘):\Documents and Settings[用户名]\桌面文件夹里。 墙纸,即桌面背景。可以设置为各种图片和各种附件,成为视觉美观的重要因素之一。
###視窗###
应用程序为使用数据而在图形用户界面中设置的基本单元。应用程序和数据在窗口内实现一体化。在窗口中,用户可以在窗口中操作应用程序,进行数据的管理、生成和编辑。通常在窗口四周设有菜单、图标,数据放在中央。 在窗口中,根据各种数据/应用程序的内容设有标题栏,一般放在窗口的最上方,并在其中设有最大化、最小化(隐藏窗口,并非消除数据)、最前面、缩进(仅显示标题栏)等动作按钮,可以简单地对窗口进行操作。 单一文件界面(Single Document Interface) 在窗口中,一个数据在一个窗口内完成的方式。在这种情况下,数据和显示窗口的数量是一样的。若要在其他应用程序的窗口使用数据,将相应生成新的窗口。因此窗口数量多,管理复杂。 多文件界面(Multiple Document Interface) 在一个窗口之内进行多个数据管理的方式。这种情况下,窗口的管理简单化,但是操作变为双重管理。
###标签###
多文件界面的数据管理方式中使用的一种界面,将数据的标题在窗口中并排,通过选择标签标题显示必要的数据,这样使得接入数据方式变得更为便捷。
###菜单###
将系统可以执行的命令以阶层的方式显示出来的一个界面。一般置于画面的最上方或者最下方,应用程序能使用的所有命令几乎全部都能放入。重要程度一般是从左到右,越往右重要度越低。命定的层次根据应用程序的不同而不同,一般重视文件的操作、编辑功能,因此放在最左边,然后往右有各种设置等操作,最右边往往设有帮助。一般使用鼠标的第一按钮进行操作。 即时菜单(又稱功能表、上下文菜单(Context Menu)) 与应用程序准备好的层次菜单不同,在菜单栏以外的地方,通过鼠标的第二按钮调出的菜单称为“即时菜单”。根据调出位置的不同,菜单内容即时变化,列出所指示的对象目前可以进行的操作。
###图标###
显示在管理数据的应用程序中的数据,或者显示应用程序本身。 数据管理程序,即在文件夹中用户数据的管理、进行特定数据管理的程序的情况下,数据通过图标显示出来。通常情况下显示的是数据的内容或者与数据相关联的应用程序的图案。另外t,点击数据的图标,一般可以之间完成启动相关应用程序以后再显示数据本身这两个步骤的工作。 应用程序的图标只能用于启动应用程序。
###按钮###
菜单中,利用程度高的命令用图形表示出来,配置在应用程序中,成为按钮。 应用程序中的按钮,通常可以代替菜单。一些使用程度高的命令,不必通过菜单一层层翻动才能调出,极大提高了 工作效率。但是,各种用户使用的命令频率是不一样的,因此这种配置一般都是可以由用户自定义编辑。
###采用图形用户界面的操作系统/应用程序###
Smalltalk Mac OS android 4.1 NEXTSTEP Mac OS X Microsoft Windows X Window System(类UnixOS、Linux) BTRON TownsOS MSX-View SX-Window BeOS Newton OS Zaurus OS Palm OS IOS Android Firefox OS


