發表文章

[教學影片] Windows Phone 7 - 程式設計關鍵報告(106-107)

繼續推出兩隻介紹Windows Phone 7程式設計教育訓練短片。 106 WP7設定(Setting)頁面的設計 這支影片當中介紹的是WP7設定(Setting)頁面的設計,其中使用到了IsolatedStorageSettings技術,來保留使用者的設定狀態, 同時間介紹了 UserIdleDetectionMode 的功能,如何透過UserIdleDetectionMode 設定來防止應用程式在執行過程中被Screen Lock干擾(例如防止閱讀電子書時,突然出現的螢幕Lock),以及設定頁面的設計原則和技巧。 107 WP7 IsolatedStorageFile的使用技巧 這支影片當中介紹的是WP7當中的IsolatedStorageFile機制,同時也介紹如何利用WebClient下載特定的檔案,儲存到IsolatedStorage當中,以供後續的使用。除了IsolatedStorageFile機制的操作與使用方式之外,其中如何將圖檔儲存到IsolatedStorage當中,以及從IsolatedStorage當中把圖檔取回顯示到App中,也是相當重要的一部分。

風雨無阻

日前颱風天那天,聽到朋友中有位講師不辭辛勞,不畏風雨的依舊在預定的時間遠赴台灣的另一端,只為了說好的幫同學們上課,聽到了之後相當感動,所以我哼著熟悉的歌曲,寫了底下這首歌...描述許多講師、作者們共同的心情... 請配上 周華健‧風雨無阻... 給你我的全部 .NET是我今生唯一的賭注 只留下這段代碼 讓我無怨無悔 全心的付出 怕你疲倦 怕你哭 怕你迷惘 怕你糊塗 編程千山萬里路 我可以朝朝暮暮 給你一本我的書 它是我一生不停的腳步 讓我寫滿數十萬字 堆滿整座倉庫 你慢慢閱讀 Silverlight是漫長的旅途 一會快樂 一會痛苦 千瘡百孔編程路 我可以縫縫補補 ⋯⋯ 提著昨日種種千辛萬苦 向明天換一些 夢想和錢途 範例夠不夠多 講解夠不夠好 可以要求 不要不在乎 不願讓你看見我的辛苦 是曾經無悔的風雨無阻 贈品夠不夠多 點心夠不夠好 可以追求 不認輸 配樂 請用 http://www.youtube.com/watch?v=D9b4Pnpbx4Q 或 http://www.youtube.com/watch?v=LwM8AIYC5S8

[教學影片] Windows Phone 7 - 程式設計關鍵報告(104-105)

繼續放兩隻Windows Phone 7程式設計教育訓練短片。 104 Launcher的使用 這支影片當中介紹的是Launcher與 Choosers的概念,以及如何透過叫用Launcher API在我們自己撰寫的App當中啟動手機內建的應用程式來達成特定的功能,例如傳送簡訊或撥打電話。比較特別的是,在Mango的版本當中,加入了ShareLinkTask,讓你的App可以輕易地送出訊息到FaceBook塗鴉牆或MSN的狀態上喔... 105 Choosers的使用 在這支影片當中,我們繼續討論了Chooser的使用,介紹系統中的Chooser種類,以及示範如何透過Save Ringtone Task將特定的音效檔案儲存到手機當作鈴聲,和如何透過PhoneNumberChooserTask的使用來取得手機通訊錄中特定人員的電話號碼...

[教學影片] Windows Phone 7 - 程式設計關鍵報告(101-103)

三隻適合Windows Phone 7程式設計初學者由淺入深的教育訓練短片。 101 從基礎開始 從最基本的WP7應用程式設計開始,撰寫你的第一支WP7 App,內容包含如何透過Visual Studio 2010建立Windows Phone 7 App專案,建置與佈署到模擬器運行,WP7中基本的動畫設計概念,以及事件驅動程式設計...etc。 102 ApplicationBar選單與顯示模式 了解WP7當中的頁面架構,XAML的基本概念,控制項佈置位置,App顯示模式的改變,以及WP7當中相當重要的ApplicationBars介紹暨選單(MenuItem)與按鈕(IconButton)的設計。 103 場景切換、面參數傳遞、與Back鈕 如何設計多個畫面,並且在多個頁面當中進行切換呢? 多頁面時該如何傳遞或共用參數? 如何在切換頁面時加上自訂的特效動畫? 以及如何攔截Back鈕顯示提示訊息?

