Exam 70-526 考试介紹

只要有Windows操作系统的存在,就会有各式各样的Windows应用程序开发出来,小至记事本、小算盘;大至PhotoshopDreamweaver乃至于Visual StudioOffice等等。Windows应用程序的最大特色,便是可以直接存取操作系统与硬件提供的服务,这样可以加速应用程序的处理速度,并且可设计的弹性也会变大,不会受限于某个应用程序的框架中。

 

Microsoft .NET Framework平台策略中,WebWindows应用程序为整个企业应用程序中是扮演客户端(Client)的角色,也因为Windows应用程序的高速处理能力,在.NET平台策略中,与OfficeSmart Device Client(智能型装置客户端)合称为Smart Client(智能型客户端),这类型的客户端程序可以善用硬件资源、部署简单(透过ClickOnce)、开发简单(Visual Studio.NET Framework)、脱机处理资料能力、并且透过Web Service与其他系统连接等。

 

.NET Framework将多数建立Windows应用程序所用的Windows API函式包装成System.Windows.Forms命名空间的类别,包括标准的Windows控件、多数的Windows共享控件(如TreeViewListViewToolbar)、网络浏览器(WebBrowser)等控件,并且加上了许多的辅助控件,例如控件布置(TableLayoutPanelSplitContainerFlowLayoutPanel)、线程处理(BackgroundWorker)等,可以加速开发人员在发展Windows应用程序的效率。

 

不过,就算是有这么多方便的控件,开发人员也需要懂得使用方法,也要知道要怎么选用控件,如此才能够事半功倍,而这也是Windows客户端开发考试的重点项目。

 

考试背景

Exam 70-526TS: Microsoft .NET Framework 2.0 Windows-Based Client Development考试,系以利用.NET Framework开发Windows应用程序为主要命题方向,测验考生对于应用.NET Framework发展Windows客户端应用程序的能力,除了System.Windows.Forms命名空间外,还包括了数据存取(ADO.NET)、XML处理(System.Xml)、ClickOnce部署(System.Deployment)、绘图与打印(System.Drawing)等命名空间。

 

微软建议考生最好要有在Visual Studio.NET Framework开发上的实务经验,若有.NET Framework 1.xVisual Studio.NET 2003的经验更佳,或者是具备有Exam 70-306VB)或Exam 70-316C#)考试同等的知识与经验。

 

笔者认为考生不只是要了解System.Windows.Forms命名空间的应用,还要对.NET Framework的基础开发有一定程度的了解,亦即与Exam 70-536之考试相同的标准,如此对准备考试,以及实务上在Windows应用程序的发展才会有更大的帮助。

 

考试测验的技能

70-526考试以测验对Windows Forms应用程序的开发熟悉度为主,考试支援C#Visual BasicVisual C++.NET,共分七大主题。

 

使用标准控件建立Windows Forms应用程序的用户接口。

 

