为什么有人坚信人类不可能基于GUI的操作方式?
GUI编程对于特定任务比如网页编辑,java编程这类工作效率高,它们主要由单进程程序构成,主要交互就是屏幕或者文件。程序员可以非常快捷的完成查询,编码,运行,调试等工作。可是如果你需要编写一个程序于另外一个程序交互,你不单要调试正在编写的程序,还要观察它如何跟其他程序进行交互,这时一个gui就不够用了,你需要至少两个。如果它跟另外两个程序交互呢?呢?呢?很多需要交互的程序并不提供源代码,可能提供日志,或者调试接口,或者通过另外一个调试命令才能看到它内部运作情况,这样一个gui怎么可能涵盖?这用跟多个服务进行交互的例子在类unix系统中非常常见,因为这类系统并不提供类似windows的相对统一的交互界面。一个程序要通过dbus服务跟另外一个服务通讯,你就要3个界面,一个运行现在的程序,一个检测dbus服务,一个查看目标服务的log日志。
一个完成相对复杂任务的程序通常要监测包括内核,系统日志,当前程序日志,dbus,网络状态,io状态,cpu占用等多个部分的实时信息,才能让程序员理解当前任务是否正确运行。一个gui要做成什么样才能完成?
需求太多样,完成太复杂,才造成一个gui不能满足大部分需求,甚至一半都达不到。
macos有统一日志系统,调试器能捕获大部分信息,windows有统一的调用界面,只要完全按照手册作,大部分错误都能在调用时候捕获,所以,在这两个系统上编写通常的程序,gui已经可以完成大部分工作。但在类unix系统上,我不认为短期能解决。
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有