基于java的校园论坛网站的开发与设计外文翻译

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

附录1
The application of Ajax
Spend a few minutes using your application you selected(browser except),write it down to what user interaction,and then immediately back.For the sake of brevity,I give an example of electronic form,however,points involved here is general enough for various cases,the text editor.
Well,we started.First in the spreadsheet to input some equalities,pay attention to,can interact in several ways:edit data,browsing the data using the keyboard and mouse,also can use the mouse to drag to re organize the data.
I do these operations,the program gave me feedback.When moving the mouse,the cursor changes shape;when the mouse stops above,button bright;selected text can change color.When a window or dialog box is selected,and usually isnot the same,etc..These are the so-called"rich"interaction.Of course,there are still some room for improvement,but this is a good start.
OK,a spreadsheet is a rich client program?Absolutely not.In a spreadsheet or similar desktop applications,business logic and data model is run in a closed environment.In this environment,they clearly understand each other,and can visit each other,and the environment outside of things,is unknown to them.What is the client?It is a separate process of mutual communication program,which is usually run on the server.In general,the server is always bigger than the client,ability,disposition is better,because the server is usually stored multitudeinformation.The client program enables the end users can view and modify the information,when multiple clients connected to the same server,can shareinformation between them.Shows a simple client/server architecture.
In the n layer architecture in the modern,the server often and further the back-end server(such as a database)communication,so called"middleware"layeralso plays a role of client and server.End of our Ajax application in the chain,it is only as the client,therefore,for the convenience of discussion,we can put the whole n system as a labeled as"black box server".
Spreadsheet applications I only need to manage its own saved a small amount of data in memory or in the local file system.If the design of well structure,couplingform data and it can be very loose,but I can't pass a network to split or sharethem through network.In this sense,the application of electronic form is not a client.
The corresponding Web browser is a typical client,which communicate with the Web server,the request page.The browser has abundant functions,used tomanage user browsing behavior,the common function of the back button,the history list and tabbed browsing multiple documents etc..But when we put the site specific Web pages as an application,these general browsing function actuallyand application is,at best,such as spreadsheets and Windows began the relationship between button or the window list.
We consider the application of modern Web.For the sake of simplicity,we chose" earth people know"online bookstore.Open the Amazon site in the browser,because before I visited,it will show me a friendly
greeting,somerecommended bibliography,and my purchase history information.
Click on any one of the recommended bibliography,will go to another page(at this time,the page to refresh,within a few seconds I what also don't see).The new page is the information relevant to the book review:other books,second-hand books,offer the same author,and other books I read.
In short,appears to be very rich,high degree of associated information in front of me.But for me,interactive way is to click on the hyperlink,and then fill in some forms.Suppose I at the keyboard accidentally fell asleep,wake up second days,if not refresh the page,I don't know"Harry Porter"series of books have been published,nor will my list from one page to another page,if I want to see morethings too,because I cannot change the local content area page size.
I seem to be in the criticism of the Amazon interface,but it is not the case,I justtook it as an example.In fact,in the traditional Web development of the shackles,they have done very well.But compared to the spreadsheet,and the interaction model is undoubtedly too limited.
Why Web is the application of modern still have so many limitations?The currentsituation has some reasonable technical reasons,we have to consider now.
The blueprint for the Internet is all the computer in the world are connected,forming a huge computing resources.If the local data and remote invocationequated,then both the analysis of protein components or crack signals from outer space,users need not consider the physical location of the machines,the rest of the computation only pleasure.
But unfortunately,the local call and remote invocation is something totally different.Under the current level of technology,the network communication is still a costly things(that is to say,is usually very slow,but unreliable).In the absence of a network called the situation,method and function of different data and theiroperations are located in the same local memory,to transfer data and return the results obtained are very direct.
In a remote call,communication in the network at both ends of the two sides to send and receive data requires a lot of computation at the pared with the data back and forth on the line,these calculations require more time consuming.The transmission of a binary data,to go through many steps of coding and decoding,error checking,failure,packet retransmission split andreorganization,data into 0 and 1 binary signal,through the line(or wireless connection to the other party).
In the local,call the function call request is encoded as an object,then the object is serialized as a series of bytes,the application layer protocol(usually HTTP)via the physical transmission medium(such as copper cable,optical fiber or radio)send out.
On the remote machine,the application layer protocol decoding,the bytedeserialize the data obtained,to create a copy of the requested object.Then the data model is applied to the object and generates a response object.In order to make the response object is passed to the callback function local,all serialization deserialization operation,and the transport layer will be back again.Finally,the response object is passed to the function call local.
This interactive process is very complex,but fortunately,it can be done.Modern
programming environments such Java and Microsoft framework are built with this ability.However,the execution of remote calls,all these operations will still be in the internal execution.If we were using there mote invocation,performance will be affected.
That is to say,a remote call is unlikely to have efficiency and local call.What is worse,the instability of network makes the efficiency loss is unpredictable,it is difficult to.In contrast,a local call to run on the local memory,will undoubtedly have an advantage more at this point.
And so on,said remote call half a day,between this and the availability of software?The answer is,a relationship.
A successful computer user interface must be able to at least level simulation weexperience in the real world.One of the basic rules of interaction is,when wepush,prick or poke about something,it will immediately response.Response timeas long as a little bit out a little,will make people confused,distracted,to shift thefocus from the task at hand to the user interface.
Remote calls across the network,need to perform additional operations in great quantities,they tend to put the system to slow down,the user perceived delay.In desktop applications,only when the usability design is very bad,will appear this kind of makes users feel full of bug,unresponsive to the user interface,but in the application of network,what do not get a large number of such interface.
Because the network delay is unpredictable,this kind of interface problems oftencome and go like a shadow,it is difficult to carry out the application responsetest.In other words,the network delay is the result of a common cause of the practical application of the interaction.
User interface developers for network delay can only assume the worst.Say simply,is to try to make the user interface and network activities unrelated to.Programmers have already created a truly effective and proven solutions,tosolve this problem.To sell a Guan,let us into the real world.
In the morning I will do,a very important is to wake my kids go to school.I can stand on the edge of the bed they toss up,chase them up and dressed,but thismethod is very time consuming,it takes me a lot of precious morning time
I want to wake up the children,have a look out the window,often neglected to feed the cat.After the children would ask me to breakfast.As the server process,the children always get up slowly.If I follow the synchronous interaction pattern,will they all day.However,as long as they mumble"I woke up",I can go to do other things,need to come back when they have a look.
In computer terms,I need to do is for every child to establish an asynchronous process in a separate thread.After the start,the children will wake up in their ownthreads,the parent thread unnecessary synchronization wait,they afterwards will inform me(which is often asked me to eat).In the process they wake up,I don't need interaction and they,when they had been up and dressed myself,because I have reason to believe that they will do so soon.
For any user interface,which is a long established practice,namely to createasynchronous thread,let it in the background who need to calculate a long
timetask,so that the user can continue to do other things.When starting this thread,it is necessary to block the user operation,but after a short period of time can beaccepted,will relieve congestion.Because of the existence of network delay,using asynchronous mode is a good practice to handle any time-consumingremote call.
In fact,the network latency problems and solutions related to long-standing.In the old client/server mode,when the poor design of the client program met thehigh load of the server,the user interface will appear delay intolerable.Even in today's Internet era,when to switch the page,if the browser half the things not to,so this situation might be due to network delay caused by.The existing technical conditions,we have no way to remove the network delay,but at least onestrategy,that is the use of asynchronous processing remote calls,isn't it?
Worse,for Web developers to do so there is a problem:HTTP protocol is a"request response"mode of the protocol.That is to say,the client requests a document,the server or a return to this document,or tell the client can not findthe document or allows a client to another place to find,also can tell which the client can use the local cache,and so on.To make a long story short,"request response"mode of the protocol is a one-way communication protocol.The clientinitiates a connection to the server,b ut the server can not initiates a connection to the client.Even when the next client,initiate the communication request,forgetful of the server can't remember this client is who(HTTP is a connectionless).
Most Web developers to use modern programming language,for example,Java,PHP ,they are familiar with the user session(user session)concept,this is in fact the application server for a remedy can't maintain a connection state of the HTTP protocol.HTTP for the initial design goal well,using some clever processing,it can adapt to the beginning of the design did not consider theoccasion.But the key features of the asynchronous callback scheme of our clientis,will receive two notice,is a time in the thread creation,the other is a time in the end of the thread.The standard HTTP and the traditional Web application model can not provide these.
The traditional Web application like Amazon,is built on the concept of the page.Show the user a document,which includes various links and form,the user canaccess further more documentation.This interaction model can support complex data sets on a large scale(like Amazon and other sites have demonstrated),which provides the user experience is enough to meet the needs of business.
In ten years,this interaction model laid a deep imprint in our view of theapplication of Internet business.WYSIWYG interface(WYSIWYG)Web authoring tools,making the site more easily to be understood as a stack of pages.The framework of Web server using the state diagram conversion on the pagemodeling.no introduction,the traditional Web application that has been firmlybound in a page refresh operation,as if the refresh is behoove and inevitable,tried processing scheme for any asynchronous never.
Of course,no doubt,the traditional Web application must not nothing is right..After all,Amazon in this interaction model to create a successful commercial applications.But this applies to the way Amazon does not necessarily apply to all
people.Why do you say that?To understand this,we need to study the usermodel(usage pattern).
A general discussion of the bicycle and SUV(SUV)merits meaningless.Because they have their own advantages and disadvantages--comfort,speed,fuel consumption or personal identity.Only discussed in particular use mode,this comparison is only meaningful.For example,is to in the rush hour through the center of the city,or to take the whole family,old and young to go on vacation,or just to find a shelter from the rain.In a similar situation like this,can we have a definite object in view to compare.For the user interface,it is the same with.
Software usability expert Alan Cooper has written a lot of good articles aboutusage patterns,he defines two main uses:transient(transient)and exclusive(sovereign).Transient applications may use occasionally every day,butalways as a secondary activity,with a sudden.The contrast is sovereign applications,exclusive continued use of application to deal with the user for several hours a day.
Many applications have a natural monopoly or transient properties.For example,a word processing software writing is a sovereign application,possible applications also use several transient,such as file management(file open andembed this function will often close the window),dictionary or spell checking tools(many word processing program is also embedded in these functions),andcolleagues contact email and chat tool.For software developers,text editor,debugger or IDE(integrated development environment)is the exclusive.
Sovereign applications often use more frequently.Y ou know,a good userinterface is not visible.The measure of a good scale used frequently,is when theuser interface has obvious pause,it affects the user process.For example,from a directory to another directory file to 2 second pause,I can accept with pleasure;but if the two seconds is the place in my is full of passion for paintingsoftware to create an image,or I'm trying to debug a very difficult to deal with thegeneration of code certainly,this makes me feel very uncomfortable.
Amazon is a transient application,eBay,Google and most large public Web applications are transient applications.Since the date of birth,the experts had predicted that the traditional desktop applications under Web impact.Over the past ten years,these have not occurred,why?Based on the Web page programfor transient applications is enough,but it is far from enough for a sovereign application.
The starting of modern Web browsers and it's original point(a document from a remote server)has not matter,between them like a Swiss Army knife and neolithic hunting tools,it is a world of difference.A variety of interactive components,scripts and plug-ins,these years could not suppress the crazydevelopment,almost forced once again to create a new browsing experience.toprehistoric times visitbrowser.In 1993,netscape founded before the Marc Andreessen(founder of netscape)are lobbying Tim Berners-Lee(founder of Web,the W3C leader)et al.,cited good into a picture label is HTML.
A few years ago,a few pioneers began to treat JavaScript as a serious programming language.But on the whole,more people still use it and those whomock
warning box"monkey tricks and click to win awards"advertising a classtogether.
The browser wars brought JavaScript a misunderstood,sick children,Ajax can be viewed as his rehabilitation center.As long as the proper guidance,and thento frame it with appropriate,JavaScript will likely become the Internet model citizen.It can really enhance the practicability of Web application,and without forcing users to install additional software,or forcing users to abandon his beloved browser.To obtain mature tools are widely understood can help usachieve this goal.The back of the book design pattern is one such toolmentioned.
The promotion and popularization of a new technology,is not only the technical matters,but also social behavior.Once the technology is mature,the people also need to understand how to use it.This step is often by using it to do our very familiar things start.For example,early bicycle called"Trojan wheel"or"pedalinghorse",on his feet tread the reaction force to move forward.As this technology is gradually accepted by the public,then inventors would invent a new way to use,add the pedal,brake,a chain wheel and tire.Each time the invention creation,made the bike in the shadow of more pale horse,that completely disappeared.
The same process also occurs in the field of Web development.The technology behind the Ajax have the ability to Web pages into something new somethingcompletely different.Early uses of Ajax try to make Web pages is beginning to look like a"Trojan wheel"neither fish nor fowl.To comprehend the essence of Ajax,we have to forget about the Web page concept,that is to say,we have tobreak these years of experience.In the months after the Ajax officially named,such things have happened a lot.
Ajax的应用
花几分钟使用一下你选中的应用(浏览器除外),记下它用到了哪些用户交互,然后马上回来。

为了简短起见,我举一个电子表格的例子,但是,这里所涉及的要点是通用的,足以针对文本编辑器上的各种情形。

好,我们开始。

先在电子表格中随便输入几个等式,注意到,可以以几种方式进行交互:编辑数据,用键盘和鼠标浏览数据,还可以使用鼠标拖拽来重新组织数据。

我做这些操作的时候,程序给了我反馈。

移动鼠标的时候,光标改变了形状;当鼠标停在上面的时候,按钮变亮了;选中的文字也改变了颜色。

窗口或者对话框被选中的时候,也和平常显得不一样了等等。

这些就是所谓“富”的交互。

当然了,仍然有一些有待改进的地方,但这是一个好的开始。

电子表格就是一个富客户端程序了吗?当然不是。

在电子表格或者类似的桌面应用中,业务逻辑和数据模型是在一个封闭的环境中运行的。

在这个环境中,它们彼此清晰地了解对方,并且可以互相访问,而环境之外的东西,对于它们来说是未知的。

那么客户端又是什么呢?它是与另一个独立的进程相互通信的程序,后者通常运行在服务器上。

一般来说,服务器总是要比客户端大一些,能力强一些,配置更好一些,因为在服务器上通常要存储浩如烟海的信息。

客户端程序使得最终用户可以查看和修改这些信息,当多个客户端连接在同一个服务器上的时候,
可以在它们之间共享这些信息。

展示了一个简单的客户/服务器架构。

在现代的n层架构中,服务器往往要和更远的后端服务器(例如数据库)通信,因此被称作“中间件”的层同时扮演着客户端和服务器的角色。

我们的Ajax应用位于这个链的一端,它仅仅是作为客户端,因此为讨论方便,我们可以把整个n 层系统看作是一个标记为“服务器”的黑盒。

我的电子表格应用只需要管理它自己保存在内存或本地文件系统中的少量数据。

如果架构设计良好的话,数据和它的表现形式的耦合可以非常松散,但是我不能通过网络来分割或者通过网络来共享它们。

从这个意义上来说,电子表格应用不是一个客户端。

与之相对应的Web浏览器就是一个典型的客户端,它与Web服务器通信,请求需要的页面。

浏览器有丰富的功能,用来管理用户的浏览行为,常见功能有回退按钮、历史列表和分页浏览多个文档等等。

但是当我们把特定网站的Web页面看作是一个应用时,这些通用的浏览功能实际上和应用关系不大,充其量也就如电子表格和Windows的开始按钮或者窗口列表之间的关系。

我们来考察一下现代的Web应用。

为了简单起见,我们选择了“地球人都知道”的在线书店。

在浏览器中打开Amazon网站,因为在此之前我访问过,它会给我显示一个友好的问候、一些推荐书目,还有我的购买历史信息。

点击推荐书目中的任何一条,就会转到另外一个页面(此时,页面要刷新一下,在这几秒钟内我什么也看不到)。

新页面是该书的相关信息:书评、二手书报价、同一作者的其他著作,以及以前我浏览过的其他书籍。

简而言之,呈现在我面前的是非常丰富的、关联度很高的信息。

但是对我而言,交互的方式就是点击那些超链接,然后填写一些表格。

假设我在键盘前面不小心睡着了,第二天才醒来,如果不刷新页面,我就没法知道《哈里·波特》系列的新书已经出版了,也不能将我的列表从一个页面带到另一个页面,我要是想同时看到更多一些东西也不行,因为我无法改变页面上局部内容区域的大小。

我似乎是在批评Amazon的界面,其实并非如此,我只是拿它来做个例子。

事实上,在传统Web开发方式的桎梏下,他们已经做得非常棒了。

但是比起电子表格来说,它所用的交互模型毫无疑问是太有限了。

为何现代的Web应用仍然有这么多的局限呢?造成目前的状况有一些合理的技术原因,我们现在就来考察一下。

因特网的宏伟蓝图是将这个世界上所有的计算机都连接起来,形成一个无比巨大的计算资源。

如果能把本地调用和远程调用等同起来,那么无论是分析蛋白质的成分还是破解外太空的信号,使用者都无需考虑机器的物理位置,剩下来的只有愉快地计算。

但是非常不幸,本地调用和远程调用是完全不同的东西。

在现有的技术水平之下,网络通信仍然是一件代价高昂的事情(也就是说,通常很慢,而且并不可靠)。

在没有网络调用的情况中,不同的方法和函数以及它们所操作的数据都位于相同的本地内存中,向方法内传递数据并且获得方法的返回结果是非常直接的。

而在有远程调用的情况下,位于网络两端的通信双方为了发送和接收数据在底层需要进行大量计算。

比起数据在线路上的往返,这些计算需要消耗更多的时间。

传输一段二进制的数据,中间要经过很多环节的编码和解码、错误校验、失败重发、数据包拆分和重组,数据最终转化为0和1表示的二进制信号,通过线路(或者无线连接)到达另外一方。

在本地,调用函数的调用请求被编码为一个对象,然后将这个对象序列化为一系列字节,最后使用应用层协议(通常是HTTP)通过物理传输介质(例如铜缆、光纤或者无线电波)将其发送出去。

在远程机器上,对应用层协议解码,将获得的数据字节反序列化,创建一个请求对象的副本。

然后对数据模型应用这个对象并生成一个响应对象。

为了将响应对象传递给本地的调用函数,所有的序列化、反序列化以及传输层的操作都要反向再来一次。

最后,响应对象被传递给本地的调用函数。

这个交互过程很复杂吧,幸好,它是可以自动完成的。

现代的编程环境如Java 和Microsoft的.NET框架都内置了这个能力。

尽管如此,执行远程调用时,上述所有这些操作仍然会在内部执行。

如果我们到处使用远程调用,性能势必会大受影响。

这也就是说,远程调用是不可能和本地调用一样有效率的。

更糟糕的是,网络的不稳定更让这种效率损失捉摸不定,难以预计。

相比之下,运行在本地内存之中的本地调用,在这一点上无疑要有优势得多。

等等,说了半天的远程调用,这和软件的可用性有关系吗?答案是,大有关系。

一个成功的计算机用户界面要能以最起码的水平模拟我们在真实世界中的体验。

交互的基本规则之一就是,当我们推一下、刺一下或者捅一下某个东西的时候,它立刻就会响应。

响应的时间只要稍微拖长一点点,就会使人困惑,分散其注意力,把关注点从手头的任务转移到用户界面上。

远程调用横穿整个网络,需要执行大量的额外操作,它们往往会把系统拖慢,使用户察觉到延迟。

在桌面应用中,只有当可用性设计做得非常糟糕的时候,才会出现这种令用户感觉充满bug、反应迟钝的用户界面,但在网络应用中,什么都不做就能得到大量这样的界面。

因为网络延迟不可预测,这类界面问题往往都神出鬼没,对应用响应的测试也难以开展。

换句话说,网络延迟是导致实际应用的交互性糟糕的一个普遍原因。

用户界面的开发者对于网络延迟只能做最坏的假设。

简单地说,就是要尽可能让用户界面与网络活动无关。

天才的程序员们早已发明了一种确实有效而且久经考验的方案,来专门解决这一问题。

先卖个关子,让我们到现实世界中走一趟。

在我每天早上必做的事中,很重要的一项是叫醒我的孩子去上学。

我可以站在床边把他们折腾醒,催着他们起床穿衣,但这是一种很耗费时间的方法,总要耗费我很多宝贵的早间时光
我要叫醒孩子,看看窗外,往往会忽略了喂猫。

孩子们起来之后会问我要早餐。

就像服务器端的进程一样,孩子们起床总是慢吞吞的。

如果我遵循同步交互模式,就要等他们老半天。

不过,只要他们嘟囔一句“我醒了”,我就可以先去干其他的事,需要时再回来看看他们。

按照计算机的术语,我需要做的就是为每个孩子在一个单独的线程中建立一个异步进程。

开始之后,孩子们会在他们的线程里自己起床,我这个父线程没有必要同步傻等,他们完事后会通知我(往往还会问我要吃的)。

在他们醒来的过程中,我并不需要和他们交互,就当他们已经起来并自己穿好衣服了,因为我有理由相信他们很快会这么做的。

对于任何用户界面来说,这是一种沿用已久的实践,即创建异步的线程,让它在后台处理那些需要计算很久的任务,这样用户可以继续做其他的事情。

当启动这个线程的时候,有必要阻塞用户的操作,但是在可接受的很短时间之后,阻
塞就会解除。

因为存在网络延迟,使用异步方式来处理任何耗时的远程调用是一种很好的实践。

实际上,网络延迟问题和相关的解决方案由来已久。

在老的客户/服务器模式中,当设计不佳的客户端程序碰上了高负载的服务器时,用户界面就会出现让人难以忍受的延迟。

即便是在如今的因特网时代,当切换页面时,如果浏览器半天出不来东西,那么这种糟糕的情况很可能就是因为网络延迟造成的。

在现有技术条件下,我们暂时还没有办法消除网络延迟,但是至少有一个对策,那就是采用异步方式处理远程调用,不是吗?
糟糕的是,对于Web开发人员而言这样做存在一个难点:HTTP协议是一个“请求—响应”模式的协议。

也就是说,客户端请求一个文档,服务器要么返回这个文档,要么告诉客户端找不着文档或者让客户端去另外一个地方找,还可以告诉客户端可以使用它的本地缓存,诸如此类。

总而言之,“请求—响应”模式的协议是一种单向的通信协议。

客户端可以向服务器发起连接,但是服务器不可以向客户端发起连接。

甚至,当客户端下次发起通信请求时,健忘的服务器都记不起来这个客户端是谁了(HTTP是无连接的)。

多数Web开发者使用现代的编程语言,例如,Java、PHP或者.NET,他们熟悉用户会话(user session)的概念,这其实是应用服务器对于不能保持连接状态的HTTP协议的一种补救措施。

HTTP就其最初的设计目的来说表现得非常好,采用一些巧妙的处理,它能够适应设计之初没有考虑的场合。

但是我们的这个异步回调方案中的关键特征是,客户端会收到两次通知,一次是在线程创建的时候,另一次是在线程结束的时候。

标准的HTTP和传统Web应用模型可不会提供这些。

像Amazon那样的传统Web应用,是建造在页面概念之上的。

给用户显示一个文档,上面包括各种链接和表单,用户可进一步访问更多的文档。

这种交互模式可以在很大的规模上支持复杂的数据集(就像Amazon和其他网站已经证明的那样),它所提供的用户体验也足以满足开展业务的需要。

十年来,这种交互模式在我们对因特网商业应用的看法上打下了深深的烙印。

界面友好的所见即所得(WYSIWYG)Web制作工具使得站点更容易被理解为一堆页面。

服务器端的Web框架使用状态图来对页面的转换建模。

没有引入,传统的Web应用就这么一直牢牢地束缚在页面刷新操作之上,就好像这种刷新是理所当然而且无可避免的,从没有尝试过任何异步的处理方案。

当然,毫无疑问,传统的Web应用肯定不是一无是处的。

毕竟Amazon在这种交互模式上创造了成功的商业应用。

但是这种适用于Amazon的方式并不一定适用于所有的人。

为什么这么说呢?要理解这一点,我们需要考察用户的使用模式(usage pattern)。

泛泛地讨论自行车和SUV(运动型轿车)孰优孰劣毫无意义。

因为它们各自都有优点和缺点——舒适度、速度、油耗或者个人身份的象征等等。

只有在特定的使用模式下讨论,这样的比较才有意义。

例如,是要在上下班高峰时段穿越市中心,还是要带上一家老小去度假,或者只是要找个躲雨的地方。

在类似这样的具体情况下,我们才能有的放矢地比较。

对于用户界面,亦复如是。

软件可用性专家Alan Cooper写了很多有关使用模式的好文章,他定义了两种主要的使用方式:瞬态的(transient)和独占的(sovereign)。

瞬态应用可能每天都会偶尔使用一下,但是总是作为次要的活动,突发性地用上一会儿。

与之形成鲜明对比的是独占应用,独占应用需要应付用户每天几个小时的持续使用。

相关文档
最新文档