要开发Windows Forms应用程序,就一定要会设计用户接口,而要会设计用户界面,则一定要知道如何使用控件,在.NET Framework中内建了非常多的控件,在Visual Studio中都可以看的到。

 

 首先,要先知道如何操作窗体(Form),操作窗体在Windows Forms应用程序的开发占相当重要的地位,例如像是控制窗体的样式、大小、控制键(最大/最小化与关闭)、在窗体之间传递数据与控制窗体的显示与隐藏等,以及如何用程序代码去控制窗体的属性与行为(例如事件处理或是窗体拖放等)。

 

 控件的使用是一定要会的,不论是内建标准控件或是Windows共享控件皆然,这些控件会构成用户接口,直接由用户去操作,所以适当的控件配置以及响应能力是很重要的,例如使用MessageBox来显示应用程序通知、用Enabled属性来封锁命令按钮或是列表、用Visible属性来控制可见的状况、设定快捷键(shortcut key)以及任务栏小图示(Notify Icon)等等,控件的使用与设计若得当,可以增加使用者的满意度,以及执行工作的顺畅度。

 

 用户接口的动线设计与控件群组化(Grouping Controls),可以帮助开发人员得以较简单的方式控制一群的控件,例如步骤化的用户接口;或是像问卷填答系统等,有时会需要把一堆控件集合起来一起操作时,就会使用到具群组化的控件,如PanelGroup Box;另外,在.NET Framework 2.0提供了TableLayoutPanelFlowLayoutPanel,可以让开发人员以类似网页表格排版的方式来配置控件,SplitContainer则可以分隔二个Panel,做到与档案总管相似的用户接口(由中央的拆分栏来调整两个Panel的大小),如何应用群组化控件在应用程序中,则是考试重点之一。

 

 菜单(Menu)和快捷菜单(Context Menu)在Windows Form应用程序中,是很常见的一个控件,在.NET Framework 2.0中,Menu的威力比.NET Framework 1.x更强也更能够自定义化,除了要能够利用Visual Studio来控制Menu外,以程控Menu/Context Menu控件与其中的项目也是重点之一。

 

 事件处理程序(Event handler)则是窗体/控件与应用程序沟通的方法,像是捕捉键盘讯息、鼠标讯息与用户指令时,就必须要透过事件处理程序,所以选用正确与适当的事件例程是重点之一,而如何取出事件参数,以及如何动态设定事件处理程序(这是实作控件数组的重点),亦为考试容易出题的部份之一。

 

 这个主题主要测验方向都是在基本的Windows Form用户接口设计上,考生最好是对用户接口设计与程序代码动态控制有经验,否则可能会看不懂考试问题中的程序代码。

 

 

整合数据于Windows Forms应用程序。

 

在商用应用程序中,若没有和数据库连接,则会显得有点格格不入,就算是一般应用程序,也多少会处理到一些数据,这些数据则不一定来自于数据库,有可能是档案(文本文件或二进制文件)、网络数据或是XML数据等等,考生要能够读写数据,并且应用适当的控件呈现数据。

 

 数据系结(Data Binding)能力是Windows Forms结合数据处理的核心能力之一,除了标准负责数据显示的DataGridView之外,像是ListBoxComboBox等控件都可以实作数据系结,另外,也可以透过Control.DataBindings来加入控件的数据系结能力。Visual Studio 2005也提供了视觉化工作来处理这个工作。

 

 但若要真正处理数据,还是要很熟悉ADO.NETSystem.Data命名空间),这是考试重点之一,也是这个主题题目数最多的部份,不论是ConnectionCommandDataReaderDataAdapter等基本类别,或是DataSetTyped DataSetDataViewDataTableDataRowDataRelationDataColumn等脱机数据库基本组成组件,都必须要练到很熟悉才行,因为这是唯一和数据库通讯与交换/读写数据的最佳管道,不论是连AccessSQL ServerOracleODBC数据库;执行SQL、填入数据或执行交易程序等等,ADO.NET可以做到的事非常多,所以考生务必要练到能够活用,这个部份是不分Windows/Web或其他应用程序,只要在.NET Framework中有开发到数据库应用时,就会利用到。

 

 XML也是一个常被使用的数据种类,现在已经被广泛使用在各类型的应用程序,RSS就是一个典型的例子,其他像是HIPAA等大型数据交换标准,也都有XML的影子。System.Xml命名空间提供了经由MSXML存取XML数据所需要的方法与类别,考生必须要熟练使用System.Xml提供的类别来存取XML内容(如XML DOM),以及读写XML数据源(档案或是网络数据流),这是考试重点之一。

 

Windows Forms应用程序中实作打印与报表功能。

 

Windows FormsWeb Forms最大的不同之一,就是Windows Forms可以实作自定义的打印(Printing)能力,透过Windows API.NET Framework提供的打印类别(System.Drawing.Printing命名空间),开发人员可以在由操作系统所产生的打印机Graphics对象中,画出想要的报表格式(如文字、图形或其他可绘出的数据),然后由打印机打印出来。

 

 除了打印以外,.NET Framework也提供了操作打印机与打印预览(Print Preview)能力,开发人员可以用程序代码在执行时期设定默认打印机、列举打印机、设定打印机属性等工作,也可以在打印前利用PrintPreviewDialogPrintPreviewControl类别来产生打印预览的对话盒或自定义窗口。

 

 考生要对System.Drawing.Printing命名空间中的类别要熟悉,最好是能够实际撰写,包括如何操作绘图指令等。

 

