一次解決您對 .NET Framework、WPF、WPF/E、Silverlight、XAML、XBAP、Expression Studio( Web / Design / Blend / Media)… 所有的疑問


台灣市面上的爛書,90% 以上都是抄自使用手冊 ( 英翻中 ?! ),要不就是每一本書的前 2 / 3 都差不多 凸 =..= 凸。於是乎【火星人】大神俺就佛心大發:

把比上述更多的東東,全都建在 Blogger 上 !  ★ 放心,內文都是中英文對照 ★ ( 這些東東實在是太新了,俺寫的也難免會有錯誤,所以會不斷修正之 )


Ch 0 About

2007.0530
 
   .NET Framework 3.0(OS add-on)
 
   Silverlight(Browser Plug-in)
 
   幾個例子
 
   Expression Blend
 
   Web 2.0 vs. AJAX vs. RIA vs. UX
 
 
 

 
 
 
 
.NET Framework 3.0(OS add-on)
 
 
Windows Vista 已包含 .NET Framework 3.0 ( .NET Framework 3.0 = .NET Framework 2.0 + WPF + WWF + WCF + WCS )
Windows XP SP2、Windows Server 2003 SP1 就得要安裝 .NET Framework 3.0
 
下載 .NET Framework 3.0 唄:
 

 
安裝了 .NET Framework 3.0,才能支援 WPF 的應用:WPF 的 *.EXE ( 筆者稱其為 WPF / *.EXE )XBAP
 
 
 

 
 
 
 
Silverlight(Browser Plug-In)
 
 
先看看下面幾個例子,再決定要不要玩 Expression Blend 2.x + Silverlight 1.1 
 
Silverlight 與 FlashPlayer 很類似,反正都是網際網路的多媒體播放器
請先安裝 Silverlight 這個瀏覽器的 Plug-Ins:( 才能看下述的例子 )
 

 
本系列的文章,主要只 Focus 在能跨 OS、跨 Browser 的 Silverlight 與設計相關的 WPF / *.EXE
至若要寫程式的 XBAPWPF / *.EXE,則點到為止
 
 
 

 
 
 
 
幾個例子
 
 
Flash-Like
 
 。
 。
 。
 。
 
 
IE-based eBook ( Multimedia、AutoPlay Media Studio、… Killer )
 
 。
 。
 
 
SkinBrowser ( iceProjector、Jugglor、MDM、… Killer )
 
 。
 。
 
 
3D、VR ( VRML、Cult3D、ViewPoint、… Killer )
 
 △ 支援 3D
 。
 
 
Silverlight ( Flash Killer )
 
 △ 視訊檔 ( 視訊檔的邊緣套用筆刷漸層,就會變成 Blur / Feather 去背 )
 △ 全螢幕 ( 按 Esc 鍵 or Windows 鍵,就可以還原 )
 。
 。
 。
 
 
 

 
 
 
 
Expression Blend
 
上述的例子,都是以 Microsoft Expression Studio 中的 Expression Blend 所編製的
 
 
大家第一個最關心的就是 Expression Blend vs. Flash
 
  筆者只能說:這是一場不公平的戰爭 ( Flash 絕對被痛宰 )
  所以筆者就擔任真相調查委員會的委員,寫了這一系列的文章 ( 爆冷 ^^||| )
  除了搞動畫 Flash 目前比較方便之外,在其它方面 Flash 幾無優勢 ...
 
 
大家第二個關心的是 Expression Blend 的資料要到哪裡去找 ?!
 
  第一、Expression Blend 1.0 已經落伍了,因為 不支援 Silverlight
     在您看到本文時,市面上應該有一些 Expression Blend 1.0 的中文書,花了錢去買舊資訊 ?! 故不用理會那些書 !!
     請直接使用 Expression Blend 2.X
 
  第二、Silverlight 1.0 也已經落伍了,因為不支援很多重要的新功能
     所以請安裝 Silverlight 1.1 ( or higher )
 
  第三、資料哪裡找 ?! 啊就從這裡開始呀 !! ^++++++++++++++++^
 
 
