2010年1月23日 星期六

Y14 設計想法彙總(4)──事時物者為俊傑

[W02]裡的人、事、時、地、物五個元素,其中人與地偏向於能否運行的條件的定義,真正達成功能的要素還是在“於特定的時間點發生指定的事以影響對應的物”,因而古有明言:事、時、物者,為俊傑。(這……真是夠冷)

程式的執行的最終結果是為了操作資料,部分的人會將設計重心放在資料的存取,而我認同是事的處理過程才去影響到物,所以將設計的重心放在如何以人性的思考來鋪陳事的經過以及事如何去操作物,還有如何將事掛到對應的觸發時間點上。我們時常聽到“堅持做對的事”,這句話其實很適合運用在設計事的處理過程,再加上“所有的物只被事所影響”的限制,“堅持做對的事,同時讓影響的物合乎規範”就形成我最根本的設計理念。再多思考一下會發現,事隱含有處理流程(Flow)與分解動作(Action)二種元素,Action是真正做事的行為,Flow則是組合Action達成目標的完整經過,將兩者明確地分離對於動態置換有相當大的助益。

在程式設計領域裡有很多人提供非常有用的想法與工具(譬如最近亂翻過的新書──編程創藝:編寫出卓越的程式碼就寫得相當好),但是實在不希望程式設計永遠是那種不同人寫的不同、同一個人不同時間寫的也不同的那種混亂。我的目標是想擺脫“趕快用程式碼堆砌出功能就對了”這種思維的產出,而從順應事物運行的自然流動作為出發點來設計。事(Flow、Action)與物(Model)是元件結構裡的三個重要部分,希望只需要簡短的說明就能讓大部分的人寫出相同規格的程式碼。

要去布置妥程式碼會花較多時間,絕對沒有人會接受多花時間只能得到相同運行結果的,現今有些作法有令人頭痛的關聯追溯與文件問題,推論起來有機會在我的理念中全部自動產生;目前唯有讓自動產生內容節省的時間大於(大很多)布置程式碼時多用的時間才會有誘因。

科學的字義是:以一定對象為研究範圍,依據實驗與邏輯推理,求得統一、確實的客觀規律和真理。精確地100%維持每一個程式指令全部在對的位置做著對的事是極其困難的,需要團隊中每一位成員的堅持。暫且放下類似“人性不可能做到100%”的負面想法,試著思考“怎麼調整可以達成那個理想?”、“做到後是否真的帶來那些好處?”,積極地相信未來的願景才有可能在現下勉勵自己達成各項要求一步步的前進……。

註:努力的方向([Q09]、[Q10]、[Q11]、[Q12]、[Q13]、[Q14]、[Q15]、[Q16]、[Q17]與[Q18])記錄的是我想做的。

沒有留言:

張貼留言