終結篇,有朋友看了,啊?不是吧?是的,這是本系列Windows Phone文章的最後一篇,本文將對本系列文章做一個簡要總結,並根據個人想法向大家提一些建議和對開發人員一些忠告,但願能有一點點參考價值。
大家知道了,WP8發布預覽版了,雖然先前版本不能升級到WP8,有一點可惜。但我們不要像那些不冷靜的人那樣,一聽到訊息就罵,至少,我們還看到後面還有一句話:WP 7.X的應用可以在WP8上面運行,其實這也是一條好訊息來的,為什嗎?自己想一下吧。
新手機年年有,到時睺,WP8一批新手機出來,仍然也有人會買,不管怎麼說,不是所有人都只升級手機,那些打算買新機或者還不有買新手機的消費者,他們依然會購買新產品,現有使用者或手機不能升級,並不一定會影響後市走勢,你想,又不是全體人類都需要升級,只能一部分人罷了。
說實話,我也有一台三星WP7.5手機,不能升級到WP8,我看到這條訊息,基本沒什麼反應,不能升級那就不升級唄,只要手機還能用就行了,做人何必過於極端呢?
所以,有關感應器和地理位置API這些我就不打算寫了,因為這些東西,按照微軟一向的作風,不會封裝得很複雜,而且統一性很好,不管是生產廠商還是開發人員,都是同一套API,就樣就省了測試和發布成本,不必為不同的API版本發相應的程式。
如果說WP8和前面不相容,微軟也說是硬體上不相容,我可以推斷,不相容的部分,應該就是感應器這一塊了,而其核心部分,如Silverlight和XNA架構,我相信都是不變的。只要我們把不變的都掌握,就能做到“以不變應萬變”。
在本系列文章中我已多次強調,這些博文僅僅起一個引導作用,因而不可能會細分到每個知識點上,也不可能具體到哪個類怎麼用,這樣就沒有意義。對於編程,不管是學習,還是在實際應用中,自己獨立探索才是王道,別人頂多就給你提供一些指引或提示罷了。
下面,我根據個人對編程的認知,給大家提點建議吧,尤其是初學者,如果你覺得適合你,不妨試試。或許每個人的學習方法都不一樣,我只是總結自己的學習方法。
1、基礎很重要,這句話基本是廢話。主要是語言基礎如C#,架構基礎,不用說了,就是.NET架構。這些是開端,另外,學習WP開發,我認為WPF的基礎最重要,只要把WPF學好,Silverlight就可以馬上攻克,接著,WP開發你基本不需要新知識了。
2、代碼必須多寫。這一點不知道強調多少次了,但是,很多人就是做不到,總喜歡拿到別人的代碼就抄,寫了第一遍,出錯了,就不再去嘗試,總是半途而廢。
如何對待編程這門藝術呢?看清楚了,我從來不說編程是技術,因為那是低層次的;如果你有志要成為編程高手,你必須把編程當作一種藝術,而且要從這種藝術中悟出一套屬於你的理念。
(1)千萬不要把編程給神化了,什麼意思呢?很多編程初學者,我問他們為什麼要學編程?有些人會說:因為電腦高手總給人一種神秘感覺,總感覺這些人很牛B,崇拜他們,所以就來學編程。如果是這樣,我明確告訴你:你可以回家睡覺了。
(2)也有些人說:成為電腦高手,似乎特別容易受女孩子關注哦,因為很多女孩子會經常遇到這些問題,女孩懂編程的比較少,因而她們有可能會認為,懂編程的男孩了不起。如果你學習編程是為了泡妞的話,我也告訴你:你可以收拾行李回家了。
(3)有些人很高熱情,跑來跟我說:周先生,我很想學編程,真的,千真萬確,你就教教我吧,你當我老師好嗎?我多付一點學費也無所謂。
說實話,這段話真的會打動我,看似很誠墾。結果你猜怎麼著?三分熱度都不夠,不到一個星期,那些熱情,那些豪言壯語全沒了。
(4)有一回有人說要學編程,我單獨跟談了一會兒,然後,我開啟電腦,給一小段代碼,我讓他照著原來的代碼輸一遍,不允許使用複製/粘貼。過了幾分鐘,他終於把代碼“抄”完了,我一句話不說,直接把輸的全刪了,不儲存;接著我叫他再照著剛才的代碼輸一遍;等他輸完了,我再刪掉,讓他再輸……結果,往返三四回,他就受不了,明顯他是沒有持之以恒的精神,所以我勸他還是學其他的吧。
不知道大家看了上面的幾條“案例”後有什麼感覺?“只要功夫深,鐵株磨成針”,並不是說學習開發對耐心有特別的要求,而應該說,無論你學習什麼,耐心和恒心都重要,哪怕你學習Photoshop也好,道理都是一樣。
所以,我們在學習編程的道路上,遇到問題是肯定的,但是,不要連代碼都懶得去寫,而應該要多寫,代碼寫多了你才能真正掌握,不動手實踐,是永遠也搞不懂的。
3、有問題多看書,多找書,或者在網上搜尋,或者查線上協助文檔,不要動不動就去問別人,這樣做無疑是對自己的一種輕視。
4、不要急於求成,知識要一點一點地累積。
5、要明確現實意義和長遠利益。現實意義是,學習開發相關技術,才能求得一份理想的工作,才能有收入來源。有了收入才能有生活,有了生活你才能追夢;而長遠利益則是,當你的知識和能力積聚到一定程度,說不定你不必一輩子當碼農,為他人打工,你很有可能成為領域內的領軍人物,那個時候,才算是你人生價值發揮作用的開端啊。
那麼,對於移動開發,尢其現在這個領域表面上看發展很快。
首先,我要向各位幾盆冷水,千萬不要忘記1929-1933國際上發生了什麼——大瀟條。那麼,這場巨大的經濟危機是怎麼發生的?它又是從哪開始的?美國。對,就是美國。為什嗎?說到底,我只想到一個專業名詞——泡沫。
大家要冷靜地看清楚了,移動市場的泡沫已經出現,而且越滾越大,甚至有些偏離了客觀規律。
不知道大家瞭解過21世紀初中國的互連網泡沫沒有?上Google搜一下吧,對你有好處。
我們如何對待移動開發?既然有泡沫形成,我們不理它了?不行,移動互連網顯然是一個趨勢,一個新生的市場。那麼,有人會問,剛才你不是說泡沫嗎?怎麼現在又說是趨勢呢?不矛盾嗎?
你覺得矛盾嗎?不矛盾,很簡單,前幾年有一個詞很熱,但在我看來,那個詞簡直是個笑話。什麼詞呢?你肯定聽過——全民炒股。
我問你,證券投資是不是現代經濟活動的必要元素?這是肯定的;炒股有錯嗎?沒有。但全民炒股就不正常了。我說得難聽一點,就是跟風,而且是盲目跟風,甚至有不少連證券是啥都不知道,居然還去開戶。
你說,這難道不是很可笑嗎?所以,你明白了,趨勢和泡沫不是一回事。
移動開發會成為IT行業一個新的分支,它不應該也不能取代一些現有的東西,不然,就違 背自然規律了。比如,你說平板會取代PC嗎?正常情況下,應該二者並存,但是,如果PC被平板取代,那個時候,我估計那些科幻電影都變成現實了,人類的科技文明不是為自己帶來幸福,沒準哪天反而為人類帶來沉重的災難,就像電影裡面的機器人一樣。
因此,對於移動開發,我認為,不論個人還是企業,都應該投入這個市場,但是,不要把所有希望都寄託上去, 千萬不要把老本也壓上去,不然,將來有一天,你會落得很悲慘的下場。當然,這隻是我個人觀點。
其實,我們平常聽說長輩或老師說的一句話,很簡單,但蘊含深刻,什麼話呢?就是這句:凡事都有個度,不要過“激”了。
另外,我建議大家把目光放廣一點,經常發現很多公司的程式員,真的知識太“貧血”了,他們只知道工作上的事情,只知道寫程式,而其他的常識或知識都不懂。別說這些,甚至有不少程式員連編程知識都不行,更別說其他了。
千萬不要以為走出大學門口就不用學習了,這種想法是嚴重錯誤的,尤其是我們搞IT的,大家更明白,這個行業發展速度那是快得不得了,如果你不能保持終身學習,及時充電的勁頭,那我估計,再過上兩三年,你就不屬於這個星球的了。
什麼叫開發呢?有“開”也有“發”,所以這個行業是貨真價實地需要創新的,不然你就不是搞“開發”的了,不能成為阻礙人類文明進步的XXX哦。
創新靠什嗎?思維;思維從哪裡來?你的腦子;腦子如何弄出新思維?靠的是靈感;靈感從哪裡來?從你對客觀世界的深度剖析;怎麼樣才能觸發靈感?博學。
我們不能把編程孤立,總認為它與其他事物沒有聯絡,那是不能創新的,提高個人的編程水平,不僅僅要在代碼上花功夫,還要廣泛涉獵其他知識,從其他知識中提練出有用的東西,應用到編程哲學上。
有些時候,有些問題想來想去都想不出個方案來,沒準你可以從其他事情,或者從其他客觀事物(比如小說、音樂、電影等)中得到啟發,因而問題反而解決了。有些時候,你苦思冥想都想不通的事情,反而在一些偶然或巧合中找到了答案,這也不奇怪。總之一句話,多學有益,不學百害。
最後,對於移動開發,總結一句話:見機行事,趁虛而入,但要做到全身而退;適當投入,切勿陷進去不能自拔。
好了,祝各位朋友生活愉快,編程快樂,快樂編程,認真學習,學有所成,學有所用,成就煇煌事業。
端 午 節 快 樂