在努力背後...

圖片
(後記:一個多月後, 10/6這天賈伯斯過世了...這篇文章中第一行的辭職,得改成辭世了。全球幾乎都一同哀悼賈伯斯的離開,並且深表不捨,Apple和Google的首頁也特別掛上或連結了賈伯斯的肖像以表追悼,肯定他一生的成就) 聽到Steven Jobs辭職的消息,讓我有些感觸。 在他經歷了那麼多的事情之後,阻止他繼續向前邁進的,不是外界競爭對手的攻擊、不是潮流趨勢的更替、不是資源或能力上的限制,而是他自己的身體! 坦白說,一個在世代中如此具有影響力與領導特質的人,要能夠甘心停下腳步,其實相當不容易。我相信,在我們心裡,總是有一些夢想,對自己或未來的期待,隨時推動著我們往前邁進。年輕的時候,我參加TechED,坐在台下前幾排,認真地看著台上講師賣力的演出,我曾經想像過,如果有一天換我在台上,那會是怎樣的場景? 如今回想起來,感覺很遙遠,但記憶卻相當鮮明。 在我中學的時代,那時候的資訊雜誌只有第三波,印象中我常常投稿,把磁片寄到雜誌社,參加雜誌上的程式設計比賽,想像著有朝一日,我是期刊專欄作者的心情。如果不是現在在寫這篇文章,我根本早已忘記曾經做過這些事情。現在想起來,我對這段回憶的感覺居然是一陣溫馨。 好多年之後,小時候的夢想慢慢實現,但是我也逐漸發現,人生中最難的事情,不是拼命努力,不是隨波逐流,是如何在天平的兩頭當中拿捏出最適合自己的距離。 回頭看賈伯斯,我不知道,他是否也覺得自己的一生意義非凡,我更加不確定,如果讓我選擇,他這樣的人生對我來說是否有吸引力。 在這世界上許多努力奮鬥的國家當中,台灣人的工作時數和其他地區比起來算是很有得拚,我從退伍開始工作之後,就我印象所及,工作幾乎沒有間斷,35歲之前,一個工作接著一個,即便在新舊工作交替之際,也幾乎是立即銜接,沒有一刻喘息。 在我的身邊,約莫和我同一期的朋友同學們,大多都是這樣拼命,冬天的時候天沒亮就出門,踏進園區的辦公大樓之後,像是跌入陷阱,沒到星月高掛不會看到回家的身影。直到結婚,小孩出生,才開始慢慢把時間留給家人,逐漸找回一些時間給自己。 35歲像是一個分水嶺,35歲之前,最大的休閒,是喝著濃郁的咖啡寫程式,夜深了伴隨著廣播繼續努力;35歲之後,熬夜是留給年輕人的權利,節制是新發現的功課,還需要努力操練和學習。 如果看這篇文章的你,還沒結婚,不到30,或許你還可以多加...

持續地改變是必然的趨勢...

