• ServletFacade總控制器每次收到請求通過反射區(qū)分發(fā)業(yè)務(wù)處理嗎?是否性能問題?
沒錯,每次都反射,性能方面沒啥問題。首先,這里的分發(fā)有兩層,首先是對模塊EJB的分發(fā),這里會對EJB訪問實(shí)例進(jìn)行緩存,下次有invoke就直接拿出來用就行了;接下來會對業(yè)務(wù)層以及進(jìn)一步對DAO一層的類進(jìn)行反射創(chuàng)建實(shí)例并調(diào)用。因?yàn)镈AO類非常簡單專一,就是HQL的處理組織,創(chuàng)建時基本沒有任何復(fù)雜業(yè)務(wù),速度會很快。而且隨著現(xiàn)代虛擬機(jī)和硬件配置的大幅提高,反射的效率影響很小,甚至可以忽略。用Sun官方的話說:There is some overhead with reflection, but it's a lot smaller on modern VMs than it used to be。而且,如果以后這個環(huán)節(jié)真的產(chǎn)生性能問題,可以再處理成緩存機(jī)制即可。當(dāng)然緩存也會帶來清理維護(hù)的麻煩以及內(nèi)存消耗的成本。這塊的設(shè)計必須要左右權(quán)衡,均衡就好。至今來說,2BizBox的ERP后臺運(yùn)行還是比較輕量高效的,大家可以試試看。當(dāng)然如果規(guī)模大的商用,服務(wù)器還是要配置好一點(diǎn),內(nèi)存大一點(diǎn)更佳(現(xiàn)在內(nèi)存老便宜了)。
• 這個構(gòu)架中,最后用hibernate 與數(shù)據(jù)庫連,遇到數(shù)據(jù)量大的時候能支持嗎?
沒問題,要相信Hibernate和JBoss的水平,呵呵。Hibernate是非常、非常、非常好而成熟的框架,相信大多數(shù)人都在用了很多年了。效率方面,用JavaEye老大Robbin的話說,它產(chǎn)生的SQL可能比在座大多數(shù)人寫的SQL水平很可能會高好一點(diǎn),效率不差。對于一些復(fù)雜的查詢和SQL操作,可以穿插直接使用SQL和JDBC的方式來解決。我們這里也經(jīng)常有創(chuàng)建臨時表等復(fù)雜的操作,都很正常,Hibernate本身也鼓勵如此。
• ERP主要是業(yè)務(wù)上的東西,你這個架構(gòu)是在浪費(fèi)時間。
沒錯,ERP其實(shí)最主要內(nèi)容還是業(yè)務(wù),鋪天蓋地的功能界面、模塊、報表、無數(shù)的字段和數(shù)據(jù)…。但是任何軟件系統(tǒng)的業(yè)務(wù)都是靠軟件本身支撐起來的。如果造一座大樓,就必須打好地基;如果造或者,就必須先建好鐵軌;如果建大橋,就必須先打好橋墩。否則只強(qiáng)調(diào)“航母主要是飛行甲板,你這個龍骨設(shè)計是浪費(fèi)時間”,也是有失偏頗的。目前2BizBox ERP我們接觸到的代碼就已經(jīng)將近200萬行,如果沒有一個好一點(diǎn)的架構(gòu)和基礎(chǔ),肯定就亂套了。搞建筑咱不都想造一個埃菲爾鐵塔百年經(jīng)典作品么,咱做軟件的也不能示弱啊。
• 這樣的話還不如直接用RMI通訊。
用RMI確實(shí)是一個可行方案,其實(shí)我們的ERP以前采用過,不過后來換掉了,不是很推薦。RMI+IIOP曾經(jīng)一度被Sun委以重任,卻最終沒流行起來,尤其在Web為王的今天。主要原因還是太復(fù)雜笨重。我們也曾經(jīng)使用RMI+IIOP+EJB的方式來做前后臺通訊,但是效率、穩(wěn)定性、復(fù)雜度都很高,開發(fā)和部署都很麻煩,就一個異常傳遞處理就夠弄一壺的。如果再要實(shí)現(xiàn)回調(diào),還要在本地起一個服務(wù)server,部署麻煩。另外一個大問題是端口,它需要獨(dú)立的端口(例如通常是1099),如果前臺回調(diào),還要客戶端起Socket服務(wù)端口。如果考慮到后臺的Web本身還要80端口,這勢必要求防火墻開放更多端口,很多服務(wù)器和管理員都不愿如此,他們基本上只相信80,其他一概關(guān)閉。基于“效率低”、“使用部署麻煩”、“防火墻端口”等幾個方面問題,2BizBox ERP還是使用了Java Serialization over HTTP的思路處理前后臺通訊。這樣,后臺只需要開一個80端口就行了,和Web服務(wù)器一樣,前臺則和一個瀏覽器一樣。當(dāng)然,這樣也沒法實(shí)現(xiàn)Callback了,不過基本上無所謂,所有的Web應(yīng)用不都是如此么。
• 對于把ejb換成 80 直接訪問,速度是快了,ejb容器很多用途現(xiàn)在都怎么完成的?比如事務(wù)完整性的控制?
• 問個題外話,這個打包的安裝文件是用什么工具生成,能否說說使用方法?
安裝文件是用Inno Setup這個開源工具做的,它支持多component、多語言,很簡單方便,很推薦。Inno Setup發(fā)展十多年了,很穩(wěn)定成熟,使用人很多,資料也不少,詳細(xì)可以看這里:http://www.jrsoftware.org/isinfo.php
• 我們現(xiàn)在也在用swing做開發(fā),不過客戶端部署方式上我們直接采用web start方式。
關(guān)于Java Web Start使用,忍不住想多說一些。我們以前也是使用Java Web Start來對客戶端進(jìn)行部署的。最主要覺得這個東西可以讓客戶端自動更新,比較省事。但是隨著客戶量增大、客戶端復(fù)雜度越來越高、發(fā)現(xiàn)的Java Web Start的bug越來越多,我們最終放棄了Java Web Start,轉(zhuǎn)而使用傳統(tǒng)的安裝文件的方式。對JWS技術(shù),我的意見是:一定要慎用。JWS的思路很好,Sun也一直想把它做好,可惜人手不夠,Swing都顧不上了,哪里有心思JWS,結(jié)果導(dǎo)致bug暴多。大家如果不信,可以看看JDK6的每個update有多少bug fixing是關(guān)于JWS的,簡直不計其數(shù)。我們客戶碰到的問題也是千奇百怪:下載速度特別慢的問題、update進(jìn)度條不準(zhǔn)(JWS的下載進(jìn)度條就從來沒準(zhǔn)過)、快捷創(chuàng)建的問題、有時候死活不update的問題、不同語言的問題、需要同時存在不同版本客戶端連接不同版本后臺的問題、快捷鍵無法刪除問題、不同瀏覽器問題、JNLP文件內(nèi)容修改維護(hù)問題…等等等等,想起來簡直是罄竹難書,經(jīng)常被客戶逼的要跳樓,你卻毫無辦法:因?yàn)槟銦o法控制這些東西。最終我們選擇徹底放棄JWS,用傳統(tǒng)的setup方式反而更加方便直觀。這里有我們同事整理的一些文章,感興趣的朋友可以看
看:http://sailing8036.spaces.live.com/blog/cns!69D05DFD4294F487!479.entry?wa=wsignin1.0&sa=728927372
• 現(xiàn)實(shí)告訴我們,即使做java的,還得分windows版和linux版。請教樓主一個問題,你們用ejb是什么道理?是做事務(wù)管理嗎?
其實(shí)2BizBox前后臺都可以在linux下面運(yùn)行,不過要做到自動安裝等比較麻煩,現(xiàn)在為了讓大家都能免費(fèi)方便的使用這款ERP,所以僅僅制作了windows的安裝程序,方便下載、安裝。2BizBox ERP的前后臺都具有非常好的跨平臺特性,后續(xù)發(fā)布版本可能會做到zip方式合二為一。用EJB,確實(shí)一個重要原因是事務(wù)控制。作為大型的ERP系統(tǒng),數(shù)據(jù)的一致性和完整性是必須要嚴(yán)格控制的,事務(wù)控制也必不可少。由于EJB下層使用了大量的業(yè)務(wù)層并進(jìn)一步調(diào)用DAO層進(jìn)而操作數(shù)據(jù)庫,這些方法必須在EJB層進(jìn)行統(tǒng)一的事務(wù)管理。通過JTA的統(tǒng)一封裝,可以做到原子化的成功和失敗回滾,保證數(shù)據(jù)安全和完整性。大家都抨擊EJB很爛,不過使用Local的無狀態(tài)Bean+事務(wù)控制,還是很好的一個東西。
• 當(dāng)時沒考慮國際化?這個東西免費(fèi)太匪夷所思了。
國際化是必須的,Java有I18N這么好的框架,2BizBox怎能不用吶?我們是直接使用Java的PropertyResourceBundle,把所有的字符串都拉入properties文件,對不同語言文件進(jìn)行維護(hù)。我們甚至內(nèi)部開發(fā)了專用的多語言字符串翻譯維護(hù)工具,減少工作量。目前v3新版本的漢化工作正在緊張有序進(jìn)行,接近尾聲,還需要測試和檢驗(yàn),請大家再耐心等待!關(guān)于這類大型管理軟件的翻譯、漢化和多語言支持還有很多話題和細(xì)節(jié),如果大家感興趣,我會專門寫一篇介紹。另外這個ERP免費(fèi),確實(shí)很難以置信!讓人雞動!!不過免費(fèi)是一種潮流和發(fā)展方向,不管認(rèn)同不認(rèn)同,掌聲鮮花或口水謾罵,咱們其實(shí)都是受益者。QQ和360打架討厭,但它們都是優(yōu)秀的免費(fèi)軟件,給整個行業(yè)和國家做出了巨大的貢獻(xiàn),這一點(diǎn)是不能否認(rèn)的。希望大家能支持和宣傳2BizBox ERP軟件,讓全中國更多的企業(yè)可以從高質(zhì)量的免費(fèi)ERP軟件中收益!
好了,總算可以進(jìn)入正題了。今天的話題是軟件界面要“好看”,更要“好用”,這兩點(diǎn)很重要,缺一不可。好看不好看,或者好用不好用,都是比較抽象的概念,仁者見仁智者見智。但是,軟件“以用為本”這一點(diǎn)我們都不否認(rèn)。2BizBox項(xiàng)目在國內(nèi)外很多人參與,語言不同、文化不同、習(xí)慣不同,連IDE工具都不同;要做到成千上萬界面的美觀一致和專業(yè),需要做很多細(xì)致工作,開會、討論、電話、郵件、skype…煩不勝煩。不過,說到底都是細(xì)活兒。其實(shí)做高質(zhì)量軟件的唯一秘密也就是 “細(xì)節(jié)”這僅此一點(diǎn)而已。
風(fēng)格一致Same Style
2BizBox ERP中的界面成千上萬不計其數(shù),開發(fā)者眾多,如何保證圖形界面的布局風(fēng)格一致?這需要有文檔規(guī)定,還要開會、培訓(xùn)、測試、檢查、評審等等。Windows是圖形界面的鼻祖和大家,如下圖,隨便找一個Windows界面,仔細(xì)觀察,你會有所收獲:
• 界面邊緣以及內(nèi)部邊距都很一致(一般都為5或10)。要體現(xiàn)在軟件開發(fā)中也很簡單。例如在使用Swing的FlowLayout進(jìn)行布局,直接可以指定默認(rèn)間距,避免不同開發(fā)者的設(shè)計風(fēng)格出現(xiàn)差異:
•對齊方式都很統(tǒng)一(左對齊)
•通過帶標(biāo)題的Group對界面元素進(jìn)行適當(dāng)分組
此外,在2BizBox客戶端開發(fā)中,對于所所有界面,都要遵循一些要求和慣例,這些要求有時候都很難用語言描述清楚,更多的是要靠開發(fā)者多思考和體會:
• 每個界面都有比較清晰的標(biāo)題,盡量做到能夠“見文生意”。
• 有操作的界面要有“取消”或“關(guān)閉”按鈕。
• 除主窗體外,基本不使用工具條和狀態(tài)條。
• 慎用顏色和各種字體(包括字體大小和類型)。過多的顏色和字體會顯得混亂,也會給用戶一種不安的情緒。不過,對于一些需要提示用戶注意的元素,又要堅定不移的用鮮明甚至刺激的顏色進(jìn)行標(biāo)示。這其中的平衡比較不好把握,不過“避免出錯”比“好看”總是更重要的。2BizBox的早期版本風(fēng)格非常樸素,甚至有點(diǎn)“灰頭土臉”的。但誰說ERP或管理軟件就應(yīng)當(dāng)“一臉古板”呢?經(jīng)過反復(fù)嘗試,2BizBox還是選擇了能讓人心情更加舒適愉悅情緒穩(wěn)定的綠色和灰色作為主顏色,配合橙色、黃色、暗
紅色來突出一些界面元素,做到搭配合理。總之,界面風(fēng)格就和穿衣服一樣,不在乎花里胡哨,而在乎搭配和協(xié)調(diào)。
• 彈出消息要友好、清晰。2BizBox中的彈出消息分4個級別,包括詢問、信息、警告、錯誤
其中,嚴(yán)格慎用error錯誤級別的消息,除非碰到非常非常嚴(yán)重的情況,例如底層故障、無法繼續(xù)操作等。過多的error錯誤信息,會給用戶“系統(tǒng)容易崩潰”的感覺,讓用戶覺得恐慌,不踏實(shí)。軟件雖然有會有各種異常,但是跟用戶解釋的時候卻要顯得“蛋定”,不要總拿“大紅叉叉”的message嚇唬用戶。此外,彈出消息不光要提示發(fā)生了什么,還要盡量給出解決辦法和后續(xù)推薦操作,甚至直接引導(dǎo)用戶進(jìn)行后續(xù)操作(如下圖,提示設(shè)置零件圖片F(xiàn)TP設(shè)置的提示消息)。
• 按鈕要有文字。如果只有icon無文字,必須設(shè)置清晰可讀的tooltip;
• 減少界面中的邊框。有的軟件喜歡用邊框,大框套小框,最后框框一大堆,內(nèi)容反而被弱化。邊框本意僅僅是做好“組織分類”的作用,過多濫用反而喧賓奪主,造成用戶眼花:
• 常用按鈕的排列順序要一致。2BizBox ERP中是大概按照“打印-刷新-編輯-添加-復(fù)制-快速查看-關(guān)閉”等順序安排的。關(guān)閉按鈕統(tǒng)一放在右下方,其他按鈕放在左下方,依次橫向排列。
• 有遠(yuǎn)程操作的界面,要有等待或進(jìn)度條,并可以取消,因?yàn)檎l也無法說清遠(yuǎn)程調(diào)用會消耗多少時間。執(zhí)行結(jié)果要有明確提示:如失敗提示,或成功后界面直接跳轉(zhuǎn)。
• 盡量用內(nèi)嵌的Tab窗口顯示數(shù)據(jù),而非獨(dú)立的JFrame或JDialog,避免界面雜亂并占用資源。我們的經(jīng)驗(yàn)發(fā)現(xiàn),大量不關(guān)閉的JFrame或JDialog將占用大量操作系統(tǒng)資源,導(dǎo)致內(nèi)存占用嚴(yán)重,系統(tǒng)變慢。而使用Swing輕量的組件如用內(nèi)嵌Tab界面,則占用資源極少,基本上可以使勁new,畢竟他是輕量的(也就是Swing給Paint出來的),而不是重量的(操作系統(tǒng)的本地對等窗口對象)。除非有必要,才使用彈出對話框,因?yàn)槟J降膹棾鰧υ捒驎钄嘤脩舻钠渌换ァ@缭谀J綄υ捒蛏咸顚懥艘欢褦?shù)據(jù),突然發(fā)現(xiàn)一個數(shù)據(jù)需要到其他模塊差一下,此時會陷入嚴(yán)重的困境。使用對話框彈出必須屏幕居中,且要保持模式狀態(tài)。個人始終認(rèn)為,非模式的彈出對話框,是軟件中最怪異的做法之一。
• 不要濫用圖標(biāo)。很多人喜歡用圖標(biāo),感覺用了圖標(biāo)軟件會更好看。按鈕、菜單、tab、列表、樹、下拉框甚至Label等等都大量使用圖標(biāo)。而且大多程序員自己不會設(shè)計圖標(biāo),只是到處google或扣別人的圖標(biāo),弄的軟件界面七拼八湊,風(fēng)格雜亂、花里胡哨、嘩眾取寵,界面反而失去了重點(diǎn)。就像女孩子穿衣服不是說把最好看的毛衣、外套、帽子、鞋子一股腦穿上就肯定好看。穿衣戴帽講究的是“搭配”,Icon也是同樣。Icon的作用是起到標(biāo)示和圖示的作用,增加軟件的美觀性和可理解性,但是不可過多濫
用。
• 窗體比例協(xié)調(diào)。無論是Frame還是Dialog,長寬比例要協(xié)調(diào),一般控制在5:3到3:5之內(nèi),超過2倍的比例一般都不太推薦。人的上半身和下半身的最佳比例也有一個范圍,光靠上半身很長,估計也找不到女朋友不是?
• 界面布局要考慮易維護(hù)性、易理解性,而不是只考慮個人喜好甚至炫弄技巧。例如下圖例子:用過多的按鈕設(shè)計省份非常失敗,加入增加一個省份則需要修改代碼。“黑龍江”由于三個字被迫移動到下方,和“港澳臺”一起,引起用戶困惑。
減少點(diǎn)擊Less Click
軟件的一個重要任務(wù)就是方便操作,省時省力。所謂“簡單、方便、快捷”,可不僅僅是口號。要做這一點(diǎn),首先要從“減少鼠標(biāo)點(diǎn)擊”開始。鼠標(biāo)點(diǎn)擊動作能省一定要省,能少一定要少。能一目了然的信息,就不要拆的哲理那里、繞來繞去。軟件業(yè)里面一個極端說法是“3次點(diǎn)擊即可調(diào)出任意功能”,雖然比較難,但是足以說明“軟件以用為本”的思想。以下舉一些例子,可能會引來大家的共鳴或爭議,不過歡迎大家積極探討,畢竟軟件界面設(shè)計沒有完全的一定之規(guī),而且也隨著時代的變化而發(fā)展,有點(diǎn)類似服裝設(shè)計。要不說我們程序員和服裝設(shè)計師、建筑師是一類人呢!蓋樓造衣服都有各自品牌或設(shè)計師特色,但都會遵守一定的基本規(guī)則,不會亂來。
• 一個界面上,除非特別必要才使用tab。為什么?減少點(diǎn)擊。因?yàn)榍袚Qtab需要多一次鼠標(biāo)點(diǎn)擊。不過我們可以看到很多軟件界面都特喜歡tab:沒多少信息,還弄了一個大大的tab;tab上標(biāo)簽頁很多,可點(diǎn)來點(diǎn)去,每個tab上東西卻寥寥無幾,讓人惱火。程序員往往喜歡從自己的喜好,想當(dāng)然的設(shè)計這樣的界面,完全沒有考慮使用者的感受,既不直觀,也費(fèi)時費(fèi)力,沒有體現(xiàn)“軟件以用為本”的思想。
• 能一個界面顯示完整的信息,就不要拆成多個界面。ERP里面很多單據(jù)信息復(fù)雜,關(guān)聯(lián)信息眾多,如何讓用戶清晰、一目了然所有的數(shù)據(jù),是一個難題。不過,我們的原則是,寧可多現(xiàn)實(shí)一些數(shù)據(jù),也不拆分成多個需要點(diǎn)擊按鈕分別呈現(xiàn)的界面。數(shù)據(jù)多,界面會顯得繁雜一點(diǎn),但是眼睛的移動速度總比鼠標(biāo)再點(diǎn)擊按鈕查看新界面的速度更快。況且,通過不斷的布局優(yōu)化和組織重構(gòu),總是有辦法讓信息更加清晰。
• 界面信息飽滿,重心穩(wěn)定,頭重腳輕、大面積空白。一個好的例子是2BizBox的“快速訪問視圖”。大家初次看到這個界面,一定有“密密麻麻”的感覺,其實(shí)這是經(jīng)過精挑細(xì)選,把最常用的功能入口都統(tǒng)一組織放在了這個最方便醒目的位置,讓用戶可以快速進(jìn)入一個常用的功能,減少點(diǎn)擊次數(shù),增加易用性。這就是為什么很多用戶習(xí)慣了2BizBox后就會愛不釋手。“漂亮”和“易用”那個更重要?這就像問找老婆“漂亮”和“善良”哪個更重要一樣:如果無法兼得,咱寧可都選擇后者。
• 能用復(fù)選框,就不用下拉框。為什么?因?yàn)槎嗔艘淮吸c(diǎn)擊。請問,選擇一個“YES”、“NO”的選項(xiàng),用checkbox點(diǎn)擊幾次,而用ComboBox又是點(diǎn)擊幾次?
• 能用列表,就不用下拉框。為什么?因?yàn)槎嗔艘淮吸c(diǎn)擊。List可以直接點(diǎn)擊選擇,而且所有選項(xiàng)可以一目了然,還可以做到多項(xiàng)選擇。而下拉框只能單選,還要先點(diǎn)擊一次下拉。當(dāng)然,ComboBox比List有占空間小的優(yōu)勢。所以很多時候,界面設(shè)計是一種美觀、易用的妥協(xié)結(jié)果。也許沒有多少高深技術(shù)問題,但細(xì)節(jié)對于易用性和軟件的品質(zhì)卻很重要。
• 菜單不能深,最多2層。為什么?減少點(diǎn)擊次數(shù)。超過2層的菜單,功能被隱藏太深,組織結(jié)構(gòu)太復(fù)雜,太難用,同時也增加了點(diǎn)擊次數(shù)。舉一個例子:一個大樓,進(jìn)去一個主走廊,兩側(cè)是辦公室,或可以再有分支走廊;如果分支走廊兩側(cè)還有進(jìn)一步的“毛細(xì)走廊”,你可能直接就暈菜了,這樣的迷宮大樓,你敢進(jìn)么?2BizBox所有功能都集中在主界面的主菜單上,雖然功能眾多,卻保持兩層的設(shè)計,簡單方便。
• 統(tǒng)一的快捷鍵操作方式,減少鼠標(biāo)操作。例如,所有tab內(nèi)嵌窗體都可以通過ESC關(guān)閉,按F5刷新,等等。如果你鍵盤熟練,則會感覺很快很方便。
• 盡量不用右鍵菜單。為什么?減少點(diǎn)擊。當(dāng)年一個美國同事這樣培訓(xùn)我們:右鍵菜單被稱為“hiddenfunctions”,是比較tricky的stuff,能不用盡量不用,我們印象很深刻。沒錯,這幾年經(jīng)常看到幾近花甲的工廠老人在用2BizBox,他們一生搬零件或畫圖紙的手拿起鼠標(biāo)來卻可能顯得笨拙顫抖,不要說右擊菜單,就是單擊和雙擊對他們都很難。對于他們來說,右鍵菜單這個東西絕對是夠tricky的。可千萬別說這些人蠢,ERP的用戶就是這些制造業(yè)的勞苦大眾,不都是程序員和游戲狂人,他們甚至整年少碰電腦。我們程序員的任務(wù)是讓軟件適應(yīng)人,而不是讓人適應(yīng)軟件。我們永遠(yuǎn)都不要嘲笑自己的用戶。另外,右鍵菜單是把固有的功能“藏起來”,如果不動手,光靠眼睛看,是無法觀察到這些功能的,違反了“一目了然”的原則。一個界面如果不能通過觀察就可以大概猜測出其功能和用法,則是比較失敗的。所以右鍵菜單應(yīng)當(dāng)慎用。
為了減少點(diǎn)擊,2BizBox對功能的組織可謂費(fèi)盡心機(jī)。在主界面上就有如下體現(xiàn):
• 主菜單:羅列了所有模塊、子模塊的所有功能點(diǎn),并保持了2層菜單結(jié)構(gòu)。這里像一個功能字典,讓初次接觸2BizBox的用戶可以滑動鼠標(biāo),快速了解2BizBox的模塊和功能。隱藏較深的功能,也可以通過主菜單,快速進(jìn)入任何功能入口。有人說菜單這個東西很土,有點(diǎn)過時了。不過無論采用什么技術(shù),“易用性”永遠(yuǎn)不會過時。
• 模塊欄:模塊欄把2BizBox中所有的模塊、子模塊經(jīng)過篩選和組織,直觀的放在一起。同時,配合屏幕中間的模塊關(guān)系流程圖,能夠更清晰的了解模塊的組織結(jié)構(gòu)和關(guān)系。
• 快速任務(wù)列表:當(dāng)選中任意模塊或子模塊,右側(cè)的“快速列表”都會直接過濾并顯示當(dāng)前選中模塊的常用功能。“快速列表中”顯示的都是經(jīng)過精挑細(xì)選、用戶最常用的功能,并通過幾個經(jīng)典易懂的圖標(biāo)來快速標(biāo)示其“添加”、“修改”、“查詢”的功能類別。直接點(diǎn)擊,即可進(jìn)入該功能界面。
• 快速訪問視圖:如果說“快速任務(wù)列表”無法直觀的給出每個功能的查詢操作參數(shù),那么“快速訪問視圖”則可以解決這一問題。在這里,羅列了本模塊最最常用的一些功能入口,并直接給出了該功能需要輸入的各種參數(shù)。這樣,用戶可以一目了然的看到每個功能和參數(shù),直接輸入?yún)?shù)并點(diǎn)擊按鈕進(jìn)入功能界面。
• 模塊快捷按鈕:在模塊圖上,每個模塊節(jié)點(diǎn)的右邊都有三個小圖標(biāo),對應(yīng)三個快捷按鈕。這三個快捷按鈕,是該模塊最最最常用的三個功能,可以直接點(diǎn)擊進(jìn)入,進(jìn)一步減少點(diǎn)擊次數(shù)。
2BizBox ERP中文版(內(nèi)部預(yù)覽)
你可能會說,至于這么大動干戈的減少點(diǎn)擊次數(shù)么?好,咱們舉一個例子吧:假如你做的一個2BizBox界面會被1萬人使用,或者說,2BizBox軟件足夠lucky,可以被100萬人使用,而這些人每天都至少操作這個界面一次。如果你的界面設(shè)計增加了一次點(diǎn)擊,按每次點(diǎn)擊用時1秒,你知道這次設(shè)計每年會消耗掉多少時間嗎?100萬人*360天=3.6億秒=10萬小時=12500個工作日=568個工作月=近50工作年。如果按一個人一生工作35年計算,你的這個設(shè)計不亞于毀掉了一條半人命。這是在犯罪、在殺人,不是嗎?