進入Silverlight 3之前必須瞭解的關鍵技術

在你決定開始投入RIA 開發領域,並且選擇以 Silverlight 作為發展平台之前,有兩個關鍵技術必須先修鍊起來…

 

 原文出處:http://www.kangting.tw/2009/03/silverlight-3_30.html



在你決定開始投入RIA 開發領域,並且選擇以 Silverlight 作為發展平台之前,有兩個關鍵技術必須先修鍊起來: 

  • ADO.NET Entity Framework
  • LINQ

ADO.NET Entity Framework是一種全新的資料存取技術,它根據現有的資料庫架構,建立對應結構描述資訊的實體資料模型,然後應用程式透過它來與資料來源進行溝通,多架了一層的好處,在於原先我們以欄位對應來存取資料,現在則轉換成為由物件屬性以及方法進行資料的存取,如此一來,大幅減化資料存取的複雜度。

ADO.NET Entity Framework 的重要性,不只在 Silverlight 3 的.NET RIA 服務會與它所建立的資料物件進行互動,就算你目前 Silverlight 2 使用的 ADO.NET 資料服務,同樣是架構在這個框架之上的一種資料供應服務。

至於LINQ,這是一個很有趣的技術,可能很少有技術會被誤解這麼深,從一組很單純的集合型別方法,被轉換、整合成為語言的內建語法,然後一包再包,一下子包成for XML,一下子包成for SQL,連DataSet都不放過,甚至上面提及的ADO.NET Entity Framework都有一個LINQ to Entities,所有新世代的資料存取框架,都與它脫離不了關係,這很像次級房代,好好的一筆單純的房貸,包到後面就變成一場災難。

這不是說LINQ不好,相反的,這是一項優異的技術,但是在一開始的時候,因為它同時提供各種預先包裝的版本,導致它真正的精神被誤解,因此開始有人以為LINQ用來取代SQL,有人覺得它是另外一套XML API,當然啦,有人也認為它是微軟提出通用於各種資料來源的資料存取技術,學了它,所有東西都可以丟掉,然後用了之後,發現它又好像必須搭配A技術、搭配B技術,才能完成一些簡單的工作,簡直一整個莫名其妙。

沒有人不喜歡吃了神藥馬上成就十甲子功力的事,每個人都愛絕世秘笈,而每個人也都知道金庸再怎麼唬爛,他的男主角們至少還得跳下懸崖才能練就蓋世神功,道理都懂,真的實踐起來可就不是那麼一回事,新技術太多,時間太少,客戶要交待,老板不給時間,因此我們都希望直接看範例,跳過基本功,馬上現學現賣,而事實上當我們開始將技術運用在實際的專案開發中,才發現捉襟制肘,搞不清楚一項技術到底該怎麼用,用在什麼樣的地方。

Silverlight,絕對是一門複雜的技術,先不談細節,從你第一次開始接觸它的時候,就必須決定你將鑽研的是它的設計面,還是開發面,然後,你會發現,無論那一面,接下來又有一堆光聽就令人退避三舍的技術名詞等著你去瞭解。

當然,我是一個開發人員,設計面,老實說,只是幼幼班,只會畫簡單幾何,黑白兩色配得還不錯,繪圖API會用是一回事,用得好,那又是另外一個境界的問題了。

而開發人員,至少,你必須先有這兩項關鍵技術的基礎,再來談是否進入 Silverlight 的開發領域,ADO.NET Entity Framework 非常的新,不過,網路上陸續有相關的資訊可供參考,有心的話,學好不是問題。

至於LIQN,當然啦,「LINQ最佳實務講座」是必敗的啦,Silverlight 3 正式版的釋出還有一陣子,找機會先練基本功吧。XD