强化使用性(Usability)。

 

当应用程序开始扩张,或者一开始就计划要开发的是中大型的Windows Forms应用程序时,可能光只是控件会满足不了来自各个层面的用户、需求或操作习惯,此时就要思考用户界面的使用性,以更方便或更直觉的作法来实作应用程序。

 

 若应用程序是要给不同语系的使用者使用时,全球化(Globalization)能力就很重要,因为要在不同的语系显示当地语系的用户接口,包含货币单位与输入方法等,.NET Framework提供了输入法模式、资源文件等方法可满足Windows Forms的全球化需要。

 

 若希望用户可以在同一个界面下存取与使用多个文件资料时,可以利用MDIMultiple Document Interface接口,让应用程序可以同时开启数份文件,或是数个窗口。并且可以配合实作Drag-and-Drop(拖放)能力,让用户在利用应用程序工作时能够更简单顺手。

 

 .NET Framework另外提供了许多控件,可以在应用程序执行中和用户互动,或提供使用者协助(User Assistance),利用ProgressBar可以显示工作处理的进度;StatusStrip可以显示应用程序目前的状态;Timer可以控制定时的工作(例如每三分钟存盘一次);ErrorProvider可以告诉使用者目前哪个地方有错误;HelpProvider可以提供说明;Tooltip可以提供小提示等等,善用这些控件可以增加用户的满意经验。

 

 考生至少要熟悉各控件基本操作方法、MDI模式下子窗口的控制、全球化的作法以及拖放的处理方式。

 

 

实作异步程序设计技术以强化用户体验。

 

这个主题是70-526考试的重点项目,在设计Windows Forms应用程序中,有时会出现一些短时间内无法完成的工作(例如大量数据处理或是档案复制等),若不加以处理,则在工作执行期间用户接口会僵住,用户可能会以为应用程序当掉了。所以要能够执行工作,又要能保持用户界面的可使用性,就是这个主题所要考验的。

 

 这个问题的解决方法,就是使用多线程(Multithreading)机制,Windows Forms应用程序本身称为主线程(Main Thread),而需要执行工作的线程称为工作线程(Worker Thread),将要花时间的工作交给工作线程去执行,主线程就可以保持对用户接口响应的处理,不过线程间的数据交换与控件存取往往是令开发人员头痛的问题。以往在.NET Framework 1.x的时代,必须要自行处理线程间交换数据(例如处理进度)的问题,像是Control.Invoke()与委派函式的工作,但在.NET Framework 2.0中,新增了一项非常好用的工具类别:BackgroundWorker,它可以以很简单的方法产生工作线程,并且保持主线程的可用性,并且也支持回报状态与交换数据能力。

 

 BackgroundWorker利用DoWork事件来设定要执行的工作,然后呼叫RunWorkerAsync()开始执行,程序可以由RunWorkerCompleted事件来得到执行结果(由DoWork事件例程中的参数来设定)。若需要回报能力,则要先设定WorkerReportProgress属性为true,并且在DoWork的函式中利用ReportProgress()方法来传送状态数据,主线程部份由ProgressChanged事件来接取状态数据并更新用户接口。

 

 若不想使用BackgroundWorker,或者是有多条线程要做,那么就需要自己处理Thread,包括侦测状态、数据交换与控制线程等。

 

 考生必须要对于如何操作BackgroundWorker的流程要相当熟悉,以及如何设定它来满足需要(例如回报状态),另外,如何操作线程也是考试重点之一。

 

 

开发Windows Forms控件。

 随着各类需求与功能的发展,开发人员会认为现有的控件功能不足,或是想要由现存的控件中发展更多的功能时,就需要开发自定义控件(Custom Controls),自定义控件可以从头开发(继承System.Windows.Forms.Control类别)、由现有的控件中开发(继承自想要利用的控件)或是将许多控件组合在一起,变成复合型控件(Composite Control),不论是哪一种控件,都可以放在Visual Studio的工具箱(Toolbox)中,应用程序的其他部份即可取用;若想要开发可以独立存在的控件,则可由Visual Studio产生自定义控件项目,开发出来的组件即可散布(以DLL型态组成)。

 

 考生在这个主题中要注意的是自定义控件的发展方法、控件出现在工具箱的行为(例如图标),以及属性设定的方式(提示文字与设定方法等)。

 

 

