談C# 編譯器編譯前的程式碼擴展行為

從2000年C#誕生以來,至今已經過了11年多了,C#的版本號也來到了4.0,在筆者所接觸的語言中,C#算是一個相當具有活力的程式語言,設計者Anders Hejlsberg的大膽且創新的特質充分的反映在這個語言上,

其每次的改版都會出現許多大膽的嘗試,目的是為了讓程式設計師能更快速、簡潔的運用C#來完成一些過去看來很複雜的動作,當然!所謂的大膽及創新的嘗試,通常也會引起正反兩面的意見。

本文列出一些C#中可以減少程式設計師撰寫程式碼數量的特色(語法、指令),其中有些是大家已經耳熟能詳的

...繼續閱讀 »

The Framework Designing (4) – Abstract Data Layout


切出Data Layout,通常是一個資料庫應用程式最初、也是最重要的部分,或許有些初學者對此感到困惑,是的!你可以用SqlDataSource做出客戶資料的編修畫面,

但一旦牽扯到商業邏輯,SqlDataSource絕對不會是選項,硬要使用的話會成為負擔。

想像一下,當設計訂單編修畫面時,你可以使用SqlDataSource來呈現訂單表頭及表身的編輯動作,但儲存前後庫存的控管就一定得回到ADO.NET處理,這時商業

邏輯便會呈現出與UI混雜的窘境,整個應用程式也會變得難以維護。

...繼續閱讀 »

Windows Phone 7 中文聯絡人暫時解決方案

今日下午,我已將Web Browser(Ph) 1.1 Submit 上Marketplace,1.1版本在按鍵字體上加大許多,個人在實機測試上感覺還不錯(感謝點部落的Mozart,不然我還是得摸瞎^_^)。

1.1版本也支援了href=”tel:xx” 類的用法,因此可以在使用Google Maps查詢店家時直接點選連結撥出電話,另外在選字及過濾的效能也加強許多。

如果順利的話,各位有需要的朋友應該可以在這幾天下載到。

...繼續閱讀 »

Windows Phone 7上的中文輸入

如你所知,目前出貨的Windows Phone 7尚未支援中文輸入,所以不管是簡訊、聯絡人、郵件都無法輸入中文,因為缺乏了中文輸入法,必須等待微軟推出更新才能完全解決這些問題。

不過,很幸運的,現在的Marketplace上有廠商已經推出了相關的應用程式,可以緩解現在的窘境,我也開發了一款支援網頁中文輸入的軟體, 以下就讓我做一簡單介紹。

...繼續閱讀 »

PDC 10 – The C#、VB.NET Future: Visual Studio Async CTP

在C# 4.0、VB.NET 2010時,C#的主要發明者Anders Hejisberg 宣布這兩個程式語言將進入Dynamic Programming的時代,以dynamic(C#)、Dim(VB.NET 2010)兩個宣告式開啟
了Dynamic Programming時代,從此之後,C#、VB.NET 2010在使用Automation(COM)及其他無法於編譯時期得知型別及成員函式為何時,能更加的簡單即快速來呼叫它們。
在PDC 10中,Anders再次宣告了另一個時代的來臨,C#及VB.NET將攜手進入Async Programming時代,在這個時代中,C#與VB.NET在使用非同步呼叫等相關函式時,將更加的簡便,
更加地趨近於同步呼叫模式。

...繼續閱讀 »

Expression Blend 4 中的資料繫結

隨著Silverlight的版本快速更迭,其對於資料庫開發的相關技術也日益成熟,就目前現況而論,若程式設計師要使用Silverlight 4來開發資料庫應用程式,至少有三種技術可以選擇,
分別是WCF Service、WCF Data Service、WCF RIA Serivce,其中的WCF Data Service及WCF RIA Service皆是架構於WCF Service之上,但如果設計師深入其中,會發現到我們
無時無刻都在與XAML奮戰,不能像在Windows Form中般,僅動動滑鼠即可完成資料繫結,一定得到XAML中鍵入要繫結的資料欄位,也因為如此,常常有學員提及,Microsoft似乎
在此走了回頭路。

...繼續閱讀 »

Inside Silverlight 4 OOB Mode

從Silverlight 3開始,Silverlight Team即提供了Out Of Browser,簡稱為OOB的模式,在這個模式中,Silverlight應用程式可以完全脫離瀏覽器來執行,
此舉揭開了Client端應用程式的另一新頁。
在Silverlight 4中,Silverlight Team更加入了許多新功能,除了顯而易見的列印、音訊及視訊的支援外,在OOB模式中更加入了Elevated Trust支援,
在這個模式下的OOB,不僅可以脫離瀏覽器執行,更可在有限程度下取用原生系統資源

...繼續閱讀 »

Silverlight 2.0 資料庫應用程式開發(1)

我想不用我贅言,相較於Silverlight 1.0的陽春,Silverlight 2.0提供了更完整的資料庫支援,其最主要的部份在於提供了WCF/HTTP的網路機制及客戶端的控件Binding技術,有了這兩個機制,我們可以透過WCF/HTTP網路機制連回Server端取得資料,然後以Binding技術將控件與資料結合在一起,設計出類似Windows Form/WPF UI介面的強大網頁資料庫應用程式

...繼續閱讀 »

為什麼我們需要Silverlight 2

眾人翹首期盼,Microsoft新一代的Web Application開發平台:Silverlight 2.0終於進入了RTW階段(Release To Web),也就是發佈於網路上供大眾下載的正式版。我知道,多數開發者及使用者,對這個技術多半抱持著觀望的態度,畢竟Silverlight 1.0的經驗,讓許多開發者吃了不少苦頭,不支援中文、使用JavaScript、不支援文字輸入,諸多的限制讓Silverlight 1.0停滯在只能用來做動畫的階段,更糟的是,Microsoft所推出的專屬設計工具:Blend又一直處於穩定性、功能性不佳,製作Silverlight 1.0的應用程式對開發者及設計者來說,都不是件容易的事。常有朋友詢問筆者,在Flash的廣泛佔有率之下,使用一個缺乏強大工具,類似於Flash的Silverlight,究竟有何好處呢?

...繼續閱讀 »