Web開發(fā)有多難?前端后端都很煩
Web開發(fā)體現了一種全新的思維方式。例如,過去我們用微軟的.NET來做界面程序,當經過了幾個月的CSS,HTML,JavaScript學習之后,可以老實的說我很慚愧。
做為一名非Web軟件開發(fā)者,我想起了曾有無數的嵌入式軟件技術人員隨手把Web編程工作寫作一種“瑣碎的”或“無聊的”工作。然而,經過了過去兩個月對Web編程的鉆研,發(fā)現事實正好相反。
就讓我們先看看前端的這些東西:
學習CSS,HTML,JavaScript,jQuery以及把它們之間的相互作用關系搞通,并不是件容易的事情。事實上,對于那些從.NET,C++或Qt思維模式過來的人,它會困難的讓人沮喪。GUI Toolkit這些東西跟Web前端的東西比較起來顯得笨頭笨腦沒有靈性。
這個世界已經永遠的拋棄了那些設計糟糕的、令人討厭的桌面圖形界面。而互聯網對此要求的近乎苛刻 — 一個糟糕的用戶界面設計會毀了一個互聯網公司。人們經常在說,Facebook更簡約的界面設計正是致使Myspace逐漸敗退、幾近消亡的關鍵原因。
有一個在一個新近突起互聯網公司工作的軟件技術人員告訴我:每天,新代碼都會受到考驗,來自不同地區(qū)的數百萬的用戶采用不同的方式,使用任何你能想到的軟件、硬件對程序進行測試。你在數秒鐘內就能獲得反饋信息。如果某處改動可能會導致某種災難性錯誤,我們可以只向1%的用戶開放,并記錄一切發(fā)生的事情。很遺憾,大多數桌面圖形程序不會遇到這么大的壓力。
桌面圖形程序很容易跨平臺。然而,面對著這么多不同的瀏覽器之間的細微差別和各自的奇特的癖好,你想讓這樣優(yōu)雅的前端代碼在它們中都能正確的運行,這更難。
現在,讓我們討論一下系統配置:
嵌入式系統通常是文本文件(如XML)來保存系統配置,運行時加載到內存里。的確,你可以做出一個嵌入式的Web前端來作為管理工具,用戶通過這個前端修 改配置,但配置信息仍然存儲在一個簡單的文本里,有時,當簡單文本體積增大的一定程度時,人們會使用小的sqllite3數據庫。
而Web里,它要求的是巨大的、精心設計的關系型數據庫,例如MySQL,更不用說那些數目眾多的只是看起來像數據庫東西,如Memcache, CouchDB,MongoDB, NoSQL。
在Web編程中我***能用上力的部分只有后端的Server程序??墒钱斢龅酱髷祿栴}時,我又不行了,就像離開了水的魚。
再說一次:Web編程很難。它讓人感到慚愧。但我仍努力學習它。
【編輯推薦】