做為開發人員 你為什麼應當關心設計

labazhou發表於2014-08-07

  我們開發人員經常錯誤地過早進入編碼階段,因為這對我們太自然了。我們通常意識不到,編碼是昂貴的。我自己在以前就經常犯這個錯誤。當我們從頭為一個app編碼時,主要的設計決定仍然需要去做,我們在開發階段很快就發現app的很多部分經常需要被重寫。原因在於,當編碼時,我們發現現實與我們腦子裡規劃的不一樣,有很多我們根本沒有考慮到的。如果我們換種方式處理這個過程,所有這些都是顯而易見的。

  固然,程式碼總是在改變和重構,不應該阻礙開發人員,不過,我們傾向於忘記變化所帶來的時間成本。我們想盡可能地最小化成本。如果你為app做了線框圖或模型,修改它們要比修改已經寫好的程式碼更加簡單快速。

  做為開發人員,你或許認為設計app不是你的工作。畢竟,設計師的工作不是提供線框圖和模型的嗎?哦,差不多吧。在某些專案,這項工作的確會被安排給設計師,但是也有很多理由證明,做為開發人員的你,為什麼想具備這項技能。

  如果你是一名自力更生的app開發者,你可能沒有錢僱傭專業設計師。儘管如此,這不代表你應該跳過設計階段,這是很多人犯的錯誤。雖然你可能不具備設計師老手的技能和經驗,建立模型的簡單幾步將提前突出很多在你開始編碼時就會遇到的問題。既然這是一項你自己遲早不得不要做的工作,最好儘可能快地優化和搞定。記住:設計意味著在當前條件下就你的app做出決定。這無論如何就是你的責任。

  如果你是,或將來是一名自由開發者,很多設計工作也會成為你工作的一部分。很多客戶沒有支付一名獨立設計師的預算。他們想讓你提供問題的解決方案,並把你當做專家。某些客戶是不理解設計和開發的區別的。

  對你來說,從費用中拿出一部分僱傭設計師協助你當然可行,只是這意味著給你的預算會有更多的限制。對於我過去的某些任務,這不是必需的,因為我能夠自己搞定。

  注意我沒有說過你從來不需要設計師。如果專案龐大,預算允許,當然,去僱傭一名經驗豐富的設計師。但是當僱傭另一個人不是可選項時,時時準備好自己做這項工作才是正道。即使可以,這也有助於你監督、影響設計過程,以及做為開發人員的前途提升,這是設計師經常沒有的機會。

  如果你受僱於某些公司,可能以及有設計師了(如果你在小創業公司工作,前面的那段話也對你適用)。就算是固定工作,能夠理解設計師並與之溝通也對你的職業生涯有幫助。這會在公司內部產生一個更好的過程,一個優化的產品,讓你更加專業。

  如你所見,不管你的崗位是開發人員,還是其它,編碼前,理解和運用某些設計過程,要比直接開發,有著較大優勢。很多開發人員跳過了這一重要階段,實際上很多次了。我過去也這樣,好多次了。

  不要認為設計過程純粹是app某種視覺上的展示。為你收集需求,這也是設計階段的活兒。記住賈伯斯說的話:“設計並非只是它看上去怎麼樣和感覺怎麼樣。設計是關於它是怎麼執行的。”因此,提前理解你的app想完成什麼、如何完成才是重要的。當你已經敲程式碼了再去理解,會花去更多的時間。

  既然這是重要的話題,我寫了一個一步一步的教程,書裡覆蓋了app的設計過程。即使你不買這本書,我也希望我設法讓你堅信提前做這項工作的重要性。下一次你去開發新的app時,或只是已有app的一個新功能,忍住不要寫程式碼,而是開始建立一個模型。有很多現成工具可以助你一臂之力,不過你不需要有想象力的東東。即使用紙和筆勾勒出你的想法,也會改善很多開發流程。

  如果你想結合具體案例研究這個過程,可以參考我的書《Step by Step iOS Development》。

  原文地址:matteomanferdini.com 翻譯:labazhou

相關文章