天天看點

《Windows程式設計第六版》譯文:簡介(2)

本篇為《Programming Windows, 6th Edition》譯文,本人将一些瑣碎之事寫在譯文之前,沒看過的還請勞駕看一下寫在《Programming Windows,6th Editon》譯文之前

學習本書的方法

      在寫這本書的時候,我曾經對讀者們做出很多設想。我假設你們C#比較熟練。如果沒有,你可能要惡補一下C#的基礎知識。如果你是從C或是C++轉到C#的,推薦你看看我的免費的電子書《.NET Book Zero》:C或是C++程式員需要了解的關于C#和.NET架構的事情,這本書足夠了。這本書的電子版PDF或XPS格式在www.charlespetzold.com/dotnet可以下載下傳(我希望在2013年前期更新一下這本書,以便這本書更好的支援Windows8)。我也假設你已經了解了XML基本文法規則,因為XAML就是基于XML。

         這是一本API的書而不是工具書。在這本書裡面我唯一使用的工具就是Microsoft Visual Studio Express 2012RC for Windows8(簡稱Visual Studio)和XAML Cruncher(我會在第七章介紹它)

         标記語言要比程式代碼的工具性更強。事實上,一些程式員甚至相信類似于XAML這種标記完全應該是機器生成的。Visual Studio 有一個内置可以與之互動的XAML設計器,它可以實作向頁面拖拽控件。越來越多的程式員開始了解并且喜歡用Microsoft Expression Blend為應用程式生成複雜的XAML頁面。

         盡管這些工具對于有經驗的程式員非常不錯,但是我認為對于新手程式員來說親手寫XAML代碼是對學習非常有好處的。這就是我在這本書講XAML的方法。XAML Cruncher工具的特點是:它能讓你在XAML裡面定制一些東西,也能直覺地看到控件對象,但是不能為你寫XAML代碼。

         另一方面一些熟練使用XAML的程式員,甚至忘了如何用代碼建立和初始化對象!我認為這些技能都是很重要的,我會經常展示如何用代碼和标記語言完成同樣的任務。

         SourceCode 學習一種新的API就像學習籃球或是雙簧管:你不能隻是看别人做,一定要親自操作。你可以在你買書的網站裡面“附帶内容”的連結下載下傳到源代碼,但是你最好還是自己敲一遍這些代碼。

         我開始寫這本書的時候,設計了幾個不同的方法來向初學者說明Windows運作時是很結構化的。一種方法就是開始用低級一點的圖形和使用者輸入來示範建立控件,然後描述已經建立的控件。

         我選擇最初就關注對于主流程式員來說比較重要的技能:在應用程式中組裝預定義控件,然後用代碼和資料将它們聯系起來。這也是我在本書第一部分“基本原理”所要關注的。在這個預覽版本的第一部分是由前9章組成。在第一部分中,我會把所有的Visual Studio在多個工程生成的模版的代碼和标記語言給大家講解清楚。而第一部分剩下的其他章節就講templates,collection controls(和data),還有navigation。

         這本書目前的計劃是,這本書越到後面會越有趣,在第二部分“基本結構”将包含底層任務,像觸摸,檔案,網絡,安全,全局和Windows8美麗之處的總結。第三部分“特殊項目”中會處理更多深奧的話題,例如和傳感器(GPS和方向傳感器)打交道,矢量圖,位圖,媒體,文本,列印,和通過手寫識别擷取輸入内容。這個版本包含四個章節。

我的配置

         三星700T(11年9月在微軟開發者大會上釋出的一個特殊機型)

         酷睿i5處理器,4G記憶體,64G硬碟,螢幕支援8點觸控,分辨率1366*768(注:這個分辨率是支援snap視圖的最低分辨率)。

         機器上本來帶有Windows8開發者預覽版本,但是我把他們換成了客戶預覽版,後來又換成最終預覽版。

         測試方向或是傳感器的時候,我額外接了一個1920*1080的顯示屏,一個Microsoft Natural ErgonomicKeyboard 4000鍵盤,一個Microsoft Comfort Mouse 300.滑鼠。

         在大螢幕運作VS,在平闆上看應用運作結果相比我寫第一版Windows程式設計的時候的開發環境要好得多了。但是那已經過去了25年了。

部落客說:

至此,序言部分,我就翻譯到這裡了,後面是一些版權資訊,和作者的聯系方式一類的,大家閑着無聊自己去看看吧,和本書知識方面關系不大了,我就挑比較主要的翻譯一下。序言部分我個人覺得有必要看看,至少一點不了解Windows8的人一定要看一下。他提出了幾個新的概念,和一些關于C#以及.NET架構,Windows運作時的一些東西,都是挺主要的東西。