2011年3月18日 星期五

感謝大家今天熱情參與...

感謝大家今天熱情參與由資策會所舉辦的『雲端嬉遊研討會』
http://www.iiiedu.org.tw/taipei/freetalking/cloud_201103.htm

在今天的場次中和大家分享了Windows Phone 7如何與微軟Windows Azure雲端運算技術整合,以及相關的三螢一雲應用程式建置經驗。

相關的投影片可在底下位置下載。
http://docs.com/B2Y9

在WP7/Silverlight當中接收JSON資料...

事情是這樣的,可能很多開發人員已經清楚,在Silverlight技術當中是不直接支援以ADO.NET方式來存取遠端DB的,關於這個部分,我在許多課堂中都有說明,隨著技術的改變與更新,現在有更好的方式在SL當中抓取資料,我們主要使用的是LINQ技術,在伺服器端可以配合LinqToSql和ADO.NET Entity Framework,所以我們會建議開發人員,在撰寫SL要呼叫的Web/WCF Services時,就直接透過LinqToSql or ADO.NET EF抓取資料,並且把抓到的資料直接以物件的方式回傳,這樣有一個超級棒的好處,就是在Silverlight去reference這個Web/WCF Services時,VS2010會自動在Silvelright端幫你generate這個物件的Type,然後你可以輕鬆的在SL當中使用這個物件,如同這個物件從伺服器端被傳到用戶端一樣。

例如:
[WebMethod]
        public AddrssBook[] getAllData()
        {
            AddrBookDataContext db = new AddrBookDataContext();
            var ret = from c in db.AddrssBooks select c;

            return ret.ToArray();
        }
這邊的AddressBook類別是資料表名稱,是LinqToSql自動幫我們產生的類別定義。

當SL去呼叫這個Web Services時,在Silvelright端就會自動產生該類別(從Win/Web Form時代就是這樣),一切都相當容易。

但在這個多元化的時候,很可能有時候沒那麼單純,總是有很多奇怪的場合,你的客戶會要求你達成跨平台這個遠大的目標。這時候,你要考慮Services是不是有可能要讓其他開發技術(PHP? Java? @#$%^&*@#$%?)來呼叫...因此,把資料轉成大家看得懂並且容易解析的方式會比較理想,例如JSON...

2011年3月5日 星期六

SQL Azure Migration Wizard

最近,應客戶的要求要上雲端,雖然有部分客戶對於雲端的意義和價值還搞不太清楚,但為了提升企業的競爭力和知名度,上雲端這件事情是肯定一定要的。(雖然兩者之間似乎沒太大關係)

Anyway, 總之呢,下半年會有更多的雲端概念出現。

但上雲端可不是隨便就上的,話說,先前我曾經說過,現階段對我來說,SQL Azure的CP值比較高,所以我在SQL Azure可以用了之後沒多久,就把很多在Web上的服務所用到的DB移上了SQL Azure。但是,這過程可是一波多折,截至目前為止,依舊沒有好的tool可以很方便的編修在雲端的資料庫(似乎,微軟覺得上了雲端的東西謹慎點好,沒事別改來改去)。對於眾多喜歡用tool不喜歡下SQL指令的Developer來說,實在是辛苦了點...

不過,在CodePlex上一直都有一套勉強可用的Tool, SQL Azure Migration Wizard 這套工具可以幫助你將某個SQL Database進行分析後,移轉(Migrate)到雲端的SQL Azure上。

最近剛好要操作,順便截錄畫面如下... 

2011年3月3日 星期四

突破舊有思維制約的創意

看這段影片,讓我回憶起了一些歷史,40年前,電腦是一棟建築物才能容納的高檔研究設備,有一家懷抱夢想的公司,把它帶入了家家戶戶的客廳...

30年前,那時候作業系統和套裝軟體是綁(配合)著電腦硬體銷售的,硬體的規格和OS密切整合,所以軟體發揮了很好的效能,但卻限制的設計的創新,也無法降低銷售成本,20多年前的某一天,有另一家帶著願景的公司決定只做軟體,把軟體從硬體切割出來,分開來銷售,這個動作,造就了某個在車庫裡創立的軟體公司這幾十年的基業,也成就了過去台灣十多年PC硬體產業的繁榮...

2000年代初有家公司在市場占有率大幅滑落,面臨存亡關鍵之際,因緣際會轉型成為mp3撥放器的終端消費產品的製造廠商,在2007年又跨足智慧型手機的領域,這一跨足,把原先在該領域佔有率最高的軟體與手機廠商殺的片甲不留...

這一切,都在過去這幾十年發生,起起落落、風風雨雨,回顧這一切,只能說,能夠突破舊有思維制約的創意,才是讓企業能立於不敗的關鍵...改變,往往從某一件事,或某一個人開始...

不過歷史也告訴我們,持續的領先和成功,是需要不斷的創意和挑戰自己才能夠實現,如果一放鬆,隨時都有競爭對手等著超越過去。

BTW,什麼時候微軟也拍一個讓大夥感動的影片,最近怎麼都是Apple的產品介紹影片比較感動人心咧???

分享

2011年3月2日 星期三

在WP7中使用Silverlight開發DropBox應用

這篇文章的標題很有趣,WP7是手機、Silverlight是開發技術、DropBox是雲端服務應用...如果你對資訊技術(特別是開發技術)有興趣且持續關注,會發現這三個(類)名詞最近常常似有若無的連結在一起。(以後有機會再分享感觸...)

使用WP7手機好一陣子了,比較特別的地方是,WP7手機沒有檔案系統的概念,而是比較偏向雲端資料儲存機制,也因此,如果你需要Sync PC上的檔案,比較理想的方式是將檔案從PC Sync到雲端(例如Dropbox或是Skydrive),然後再透過手機去讀取...