https://de.wikipedia.org/wiki/Memex
https://en.wikipedia.org/wiki/History_of_the_graphical_user_interface
http://toastytech.com/guis/guitimeline.html
《个人电脑》2005年第7期183-190 追溯GUI历史
做一个提纲,大致了解下系统GUI历史,更详细查看参考链接
早期研究
1945年范内瓦·布什(Vannevar Bush,信息论之父香农的老师)提出基于扩展存储器(Memory-Extender 备忘录)的信息机器Memex
- 机器内部用微缩胶卷存储信息,自动翻拍,可以不断往里面添加新的信息
- 桌面上有阅读屏,用来放大阅读微缩胶卷
- 桌面上有许多个按钮,每一个按钮代表一个主题,只要按一下,相应的微缩胶卷就会显示出来
- 每一个胶卷内部还记录着相关的其他胶卷的编号,可以方便地切换,形成同主题阅读
- 可以与图书馆联网。通过某种机制,将图书馆收藏的胶卷,自动装载到本地机器上。因此,只通过这一个机器,就可以实现海量的信息检索
60年代,GUI和鼠标之父道格拉斯·恩格尔巴特(Douglas Englebart)基于Memex灵感开发了在线系统 (NLS),包含一个鼠标驱动的光标和用于处理超文本的多个窗口,许多早期的研究都是基于幼儿的学习方式,基于儿童般的手眼协调原语,而不是使用命令语言、用户定义的程序
Xerox Alto
1973年印刷设备公司Xerox PARC开发了Alto个人电脑,首次集成了许多现代计算机特性
- 3个操作按钮的鼠标
- 位图显示
- GUI图形界面(窗口、图标和菜单)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x0rM2mpC-1639757337190)(.\img\altoboot1.gif)]
Xerox Star
1981年Xerox推出了开创性产品Star,影响了后来的Apple、Microsoft、Sun
- 加入了双击图标、重叠窗口、对话框以及1024*768 单色显示
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0JeBAkeG-1639757337192)(.\img\starbitmap2.gif)]
VisiCorp Visi On
1983年发布IBM发布第一个图形界面的操作系统PC
- 具有图形重叠窗口、通用用户界面控件、自定义文件系统、便携式虚拟机、集成办公套件
- 完全由鼠标驱动
- 允许用户一次打开多个程序,每个程序都在自己的窗口中,并在它们之间切换到多任务
- 支持第三方应用程序开发
- 没有包含图形文件管理器
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OTR830oJ-1639757337193)(.\img\visionall.png)]
Apple
1983年发布Lisa,具有基于高分辨率的图形界面,以文档为中心设计,位于基于硬盘的高级操作系统之上,有抢占式多任务处理和面向图形的进程间通信等功能
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZRibuULr-1639757337193)(.\img\lisaos3desk.png)]
1984年发布较简化的Macintosh,第一个使用多面板窗口界面的商业成功产品,使用了以程序为中心而非以文档为中心的设计
- 其中文件看起来像纸片,文件目录看起来像文件夹
- 有一组桌面配件,如计算器、记事本和闹钟,用户可以根据需要将其放置在屏幕周围
- 用户可以通过将文件和文件夹拖到屏幕上的垃圾桶图标来删除它们
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sgrkLjT2-1639757337194)(D:\blog\content\img\mac11sortview.gif)]
1986年Apple IIgs推出,配备了新的操作系统Apple GS/OS,它具有类似Finder的GUI
Microsoft
1985年发布Windows 1.0
- 窗户不能重叠,而是平铺
- 不允许Windows覆盖屏幕底部为“图标化”程序保留的区域
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QTUg6m2k-1639757337195)(.\img\win101write.png)]
1987年发布Windows 2.0
- 可调整大小/重叠的窗口
- 新的窗口控件
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-g0uwWv29-1639757337195)(.\img\win203dialog.png)]
X Window System
初衷是让新兴图形终端的用户可以访问远程图形工作站,而无需考虑工作站的操作系统或硬件
成为管理图形和输入/输出设备以及在几乎所有 Unix、Linux 和其他 Unix 上构建本地和远程图形界面的标准层
流行桌面
Microsoft
1990年发布Windows 3.0
- 命令按钮和窗口控件现在具有3D外观
- 程序管理器 文件管理器取代了旧的MS-DOS Executive
- 兼容8086实模式、286标准模式、386增强模式下运行
1993年发布了第一个版本的 Windows NT(32 位操作系统)
-
控制面板
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hKF9iU2W-1639757337196)(.\img\nt31mm.png)]
1995年发布Windows 95
- 文件管理通过Windows 资源管理器
- 增加文件预览查看方式
- 右键快捷功能
- 快捷方式
- “开始”菜单
1998年发布Windows 98
- 增加Internet Explorer浏览器应用程序接管了 Windows 外壳的角色,在桌面上投放广告,整个帮助系统由Internet Explorer取代
2001年发布Windows XP
- 激活授权
2007年发布Windows Vista(Windows NT 6.0)
- 3D界面
2009年发布Windows 7 (NT 6.1)
2012年发布Windows 8 (NT 6.2)
2015年发布Windows 10
Apple
1997年发布Mac OS 8
1999年发布Mac OS X Server,基于Unix的操作系统,带有他们的Macintosh GUI
2000年发布Aqua界面,即将推出MacOS X外观
mac OS X的GUI提供了四种开发框架:Carbon(基于C/C++的开发环境,提供了对旧版mac os开发的兼容性。MAC OS X 中的Find就是基于carbon编写的。大多数商业软件也都是基于carbon, 可以说直到今天Carbon是OSX上用的最广泛的编程环境)、Cocoa(用Objective C编写的开发环境,它基于NextStep的开发环境。事实上很多Cocoa提供的服务能够被不同的编程语言调用,甚至是script language。Cocoa本身也使用了部分Carbon提供的功能。在某种程度上Carbon和Cocoa的关系类似于以前在windows平台上win32和MFC之间的关系)、J2SE(Mac 上也提供了标准的Java 2 标准版的所有功能,事实上苹果上的Java虚拟机的AWT/JFC部分也是基于Carbon的,这也是为什么COCOA Java和标准JAVA之间相互调用会有问题产生的根本原因)、posix(UNIX遍程的标准API,,它基于C,很多GUI 系统,如Xwindows也是基于posix)
KDE
1998年发布KDE 1.0
- 非常类似于Windows 9x 的Linux环境
GNOME
bon提供的功能。在某种程度上Carbon和Cocoa的关系类似于以前在windows平台上win32和MFC之间的关系)、J2SE(Mac 上也提供了标准的Java 2 标准版的所有功能,事实上苹果上的Java虚拟机的AWT/JFC部分也是基于Carbon的,这也是为什么COCOA Java和标准JAVA之间相互调用会有问题产生的根本原因)、posix(UNIX遍程的标准API,,它基于C,很多GUI 系统,如Xwindows也是基于posix)
KDE
1998年发布KDE 1.0
- 非常类似于Windows 9x 的Linux环境
GNOME
1999年发布GNOME 1.0