大家第三個關心的是 誰該學習 Expression Blend ?!
 
  管你是ㄚ貓ㄚ狗、程式設計師 ( 工程師 ) 還是網頁美編 ( 設計師 ),反正任何人都該學就對了:
 
  ‧喜不喜歡微軟是一回兒事,但是 Windows 好用就很重要了
   ( 哪像啥軟體都沒有的爛 Mac、哪像連安裝都很麻煩的 Linux )
 
  ‧喜不喜歡微軟是一回兒事,但是 Microsoft Office 好用就很重要了
   ( 雖然現在有 Open Document 的爭論,但是 MS Office 早已是一種標準 )
 
  ‧喜不喜歡微軟是一回兒事,但是您會使用 Windows、您會使用 MS Office、您也會使用 IE
   同樣的道理,未來您也會使用 Expression Blend + Silverlight + XAML
   ( 簡言之:可以與作業系統整合、有著與作業系統相同的語言、執行速度快、廣泛的多媒體支援、… )
 
  ‧喜不喜歡微軟是一回兒事,但是 ActionScript 2.0 與 ActionScript 3.0 不太相容、
   Flash MX 2004 與 Flash 5 不太相容、 Flash 8 與 Flash MX 不太相容、…
   使用微軟系統的好處是:您在程式語法上投資的時間不會浪費
   ( C# 到處可用、VB 也到處可用、ASP.NET 與 XAML 一樣到處可用 )
 
   未來專為 Windows Vista 撰寫的軟體 ( WPF / *.EXE ),介面部份用的是 XAML
   未來 Windows Vista 平台的網際網路應用 ( XBAP ),介面部份用的是 XAML
   未來跨平台、跨瀏覽器、跨設備的網際網路應用 ( Silverlight ),介面部份用的是 XAML
   未來不管是軟體工程師、網際網路工程師、還是網頁視覺設計師,介面部份用的都會是 XAML
 
   也就是說,學完 HTML、CSS、( JavaScript ) 之後,下一個要學的就是 XAML
   還好 Expression Blend 是視覺化的軟體,即:
   大半的 XAML 語法都不需要自己去 Coding ,Expression Blend 直接就幫您完成了 ( 有點兒類似 Dreamweaver )
 
 
大家最後一個關心的問題是 該如何學習 Expression Blend ?!
 
  Expression Blend + Silverlight 雖然是 Flash + FlashPlayer + Apollo 的 Super Killer
  但是微軟的這套產品畢竟還是發展中的東東,故中文的資訊一定很有限
  想要「先佔者優勢」的網友們,請一定要用英文版、看英文資料 !!!!
  後續的文章筆者會儘量以中英文對照的方式來討論,以期能減少您的「進入障礙」
 
 
 

 
 
 
 
Web 2.0 vs. AJAX vs. RIA vs. UX
 
 
Web 2.0 是一個很空泛的名詞,簡言之就是 網站 vs. 網民 變成 網民 vs. 網民,如:( 網站只提供機制,不製作內容 )
‧YouTube 與無名小站讓網民上傳自己編製的影片或圖片,以供網民欣賞
‧WIKI 是網民集體編撰出來的網路百科全書,以供網民查找資料
‧mySpace 是美國最大的交友網站 ( 韓國的 cyworld 也很類似 )
‧eBay 與 Yahoo 拍賣則是網民之間互相販賣物品
‧上傳圖文很方便的 Blog,還可以開放給網民回應與討論
‧……
不再只是網站負責貼資料,網民負責看資料罷了
 
Web 2.0 在技術方面,通常指的是可以邊下載、邊看資料的技術 ( 不必等到全部下載完才能觀看 )
AJAX 則是 Web 2.0 最具代表性的技術 ( Google Maps 則是引爆 AJAX 的起點 )
其實網路聊天室在發言後不必重新 reload,就是 類-AJAX 的觀念
 
AJAX 基本上與 HTML / CSS / JavaScript 一樣,只不過是圖文式的技術,不夠多媒體,互動性也很受限
所以 RIA ( Rich Internet Applications, 網際網路的多媒體應用 ) 式的 Flash 就大受歡迎
 
Windows Vista 之所以會研發了五年才上市
‧Windows 95 ~ 98:3 年
‧Windows 98 ~ 2000:2 年
‧Windows 2000 ~ XP:2 年
‧Windows XP ~ Vista:5 年
主要就是把 Windows 的核心大大地重寫,幅度之大,甚至連 Windows 使用者介面 ( UI, User Interface ) 的部份都獨立出來為 WPF
WPF 一獨立出來後,除了 Windows Vista 的介面利用 WPF 就變成無比華麗之外 ( 現在還有人關心 Mac OSX 嗎 ?!?! ^+++++++^ )
支援 WPF 的軟體 ( *.EXE ) 也可以無比華麗,支援 WPF 的網際網路應用 XBAP 一樣無比華麗
連跨平台、跨瀏覽器、跨設備 ( 如電腦、PDA、行動電話、… ) 的 Silverlight,只用到 WPF 中的 XAML 技術,一樣馬上給它無比華麗 …
 
微軟 WPF 強調的是 RIA ( Rich Interactive Applications, 多媒體互動應用 ) 與 UX ( User eXperience, 使用者經驗 )
‧在 Internet 的位階:HTML → CSS / JavaScript → PHP / JSP / ASP.NET → AJAX → Flash → XBAP or Silverlight
‧在 OS 的位階:DOS → Windows 3.1~ XP → Windows Vista
‧在 Apps 的位階:DOS 的 *.EXE → Windows 3.1~ XP 的 *.EXE → Windows Vista 的 *.EXE
微軟全系列的 OS、Apps、Internet,從 Windows Vista 時代起,已經全面地 RIA 化、UX 化
 
 
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 
 
微軟的 RIA 與 Adobe 的 RIA ( Rich Internet Applications, 網際網路的多媒體應用 ) 不太一樣
但不管是微軟的 RIA 或是 Adobe 的 RIA:
‧都是以向量為基礎
‧具動畫能力
‧可以展示影音多媒體
‧開放的架構 ( 不管是 FlashPlayer 還是 Silverlight,都公開了 SDK,以利協力廠商開發工具軟體 )
 
 
不過微軟的 RIA ( Silverlight ) 除了上述的基本功能之外,還增加了 Adobe RIA ( Flash ) 所不足或是欠缺的部份:
 
 
支援 3D
 

利用一些 Tools,就可以把常見的 3D 檔轉成一長串的 XAML 語法 → 變成字串物件 → 就可以控制之
 
 
更開放的架構
 

除了 Silverlight SDK 之外,微軟也公開了 Silverlight DOM
如此就可以與 HTML、DOM、CSS、JavaScript、AJAX 整合與互動
 
 
更廣泛的多媒體支援
 
‧直接支援 WMA 與 MP3
‧直接支援 720p HD 與 WMV 之視訊格式
 
 
更易於與企業的網路環境整合
 
‧Flash 雖然也可以與 ASP.NET、PHP、JSP 協同作業,但總是不方便
 而 Adobe Solution 的 Coldfusion、Flex 又太小眾了,在換人 maintain 時,有著高風險
 
‧微軟的 Solution 則很不同:
 除了微軟本身在 Internet 與 Intranet 的環境就很完備之外
 Silverlight 更不設限非用微軟的 Solution ( 如 ASP.NET ) 不可
 管你是 CSS、JavaScript、PHP、JSP、AJAX,一律都可以輕易整合起來,這一點就是 Adobe 所遠遠不能企及的
 
 
更謙卑的態度
 
台灣微軟的經理,光是看到筆者在網路上貼的 Expression Studio 文章
就急著約筆者碰面,並帶著 NoteBook 做簡報
現在的微軟,已不再是以前財大氣粗的微軟了,其重視 HeavyUser 與社群的態度,值得 Adobe 學習
 
 
更核心的業務
 
‧Adobe 的核心業務是 PostScript ( 印刷用的標準語言 ) 與其相關 ( 如 Acrobat、PDF、Illustrator、InDesign、Document Server、… )
 或是大賺其錢的 Photoshop ( 含 Photoshop Elements )
 
 但是 Adobe 併購自 Macromedia 的 Flash / Dreamweaver 與其相關 ( Flex、Coldfusion、Apollo、… )
 並非是 Adobe 的核心業務,所以再怎麼發展,在 Vision 上都會受到核心業務的影響與排擠
 
‧微軟的核心業務是 OS、Office、Internet、Intranet 與程式語言,其中最核心的部份就是 OS !!
 Windows Vista 的 UI 是 WPF,支援 WPF 的語言是 XAML
 
Silverlight 除了是 XAML 的應用之外,同時也是 Internet 的應用,更是一種程式語言的 Player
簡言之,Silverlight 橫跨微軟五大核心業務裡的三種:OS、Internet、程式語言
所以也不用擲笅,微軟當然會全心全力推廣此一相關的技術
 
 
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 
 
微軟追求的目標:
微軟現在已經超越動態、華麗、互動,而開始追求 UX ( 微軟這次終於擺脫追隨者的惡名,而變成創新的領先群 )
 
‧iPOD 是 PMP ( Portable Media Player, 隨身播放器 ) 面板的 UX
 
‧iPhone 是 PMP 觸控螢幕的 UX
 
‧Wii 是搖桿的 UX
 
‧這也是 UX
 
 
‧微軟 Office 2007 其實也算是軟體操作新的 UX
 
‧微軟 TabletPC 是筆式 OS 的 UX
 
‧微軟 MCE ( Media Center Edition ) 是數位電視的 UX
 
‧微軟新的 Surface ( 研發代號:milan ) 更是觸控電腦的 UX:( 看來也是使用 WPF ?! )
 
 。微軟 Milan 桌面電腦:完全觸控操作
 。微軟的「表面電腦」Milan
 。Microsoft Surface 將給你帶來革命性的改變
 。今日我最美:Microsoft Surface
 。18 分鐘的視訊
 
‧WPF 不只是讓 Windows Vista 有著與以往 OS 不同的 RIA 與 UX
 微軟更進一步釋出權力,讓您也能決定程式 ( WPF / *.EXE ) 、XBAP、Silverlight 的 RIA 與 UX:
 即 Expression Studio 裡面的 Expression Blend,讓您以 XAML 來把玩軟體與網路的 RIA 與 UX

筆者搞的一些小作品 筆者搞的 Flash 破解 Silverlight 俺搞的 30 首小曲子 ( 每首約花半個小時編曲 ) 在 PDF 檔嵌入 Flash ( 丑角與交趾陶的編製過程 ) IE-Based CD Title ( 筆者八百年前搞的 )