面對網頁設計的分析方法
面對網頁設計的一個重要分析方法是利用網頁的功能來驅動設計。對象有了功能,才會成為具體擁有意識的網頁,成為網頁社區中可以獨立完成,或者發出指令委派別的網頁協作完成功能的一員。將網頁看成是“具有功能的東西”。網頁應該自己負責自己,而且應該清楚地定義功能。這就是網頁設計的關鍵。好的軟體設計者應該像牧羊人一般放牧自己的牛羊,只需要給它們一片豐沃的草地,它們就能自己覓食生活。
Rebecca認為:網頁在履行功能時有3種選擇,你可以任選其一:(1)親自完成所有的工作。(2)請求其他網頁幫忙完成部分工作(和其他網頁協作)。(3)將整個服務請求委託給另外的幫助對象。在分析網頁功能時,可以考慮“專家”模式,即信奉專業的事情交給專家來完成,既不互相推諉,卻也不能越俎代庖。專家有其擅長的領域,如果把專家錯放在他不熟悉的領域,不僅會降低工作效率,還可能引入潛在危機。所謂“尺有所長,寸有所短”,含義正在於此。
網頁的能力總是有限的,正如我們不能將所有的雞蛋放在一個籃子裏,我們也不能將所有的功能交給“上帝”。這既避免單一功能點帶來的風險,又能實現功能的分權。Christepher Alexander建議,在遇到設計問題時“儘量少用集權的機制”。軟體設計同樣如此。功能總是可大可小,面對複雜的功能行為,總是需要多個網頁的協作才能完成,就像機器中的零部件,按部就班,各司其職。
讓我們來設計一個資料分析器,它通過分析演算法對輸入資料進行分析,並將結果保存在輸出集中。根據業務需求的不同,執行的分析演算法也不相同。同時,為了提高分析性能,我們還需要採用多線程方式執行分析任務。從調用者的角度來看【即Martin Fowler提到的規約視角】,我們只關心分析需要的資料以及分析後的結果。那麼,誰應該來承擔分析的功能呢?毫無疑問,我們可以定義分析器網頁來履行這一功能。此外,調用者其實並不會關心分析演算法的實現以及分析的過程,他希望分析是易於執行的,這一願望通過有效的封裝完全可以滿足。我們可以將分析的功能封裝在DataAnalyzer類中,同時隱藏具體的分析演算法。
然而,資料的分析並不是一件簡單的事情。分析器雖然是分析的專家,卻不精通多線程的執行。它自身無法提供分析的非同步操作,這時就需要其他網頁的協作。分析器將這一功能委派給TaskScheduler對象。TaskScheduler是一個任務調度器,可以發起任務的運行,並在運行完畢的時候,通知任務的發起者。對於TaskScheduler而言,並不會關心具體執行了何種任務。這樣的設計能夠遵循Demeter法則,讓網頁儘量保持無知,以避免不必要的依賴。
轉貼來源:網頁設計知識分享部落格
參考文獻:
1.黃佳惠(2005)。體驗品質、滿意度及行為意向關係之研究-以華陶窯為例。朝陽科技大學休閒事業管理系碩士論文,未出版。
2.黃映瑀(2005)。體驗行銷、體驗價值、顧客滿意、品牌形象與行為意向關係之研究。大葉大學事業經營研究所碩士論文,未出版。
3.黃惇勝(1995)。台灣式KJ 法原理與技術-邁向21 世紀改造臺灣的思考武器。台北:中國生產力。
相關文章
瞭解11條網頁設計模式思維定律11個基本的編寫網頁設計程式技巧企業資訊網頁設計管理系統的開發設計一個網頁設計安全模式的流程開發網頁設計的過程-複製和貼上
最新文章
HVACKer:入侵隔離網絡的新型攻擊技術還有什麼不會被入侵?路由器 LED 燈已成為攻擊入口美 5 家獨角獸同天申請 IPO 掛牌,最狂的是一家估值 124 億美的數據分析新創!【台灣「智慧產業」開始佈局】緯創集團領投跨國 AI 新創 iKala,下一步拓展東南亞市場快可以用手機遠端遙控你的所有家電了