看板 Soft_Job 關於我們 聯絡資訊
※ 引述《rosemary0401 (rosemary0401)》之銘言: : 一般人的認知都覺得關鍵技術都在底層, : 寫UI不外乎就是拉拉button,改改字串... : 請問以寫UI的RD工程師來說,寫UI的學問到底在哪裡呢? 首先,考慮到一般程式的目的,在於協助使用者做資料的處理, 我們可以說一個程式的關鍵,就在於其如何去處理資料. 當程式在處理資料時,通常可概略分成三個部分:輸出入介面,流程,資料庫. 而輸出入介面與流程,正與一般所泛指的UI部分密不可分. 以現在電腦的能力來說,大多數的資料處理,都可以在極短時間內完成, 然而當使用者在操作軟體處理資料時,往往要花上數百倍到數千倍以上的時間來輸入資料, 設定處理的流程. 舉例來說,用繪圖軟體處理一張680x480的圖檔, 耗在數值運算及存取檔案的時間,可能用不到一秒,然而使用者在開檔,選圖, 選取特效,預覧效果以及選擇儲存位置所花的時間,卻往往要數十秒到數分之久. 我們可以說使用軟體的九成以上的時間,使用者都專注在UI相關的各項工作. 在這種情形下,與其去讓"關鍵技術"的時間從1s進步到0.5s,還不如去增進工作流程, 讓使用者需要執行的動作從10個步驟降到9個步驟,對程式整體的效益還比較好. : 也許有人會說UI要做的user friendly是很有學問的, : 但是UI上的行為、排版、設計...這些部分不都是由PM或是其他部門的人來負責的嗎? UI的行為會影響到程式的架構, 排版及設計的好壞在不同平台上,有可能會直接牽動程式 的彈性. 如果UI的行為,排版,以及設計,是由完全不瞭解平台,不瞭解程式的人主導,下場往往就是 RD的負擔加重;瞭解這些也會對工作的估算有所幫助. 此外,如果有仔細看過設計模式,你可能會發現,許多重要的設計模式,其實都與MVC的實現 有關. 而一般程式中,會使用到多工,多執行緒的時候,多半也是為了讓使用者有好的經驗以及 及時的回饋. : RD只不過是把別人設計好的UI寫出來,也不需要知道底層的技術, : 只要call底下給的API就好,請問以RD來說寫UI到底難在哪呢? 個人感覺,UI最難的就是要做得簡單. 一個簡單的動作,往往代表著後面有無數自動化的判斷. 而要達成"簡單"的要求,絕不是光呼叫底層API就可以完成的. 最後,版上有在寫應用程式的網友可以注意一下,目前開發所用的API中,有多少是跟 繪圖及UI有關的? 以Android而言,在android套件下,graphic,text, view, media, inputmethod, 以及 resource的管理大概就佔了整個API的二分之一,database加上app大略又佔了剩下的一半, 剩下才是網路,電話以及os和硬體相關功能.UI的技術難度及重要性不言可喻。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.168.72.32 ※ 編輯: atst2 來自: 118.168.72.32 (05/05 19:48) ※ 編輯: atst2 來自: 118.168.72.32 (05/05 19:48)
MacPerson:寫得太好了~~~~~ 推 05/05 20:04
zvn:讚!讓寫UI的我總算感覺自己有點重要性了 Orz.. 05/05 21:36
Ting1024:這篇該m 05/06 00:16
tomap41017:推android分析 05/06 01:07