设定与部署应用程序

 

当应用程序开发与测试完成后,即可准备部署(Deployment),.NET Framework支持Windows Installer方式,或是xcopy部署方法,但若是商用或是要简化应用程序部署流程,可考虑使用Windows Installer部署,因为可以得到最大的安装程序主控权,除了可以读写系统资源(文件系统与Registry登录数据库)以外,还可以透过实作自定义动作(Custom Actions)来开发自己的安装流程(例如在安装时建立数据库或网站)。

 

 但若是利用网络部署或是小型应用程序,用Windows Installer部署反而会变得较为麻烦,所以.NET Framework 2.0新增ClickOnce部署功能,可以让开发人员透过网络来部署应用程序,并且可以提供安全设定,以及自动更新的功能,但缺点就是无法存取系统资源。

 

 考生需要知道这两种方法的差异、在给定的环境中使用的部署方式、ClickOnce的设定方法与程控方法等。

 

 

准备方法

准备70-526的方法,除了要收集数据外,就是累积写程序的经验,对Windows Forms程序的经验愈多,准备这一科就会愈轻松,尤其是针对.NET Framework 2.0的新功能,考生要多加注意。

 

书籍部份,目前中文书有不少是以Windows Forms为主题的初学书籍,但往往都不太够,可能还需要搭配.NET Framework SDK文件来查询,否则可能会有不足之处。微软官方有出版一本官方自学教材,专门为准备本科考试而撰写,国内有出版社将它翻译为中文版,到书局找找就会看的到,上网找也行。

只要有Windows操作系统的存在,就会有各式各样的Windows应用程序开发出来,小至记事本、小算盘;大至PhotoshopDreamweaver乃至于Visual StudioOffice等等。Windows应用程序的最大特色,便是可以直接存取操作系统与硬件提供的服务,这样可以加速应用程序的处理速度,并且可设计的弹性也会变大,不会受限于某个应用程序的框架中。

 

Microsoft .NET Framework平台策略中,WebWindows应用程序为整个企业应用程序中是扮演客户端(Client)的角色,也因为Windows应用程序的高速处理能力,在.NET平台策略中,与OfficeSmart Device Client(智能型装置客户端)合称为Smart Client(智能型客户端),这类型的客户端程序可以善用硬件资源、部署简单(透过ClickOnce)、开发简单(Visual Studio.NET Framework)、脱机处理资料能力、并且透过Web Service与其他系统连接等。

 

.NET Framework将多数建立Windows应用程序所用的Windows API函式包装成System.Windows.Forms命名空间的类别,包括标准的Windows控件、多数的Windows共享控件(如TreeViewListViewToolbar)、网络浏览器(WebBrowser)等控件,并且加上了许多的辅助控件,例如控件布置(TableLayoutPanelSplitContainerFlowLayoutPanel)、线程处理(BackgroundWorker)等,可以加速开发人员在发展Windows应用程序的效率。

 

不过,就算是有这么多方便的控件,开发人员也需要懂得使用方法,也要知道要怎么选用控件,如此才能够事半功倍,而这也是Windows客户端开发考试的重点项目。

 

考试背景

Exam 70-526TS: Microsoft .NET Framework 2.0 Windows-Based Client Development考试,系以利用.NET Framework开发Windows应用程序为主要命题方向,测验考生对于应用.NET Framework发展Windows客户端应用程序的能力,除了System.Windows.Forms命名空间外,还包括了数据存取(ADO.NET)、XML处理(System.Xml)、ClickOnce部署(System.Deployment)、绘图与打印(System.Drawing)等命名空间。

 

微软建议考生最好要有在Visual Studio.NET Framework开发上的实务经验,若有.NET Framework 1.xVisual Studio.NET 2003的经验更佳,或者是具备有Exam 70-306VB)或Exam 70-316C#)考试同等的知识与经验。

 

