桌面开发者的界面故事,该醒醒了
????? 本文我們只談界面。??????
????? 大部分人最開始學習編程是Console,搞個計算器啥的,后來高級一點能做一個俄羅斯方塊出來。很羨慕那些能做出界面的,于是大二學了MFC,一開始看《深入淺出》怎么都搞不懂,后來我們班的一個女生教了我兩個小時,我一下子通暢了,用GDI半個月苦哈哈的做了第一個當時覺得還能看得界面(不用任何控件哦)連箭頭都是用三根線拼起來的!
?????? 后來學習了C#,當時是一本速成的C#開發100例,看完《實現簡單的播放器》以后,“我靠,怎么這么簡單!”于是便投入了WinForm的懷抱。然后做了當時大四在實驗室里完成的第一個項目,有關移動網絡規劃優化的GIS模塊和數據庫模塊,就像這個樣子。這個界面用了大量的繼承和重載,不過那會我連值和引用類型都分不大清楚。
???? 后來,大四暑假便接觸了WPF,反正查了一堆資料,大概意思就是原來用C#生成的界面,現在用xaml這種東西定義了。我往設計器里拖了一個正方形,設置了一個路徑動畫(就像flash)那樣,方塊動起來了!哈哈,我覺得我學會了WPF! (事實上,做了這么久,我都沒覺得我”精通“WPF).
????? 之后做了一大堆的界面,反正我是程序員兼設計師,我想怎么設計怎么設計。MVVM啥的根本不懂,還是耦合+綁定這種半吊子,這是剛學WPF沒多久做的3D效果:
????? 后來做了不少游戲,不少界面,不少工具,畫音頻波形的,監控心跳的,一堆一堆的。此處因為各種原因就不貼圖了。
? ? ? (我們進入了新世紀,新時代)越來越多的代碼是js和php了,越來越多聽都沒聽過的名字出現了,啥是nodejs, jQuery? 越來越多的文章介紹的都是web開發了。我依然低頭走著自己的老路,看著時代遠去的背影,苦哈哈的玩了好長時間的WP和SL。 做出來幾個應用,咦?二十個開發者里才能找到一個做過類似東西的人。
?????? 時間長了,其實不是不想改變,是因為拖家帶口。桌面時代,自己積累了大量的框架,知識和代碼,尤其是自己寫的框架,這些框架雖然號稱低耦合,實際上就是針對桌面定制的。如同一條大船,想轉彎就要付出相當可觀的代價——放棄。
? ? ? ?最近一兩年,經常有人感興趣我做的東西,給個Demo玩玩唄。花好長時間打包,動輒上百兆的安裝文件,發過去,靠,跑不起來!忘了裝.NET了,忘了某個依賴庫了,忘了數據庫連接了,我過去幫你看看,啊,怎么還搞不定...,升級的復雜性,用戶使用的復雜性,局限性,只能在Windows上跑,哭。
?????? 君不見,07年的時候,中關村的電腦城人山人海,現在門可羅雀,我這種號稱去過40次以上的人,現在都是低著頭跑到鼎好五層,吃個面條下來了。大家都去哪了?京東,淘寶。電腦出貨量直線下滑,人們的焦點跑到手機這樣的終端設備去了。
?????? 君不見,電視放在客廳,基本只有蒙灰的份。絕大多數人回家鉆被窩開始在平板上看劇,一切App都要講求用戶體驗,講求“輕量”,“快速迭代”,“以用戶為中心”!現在甚至連App都不流行了,裝App太麻煩了,都用微信公共號了!
君不見,網上的各種SDK,肯定有安卓的和iOS的,官方心情好會放個JAVA或者Python的,至于能遇上一個.NET甚至是WP的SDK,那肯定是“千年等一回”。
?????? 有時候會自我安慰,說桌面端的性能會比較好,比較快,定制方便...可是現在真有什么是桌面能干而web或移動端干不了的?各種開源框架,web開發工具滿天飛,實現一個百度地圖的功能如此輕松,而在桌面上卻要大量的代碼,還有一堆坑等著去踩。移動端都異步多少年了,桌面端還在糾結怎么異步,算了起個線程吧再。真的不用拿“大數據”和"性能"來搪塞,web做大數據的工作,比桌面端更有優勢,網速現在已經不是問題,之后更不是問題!
????? 關于用戶體驗,用戶只要簡單的輸入網址就能訪問和使用web服務,相比之下桌面的部署,連開發人員都覺得惡心。電腦如同被各大公司嫌棄的棄兒一樣,一個功能在手機上用起來很容易,在電腦上卻困難得要死。我實在不想提微信和QQ的例子了。
????? 移動端眾人拾柴火焰高,桌面端門前冷落車馬稀! 我也知道在博客園寫這種文章,就相當于指著很多人的鼻子說,你這碗飯里的飯不好吃,趕緊別吃倒了吧。肯定會讓大家很不爽。不過,到底好不好吃,其實大部分人看得清楚。
????? 其實本身不是桌面客戶端的問題,是時代變了,變天了。輕量,簡單,小型化,懶,好用,講求“服務“,這些成了人們的主流觀點。像我們這種沉重的“桌面”落后于時代,如同四十年前的大型機落后于兩千年的筆記本一樣。看了《黑客與畫家》,我更深刻的認識了這些。
? ? ? 腳本風格的全小寫命名法,不一定就比高大上而冗長的駝峰命名法差,用notepad++敲出來的算法,效率不一定就比開個VS2015自動提示出來的低;能在公共云上部署的代碼和服務,效果也不一定比裝半天IIS得到的爛。
??????在某一項技術上花費超過兩千小時的時候,轉變其實是困難而艱辛的。重要的其實是思維方式的轉變,開放,免費,服務,樂于擁抱世界,遠比封閉,沉重,付費,固步自封強得多!
總結
以上是生活随笔為你收集整理的桌面开发者的界面故事,该醒醒了的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用PHP+ajax打造聊天室应用
- 下一篇: 通过“远程桌面连接”连接到Ubuntu