最近在做乙個新的ui專案,這個專案是我在公司裡自己提出的,目的是開發出乙個在ui上能夠和主流醫療廠商處於同一水平的ui。過程就不說了,在乙個小外企裡,偶爾還是要講點政治的。還是講講專案做得過程吧。
從半年前我就開始準備這個專案,專案是使用c++和opengl開發。其實目前總部已經要求我們用wpf做了,但是考慮到我們實際情況:
利用現有的平台來驗證新的ui,包括一些使用者互動流程。現有平台是c++開發的,自然更加容易整合進去。
從美國總部開發wpf的經驗來看,wpf效能並不是那麼令人滿意。當然或許是我的水平不夠高吧,畢竟人家有從微軟挖過來的人。而且新的ui用來顯示實時資訊,繪圖工作量很大,如果效能不行的話,這個專案也就難以走下去了。
c# 和wpf需要時間學習,而且開發 2 萬行**左右的專案,使用新的語言還是有挑戰的。
綜合以上幾個因素,所以選擇用c++和opengl。
專案開發過程中,首先學習opengl花了很久,開發乙個opengl的庫,總共花了2個月左右。然後就是開始設計ui,開發ui,等等。對於這個專案我的最大的感受是:事情是一步一步做出來的,理解也是逐漸深入的。至少談兵是必要的,但不是最重要的,把東西做出來,然後一點點改進,才能促進專案和產品不斷前進。尤其經驗不足,能力不強的時候,循序漸進就非常重要了。每天進步一點點,慢慢得就會發生質變。
在專案正式給美國大老闆review的時候,我忽然去看前面幾個版本的ui,從概念版,到version 0.1,version 0.2 版,到現在的這個版本。感觸很深。做產品不怕不懂,就怕就會紙上談兵和好高騖遠。而這兩點,是我現在這家公司一直都存在的問題,他們永遠在開會,開了幾年了,產品和幾年前進步非常之小。如果不是銷售厲害的話,這款產品已經被市場淘汰了。如果他們把開會的一半時間拿出來去不斷完善這個產品,去嘗試有限創新,不斷提公升產品的品質,目前的產品絕對不會是這個樣子。
說到技術問題,我覺得也是循序漸進的,從會用到精通,都是一步步來的。就像我用opengl,從一開始,完全不懂,到開發出乙個ui小平台庫,再到現在想到了要去優化底層渲染,做乙個小型的渲染引擎。技術都是在實踐中一步一步提公升的。實踐和理論結合才是學習最好的辦法。
同樣,專案也是這樣,一開始理解不透徹,不深入。寫出來的**相對混亂,慢慢理解深入了,有更好的方法了,那就需要去重構。慢慢的就會產出一些高質量的工業級**。我現在這家公司很多人就完全沒有這個意識,做完了往那邊一扔,就不管了。結果隨著需求的增多,**的不斷加入,專案越做越難,**越來越混亂,開發難度越來越高,專案一再delay。當然這樣和公司的管理制度有關係。
其實每個人如果每天努力,並持之以恆,慢慢的,總會成功的。我工作三年多,一直以來,我抱怨得多,但是做得很少。比如說我夢想自己有一天英語很好,很流利,但是卻沒有花足夠的時間去學習,那麼這種夢想其實就是幻想。後來我慢慢明白,做比想重要,行動比等待強。只有去做了,才知道行不行,努力去做了,才會離自己想要的東西越來越近。所以我現在天天背單詞,練聽力等。。。
就像你愛乙個人,可是人家看不起你。與其傷心,不如去努力,說不定將來有一天,當你功能名就的時候,你愛的人的就會來到你身邊。
這個專案這個月將會告一段落。下面將會準備開發乙個儲存和管理資料的系統,目標很簡單,鍛鍊技術,提公升架構能力和思考能力。。。。
專案優化之 UI
一 降低填充率 fill rate 填充率 是指顯示卡每幀每秒能夠渲染的畫素數。在每幀繪製中,如果乙個畫素被反覆繪製的次數越多,那麼它占用的資源也必然更多。目前在移動裝置上,fillrate 的壓力主要來自半透明物體。因為多數情況下,半透明物體需要開啟 alpha blend 且關閉 ztest和 ...
論專案的UI設計
最近專案驗收過程中,再一次提出了 ui設計問題,到底怎樣才算是好的 ui設計,談一下我的體會。進入頁面首先映入眼簾的就是色調了,如果色調搭配的很好,會給使用者很舒服的感覺,有使用此軟體的興趣 如果色調搭配凌亂,讓人看著不舒服,估計沒人會喜歡 色調不能太單一,也不能過於豐富,這種搭配也算是一門技術兼藝...
React專案的UI測試
測試金字塔,於人們將多層結構應用在前端測試領域 如圖1 下面主要說一下元件和單元測試 由於是基於react redux saga的單頁應用,每個頁面,或者說元件的基本結構分為四部分 sagas儲存業務邏輯,index囊括了相關的action和reducer,component只進行ui渲染,cont...