笔者认为考生不只是要了解System.Windows.Forms命名空间的应用,还要对.NET Framework的基础开发有一定程度的了解,亦即与Exam 70-536之考试相同的标准,如此对准备考试,以及实务上在Windows应用程序的发展才会有更大的帮助。

 

考试测验的技能

70-526考试以测验对Windows Forms应用程序的开发熟悉度为主,考试支援C#Visual BasicVisual C++.NET,共分七大主题。

 

使用标准控件建立Windows Forms应用程序的用户接口。

 

要开发Windows Forms应用程序,就一定要会设计用户接口,而要会设计用户界面,则一定要知道如何使用控件,在.NET Framework中内建了非常多的控件,在Visual Studio中都可以看的到。

 

首先,要先知道如何操作窗体(Form),操作窗体在Windows Forms应用程序的开发占相当重要的地位,例如像是控制窗体的样式、大小、控制键(最大/最小化与关闭)、在窗体之间传递数据与控制窗体的显示与隐藏等,以及如何用程序代码去控制窗体的属性与行为(例如事件处理或是窗体拖放等)。

 

控件的使用是一定要会的,不论是内建标准控件或是Windows共享控件皆然,这些控件会构成用户接口,直接由用户去操作,所以适当的控件配置以及响应能力是很重要的,例如使用MessageBox来显示应用程序通知、用Enabled属性来封锁命令按钮或是列表、用Visible属性来控制可见的状况、设定快捷键(shortcut key)以及任务栏小图示(Notify Icon)等等,控件的使用与设计若得当,可以增加使用者的满意度,以及执行工作的顺畅度。

 

用户接口的动线设计与控件群组化(Grouping Controls),可以帮助开发人员得以较简单的方式控制一群的控件,例如步骤化的用户接口;或是像问卷填答系统等,有时会需要把一堆控件集合起来一起操作时,就会使用到具群组化的控件,如PanelGroup Box;另外,在.NET Framework 2.0提供了TableLayoutPanelFlowLayoutPanel,可以让开发人员以类似网页表格排版的方式来配置控件,SplitContainer则可以分隔二个Panel,做到与档案总管相似的用户接口(由中央的拆分栏来调整两个Panel的大小),如何应用群组化控件在应用程序中,则是考试重点之一。

 

菜单(Menu)和快捷菜单(Context Menu)在Windows Form应用程序中,是很常见的一个控件,在.NET Framework 2.0中,Menu的威力比.NET Framework 1.x更强也更能够自定义化,除了要能够利用Visual Studio来控制Menu外,以程控Menu/Context Menu控件与其中的项目也是重点之一。

 

事件处理程序(Event handler)则是窗体/控件与应用程序沟通的方法,像是捕捉键盘讯息、鼠标讯息与用户指令时,就必须要透过事件处理程序,所以选用正确与适当的事件例程是重点之一,而如何取出事件参数,以及如何动态设定事件处理程序(这是实作控件数组的重点),亦为考试容易出题的部份之一。

 

这个主题主要测验方向都是在基本的Windows Form用户接口设计上,考生最好是对用户接口设计与程序代码动态控制有经验,否则可能会看不懂考试问题中的程序代码。

 

 

整合数据于Windows Forms应用程序。

 

在商用应用程序中,若没有和数据库连接,则会显得有点格格不入,就算是一般应用程序,也多少会处理到一些数据,这些数据则不一定来自于数据库,有可能是档案(文本文件或二进制文件)、网络数据或是XML数据等等,考生要能够读写数据,并且应用适当的控件呈现数据。

 

数据系结(Data Binding)能力是Windows Forms结合数据处理的核心能力之一,除了标准负责数据显示的DataGridView之外,像是ListBoxComboBox等控件都可以实作数据系结,另外,也可以透过Control.DataBindings来加入控件的数据系结能力。Visual Studio 2005也提供了视觉化工作来处理这个工作。

 

但若要真正处理数据,还是要很熟悉ADO.NETSystem.Data命名空间),这是考试重点之一,也是这个主题题目数最多的部份,不论是ConnectionCommandDataReaderDataAdapter等基本类别,或是DataSetTyped DataSetDataViewDataTableDataRowDataRelationDataColumn等脱机数据库基本组成组件,都必须要练到很熟悉才行,因为这是唯一和数据库通讯与交换/读写数据的最佳管道,不论是连AccessSQL ServerOracleODBC数据库;执行SQL、填入数据或执行交易程序等等,ADO.NET可以做到的事非常多,所以考生务必要练到能够活用,这个部份是不分Windows/Web或其他应用程序,只要在.NET Framework中有开发到数据库应用时,就会利用到。

 