大多是不想寫程式,不願意寫規格書,沒精神寫企劃案的時候,我才會寫文章。 不過最近,在FB上看到一篇文章,主要是提到Silverlight技術的目前狀況,以及與未來HTML5之間的一些問題,還有未來開發技術云云。最近半年看到很多這樣的文字或報導,也有不少學員詢問,所以有感而發。 說真的,大夥,別再問這個問題了,原因很簡單,就是展示層技術的改變根本就是必然的趨勢。(相信我,這還不是軟體開發趨勢裡面最讓人感到痛苦、悲憤、無奈、沮喪的一塊...那David言下之意,還有其他讓人更嘔的地方嗎? 當然有,還多著呢,以後有空再說) 前陣子上課,和學員聊到分散式應用程式開發,說到一個結論:『在商業應用程式開發當中,越沒有UI的程式越值錢!』 學員臉上泛起疑惑和不太相信的目光,我隨即解釋,你看過SQL Server吧,看過Skype,看過MSN,難寫的是MSN Server, 還是MSN UI? 有技術難度的是Skype Server, 還是Skype Client, 真正賣錢的是SQL Server的Services,還是SQL Server的Management Studio? 這就是啦,你寫的不是Game,那就讓我告訴你,在商業應用程式的世界裡面,UI是不值錢的,UI可以是賣點,但常常不是成交的關鍵,UI可以是客戶嫌棄你的理由,但UI不是會讓客戶付你多一點錢的原因。 過去這20年, UI層開發技術是一變再變的,從DOS的文字畫面,到Windows的GUI,到後來的Web UI,乃至於現在的WPF/Silverlight/Multi-Touch,這一路上的改變沒在少的,而且趨勢是改變的速度越來愈快,改變的幅度越來越大。 也因此,每當我聽到學員感嘆某些展示層的開發技術改變太快,我就很擔心,大夥把焦點放錯位置了,UI從來不是一套軟體(或專案)成功的關鍵,UI只是你跟客戶表演時候吸引人目光的火花,有時候不同的客戶你還得放不同種類的煙火(平板? 行動? PC? Web? Windows? RIA?),才會得到你想要的效果。 過去這十多年的展示層開發技術,有哪一些可以沿用或重用的? 其實少之又少,先不管是否component可以reuse, 連source code要拿來reuse都很困難。所以,最理想的展示層技術是什麼? 是不要寫。或是我講一講就出...

跑了很多年的PC, 也有停下休息的時候...

圖片
最近,一本伴隨著許多技術人員從小看到大的資訊期刊決定併刊了,未來技術相關的主要內容將會調整為在線上以電子方式呈現。雖然這個改變不是很令人意外,但多少也讓我覺得有些感慨。 知道這個消息,是在我上個月旅遊的途中。本來打算回來寫篇文紀念一番,但是礙於許多原因,最後沒有提筆,現在寫在這裡,多少也是因為木已成舟,所以留個紀錄而已。 在旅途當中,我不只收到這個消息,另一件事情也讓我頗為感慨的,是一位出版界奮鬥已久、過去的合作夥伴,也在最近準備轉換戰場,我想多多少少,也都跟目前資訊出版市場的狀況有關。 這幾年的出版當然跟過去不可同日而語,就像這幾天看FaceBook中朋友們的留言,提到:『跑電腦現在需要換個場地跑,大家也知道現在 ​電腦不夯了,可能要跑平板之類的...』資訊技術是應用科學,內容隨著時間更迭並不新鮮稀奇,最近幾年的媒體和出版生態丕變,連報社都能一夕之間改弦易轍,或有換老闆經營者,更何況我們這個更加小眾市場的媒體呢? 過去一本資訊圖書的出版,可以帶領許多讀者踏入這個充滿願景的工作領域;或是幫助技術人員建構養成觀念;或是激發開發人員的創意。隨著這幾年網路的盛行、大陸同胞們在資訊技術上的崛起、資訊產品的生命週期縮短、全球化市場競爭的衝擊、技術從業人員的獲利能力也跟著降低。 一層層連鎖反應的影響,出版市場雖是衝擊的末端,但改變卻也來的快速而堅定。 當然,伴隨著資訊環境與電子產品的進步,開發技術的傳遞方式理所當然地也應該走向現今各樣的主流趨勢,以最短的時間將重點透過各樣的手持行動裝置與平台推送給大家,結合社群傳播的力量,以另一種面貌出現在讀者的面前。這個,似乎才是出版從業人員在感嘆之餘得要繼續深思而努力的方向...

WP7同步時Zune發生錯誤 - c00d11e4 (800c000e)

