|
先做一個實驗,假如我們要開發一個小項目,需求很簡單,就是一個保存用戶基本信息的頁面,要求用戶可以輸入姓名、電話、聯系地址、郵箱、手機號碼、備注。
其中姓名與郵箱是必輸項目,我們把這個項目分給三個程序員做(當然這三個人都是虛擬的,其實都是我做的),三個程序員交來的作品都沒有邏輯錯誤,數據保存正常,讓我們看看做出來的效果有什么不一樣。
第一個程序員交上來的作品,這種作品我們基本上可以理解為實習生做的作品,許多有兩年甚至更長開發經驗的開發人員,也會開發出這種作品,不要笑,我甚至見過還比這種作品更爛的作品。如果一個程序有超過一年的工作經驗還提交這種作品,基本上沒戲了,因為這類程序員不會自己思考。不要和我較真,那種從來不與界面打交道的程序員另當別論了。
許多程序員的理解是數據進到數據庫,邏輯上沒有錯誤注完成了。所以一般來說,讓一個程序員評估一件工作的工作量,你需要在他評估的工作量上再增加100%。第一個程序員交的作品如下圖所示:
第二個程序員交上來的作品可以算得上是一個合格的作品,中規中短,沒什么太大的亮點。與第一個程序員不同的是:
- 他給網頁加上了標題信息;
- 他給每一行標題(就是姓名/郵臬等信息)設置了加粗并添加了背景顏色;
- 給必輸項加入紅色的*號進行標注
- 他把默認的提交按鈕文字改為保存,并沒有使用默認的提交字樣
- 給表格加了連線,這樣看起會舒服一些(這項見仁見智)
- 為輸入框設置了最大可輸入長度
再來看第三個程序員提交的作品,第三個程序員在第二個程序員的基礎之上又做了一些改進,除了第二程序員所做的事情,他還做了這些事:
- 添加了水印備注,讓用戶更能了解輸入框的作用(當然這里只是做了一個示例,實際上姓名的水印是沒有必要的);
- 當輸入框獲得焦點的時候,背景會變顏色,以提醒用戶
- 當用戶輸入正確的時候,會在后面出現綠色的勾,如果輸入錯誤,則會在輸入框后面出現紅色的叉
許多的程序員都有這樣的想法,我就是一個程序員,我只負責程序的邏輯上沒有錯誤,例如說數據正常插入到數據庫,至于界面的事,應該由美工負責。實際上在大多數項目中,并沒有太多復雜的邏輯。一個程序員可以不用管界面是否漂亮,但是一定要把界面弄得很整潔,不要把一大堆控件搞得亂糟糟的。其實你并不需要花太多的時間來處理這些界面,而是你要花些心思在上面,多注意幾次就好了。
例如在上面示例的Web程序中,CSS代碼非常簡單,但給人的感覺很簡潔,最起碼看起來不會太難受。而第三個程序員所提交的作品,除了頁面整潔之外,他還注意到用戶的體驗,這是很難能可貴的。如果一個程序員在寫程序的時候能時時想到用戶體驗,那么應該離他升職的時間應該不會太遠了。如果你能做到文中提到的第三個程序員的程度,我認為你已經摸到了產品經理或者項目經理的凳子了。
寫程序并不是別人讓寫什么就寫什么,應該有一些自己的想法,不要像一個鼠標一樣,別人拽一下動一樣,應該和病毒一樣主動出擊。在有限的時候里把程序做得最好,無論是界面上還是業務邏輯上。
it知識庫:做一個有想法的程序員,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。