XML也是一个常被使用的数据种类,现在已经被广泛使用在各类型的应用程序,RSS就是一个典型的例子,其他像是HIPAA等大型数据交换标准,也都有XML的影子。System.Xml命名空间提供了经由MSXML存取XML数据所需要的方法与类别,考生必须要熟练使用System.Xml提供的类别来存取XML内容(如XML DOM),以及读写XML数据源(档案或是网络数据流),这是考试重点之一。

 

 

Windows Forms应用程序中实作打印与报表功能。

 

Windows FormsWeb Forms最大的不同之一,就是Windows Forms可以实作自定义的打印(Printing)能力,透过Windows API.NET Framework提供的打印类别(System.Drawing.Printing命名空间),开发人员可以在由操作系统所产生的打印机Graphics对象中,画出想要的报表格式(如文字、图形或其他可绘出的数据),然后由打印机打印出来。

 

除了打印以外,.NET Framework也提供了操作打印机与打印预览(Print Preview)能力,开发人员可以用程序代码在执行时期设定默认打印机、列举打印机、设定打印机属性等工作,也可以在打印前利用PrintPreviewDialogPrintPreviewControl类别来产生打印预览的对话盒或自定义窗口。

 

考生要对System.Drawing.Printing命名空间中的类别要熟悉,最好是能够实际撰写,包括如何操作绘图指令等。

 

 

强化使用性(Usability)。

 

当应用程序开始扩张,或者一开始就计划要开发的是中大型的Windows Forms应用程序时,可能光只是控件会满足不了来自各个层面的用户、需求或操作习惯,此时就要思考用户界面的使用性,以更方便或更直觉的作法来实作应用程序。

 

若应用程序是要给不同语系的使用者使用时,全球化(Globalization)能力就很重要,因为要在不同的语系显示当地语系的用户接口,包含货币单位与输入方法等,.NET Framework提供了输入法模式、资源文件等方法可满足Windows Forms的全球化需要。

 

若希望用户可以在同一个界面下存取与使用多个文件资料时,可以利用MDIMultiple Document Interface接口,让应用程序可以同时开启数份文件,或是数个窗口。并且可以配合实作Drag-and-Drop(拖放)能力,让用户在利用应用程序工作时能够更简单顺手。

 

.NET Framework另外提供了许多控件,可以在应用程序执行中和用户互动,或提供使用者协助(User Assistance),利用ProgressBar可以显示工作处理的进度;StatusStrip可以显示应用程序目前的状态;Timer可以控制定时的工作(例如每三分钟存盘一次);ErrorProvider可以告诉使用者目前哪个地方有错误;HelpProvider可以提供说明;Tooltip可以提供小提示等等,善用这些控件可以增加用户的满意经验。

 

考生至少要熟悉各控件基本操作方法、MDI模式下子窗口的控制、全球化的作法以及拖放的处理方式。

 

 

实作异步程序设计技术以强化用户经验。

 

这个主题是70-526考试的重点项目,在设计Windows Forms应用程序中,有时会出现一些短时间内无法完成的工作(例如大量数据处理或是档案复制等),若不加以处理,则在工作执行期间用户接口会僵住,用户可能会以为应用程序当掉了。所以要能够执行工作,又要能保持用户界面的可使用性,就是这个主题所要考验的。

 

这个问题的解决方法,就是使用多线程(Multithreading)机制,Windows Forms应用程序本身称为主线程(Main Thread),而需要执行工作的线程称为工作线程(Worker Thread),将要花时间的工作交给工作线程去执行,主线程就可以保持对用户接口响应的处理,不过线程间的数据交换与控件存取往往是令开发人员头痛的问题。以往在.NET Framework 1.x的时代,必须要自行处理线程间交换数据(例如处理进度)的问题,像是Control.Invoke()与委派函式的工作,但在.NET Framework 2.0中,新增了一项非常好用的工具类别:BackgroundWorker,它可以以很简单的方法产生工作线程,并且保持主线程的可用性,并且也支持回报状态与交换数据能力。

 