用了WP7很長一段時間,隨著手機連續幾次的更新,整個WP7的表現越來越貼近甚至超越我的期待,也因此使用的時間越來越高。 WP7的手機在拍照或錄影之後,都可以隨時自動update到SkyDrive,這是一個相當方便的設計,對於慣於使用網路的用戶來說,相當的便利。 不過,總是有一些時候,我們希望把照片資料同步到PC上,這時候PC的Zune軟體就發揮了功能。但不知道從何時開始,我的 WP7接上Zune的時候,一直有一些問題無法同步,收到底下的錯誤訊息... c00d11e4 (800c000e) 一直不以為意,反正可以從網路上(SkyDrive)再抓下來,但今天心血來潮試著解決這個問題,後來上網搜尋,發現原因似乎是安裝了Ulead的軟體之後,會把底下機碼: HKEY_CLASSES_ROOT\.jpg 的default直改為 PV85.Image 導致無法Sync同步,重新改回jpegfile之後,我的Zune和WP7終於又可以順利地同步照片囉。 jpegfile

在Windows Phone 7當中撰寫導航程式WP7 SDK 7.1 (Mango)

圖片
這次微軟算是卯上了全力。 最近在測試Mango新的SDK,說真的,有了中文輸入的手機,整個使用起來果真是脫胎換骨,感覺完全不同。再加上7.1增加的API, 讓整台手機如虎添翼。 例如,在API當中增加了BingMapsDirectionsTask,讓開發人員可以不費吹灰之力寫出導航的功能,底下這段影片展示了實際操作的過程,你會發現,導航功能很清楚的引導了使用者每一個轉折點的動向,除了對台灣人來說目前地圖是英文的有點遺憾之外,整個導航功能實在是相當完整了: 而這樣的導航程式要如何寫呢? 就底下這樣: //建立BingMapsDirectionsTask Microsoft.Phone.Tasks.BingMapsDirectionsTask dt = new Microsoft.Phone.Tasks.BingMapsDirectionsTask(); //設定起點(使用當前手機所在位置CurrentCO當作起始座標) dt.Start = new Microsoft.Phone.Tasks.LabeledMapLocation( "Start", CurrentCO); //取得使用者在ListBox中選擇的終點座標 aRock.Google.Location.GeoResult po = this.listBox1.SelectedItem as aRock.Google.Location.GeoResult; //設定終點 dt.End = new Microsoft.Phone.Tasks.LabeledMapLocation("Target", new GeoCoordinate(double.Parse(po.lat), double.Parse(po.lng))); //顯示導航畫面... dt.Show(); 開發人員只需要使用 BingMapsDirectionsTask , 傳入開始和結束的兩個座標點, 調用show()方法,一切搞定,任何人都可以寫出導航功能的手機電子地圖程式了。 而且,這只是WP7.1(Mango)當中的一個小功能,還有其他近千個新的API, 看了這些之後,是不是一掃過去您對Windows Phoen銷量的擔憂? 再加上中文輸入功能,接下來恐怕手機要奇貨可居了。 ...

Windows Phone 7.1 SDK beta 2

圖片
本來最近實在很忙,沒啥時間測試新東西,況且 Windows Phone 7.1 SDK beta 根本才出來沒多久,beta2會有那些新功能? 不過今天剛好整理機器,想說順手安裝一下,不測還好,測了之後發現不寫一篇Blog紀念一下不行... 首先...Beta2的SDK中,模擬器整個變快了,比起beta時候的速度要快了不少,如果你在MS Developer Day 2011 中,曾經聽過我介紹 WP 7.1 SDK 的模擬器,當時的模擬器坦白說稍微慢了一點, 可能beta2當中做了一些優化,主觀上感覺快很多... 不過...更重要的來了...beta2模擬器中居然開始支援中文手寫輸入, 這讓您有機會一窺Mango中的中文手寫輸入風采...影片在底下...喜歡就按個讚吧~ WP7.1 SDK Beta2 下載位置 分享