BackgroundWorker利用DoWork事件来设定要执行的工作,然后呼叫RunWorkerAsync()开始执行,程序可以由RunWorkerCompleted事件来得到执行结果(由DoWork事件例程中的参数来设定)。若需要回报能力,则要先设定WorkerReportProgress属性为true,并且在DoWork的函式中利用ReportProgress()方法来传送状态数据,主线程部份由ProgressChanged事件来接取状态数据并更新用户接口。

 

若不想使用BackgroundWorker,或者是有多条线程要做,那么就需要自己处理Thread,包括侦测状态、数据交换与控制线程等。

 

考生必须要对于如何操作BackgroundWorker的流程要相当熟悉,以及如何设定它来满足需要(例如回报状态),另外,如何操作线程也是考试重点之一。

 

 

开发Windows Forms控件。

 

随着各类需求与功能的发展,开发人员会认为现有的控件功能不足,或是想要由现存的控件中发展更多的功能时,就需要开发自定义控件(Custom Controls),自定义控件可以从头开发(继承System.Windows.Forms.Control类别)、由现有的控件中开发(继承自想要利用的控件)或是将许多控件组合在一起,变成复合型控件(Composite Control),不论是哪一种控件,都可以放在Visual Studio的工具箱(Toolbox)中,应用程序的其他部份即可取用;若想要开发可以独立存在的控件,则可由Visual Studio产生自定义控件项目,开发出来的组件即可散布(以DLL型态组成)。

 

考生在这个主题中要注意的是自定义控件的发展方法、控件出现在工具箱的行为(例如图标),以及属性设定的方式(提示文字与设定方法等)。

 

 

设定与部署应用程序。

 

当应用程序开发与测试完成后,即可准备部署(Deployment),.NET Framework支持Windows Installer方式,或是xcopy部署方法,但若是商用或是要简化应用程序部署流程,可考虑使用Windows Installer部署,因为可以得到最大的安装程序主控权,除了可以读写系统资源(文件系统与Registry登录数据库)以外,还可以透过实作自定义动作(Custom Actions)来开发自己的安装流程(例如在安装时建立数据库或网站)。

 

但若是利用网络部署或是小型应用程序,用Windows Installer部署反而会变得较为麻烦,所以.NET Framework 2.0新增ClickOnce部署功能,可以让开发人员透过网络来部署应用程序,并且可以提供安全设定,以及自动更新的功能,但缺点就是无法存取系统资源。

 

考生需要知道这两种方法的差异、在给定的环境中使用的部署方式、ClickOnce的设定方法与程控方法等。

 

 

准备方法

准备70-526的方法,除了要收集数据外,就是累积写程序的经验,对Windows Forms程序的经验愈多,准备这一科就会愈轻松,尤其是针对.NET Framework 2.0的新功能,考生要多加注意。

 

书籍部份,目前中文书有不少是以Windows Forms为主题的初学书籍,但往往都不太够,可能还需要搭配.NET Framework SDK文件来查询,否则可能会有不足之处。微软官方有出版一本官方自学教材,专门为准备本科考试而撰写,国内有出版社将它翻译为中文版,到书局找找就会看的到,上网找也行。

 

若需要官方教育训练课程,目前微软有四堂课程,在E-learning上也有开:

 

Workshop 2546: Core Windows Forms Technologies with Microsoft Visual Studio 2005

Workshop 2547: Advanced Windows Forms Technologies with Microsoft Visual Studio 2005

Workshop 2541: Core Data Access with Microsoft Visual Studio 2005

Workshop 2542: Advanced Data Access with Microsoft Visual Studio 2005

国内的教育训练中心有开组合(套餐)型的课程,可径洽教育训练中心。

 

考试信息

考试代码:Exam 70-526

考试名称:TSMicrosoft .NET Framework 2.0 Windows-Based Client

题目数量:45

通过分数:700

posted @ 2009-06-14 19:39  木由水  阅读(256)  评论(0编辑  收藏  举报