探索Visual Studio 2012与Windows 8应用开发

Visual Studio 2012的截图如下所示:

首先可以注意到的是标题栏中添加了一个快速启动区域。这可以作为一个搜索框使用,它会扫描菜单和打开的文件以查找输入的文本。

要查看一些额外的功能,需要创建/打开一个项目。VS2012的一个新特性是预览窗口/标签页。

下面是一个截图,展示了所指的新特性。

用红色矩形框出了新特性。如果在解决方案资源管理器中选择了一个文件,预览标签页会出现在用于打开文档的标签控制的右侧。如果按下“保持打开”按钮,文件将正常打开。这个想法是这个预览功能只打开文件进行阅读,进行预览,如果开始在文件中进行更改,它将正常打开。这在与TFS或其他源代码控制一起工作时非常有用。

接下来出现的有趣的事情是“刷新Windows应用”按钮。如果正在调试一个应用程序,并且在JavaScript或HTML文件中进行了更改,不需要停止调试,重建应用程序并重新运行应用程序;在VS2012中,只需要按下这个按钮,模拟器或本地机器上的一切都会刷新。用红色矩形框出了按钮和它的工具提示。

VS2012有很多新特性。认为最好的一个,也是网络开发者需要和请求的,是为JavaScript提供了完整的Intellisense支持,以及JavaScript函数的“转到”功能。在下面的链接中,所有Visual Studio 2012的新特性都被解释和展示了。

创建第一个Windows 8应用程序

通过这个链接安装VS2012,它将安装一些应用程序模板,用于开发Windows 8应用程序。所以,要创建一个新的Windows 8应用程序,只需从菜单中选择“文件”->“新建项目”,或者按“CTRL + SHIFT + N”,“新建项目”窗口就会打开。

在左侧的树形结构中选择“JavaScript”和“Windows Metro风格”。最初,创建了一个空白应用程序,因为想一步一步地进行,并看看事情是如何融合在一起的。在指定了项目的名称,设置了位置并按下“确定”按钮后,就创建了一个空白应用程序。但是让暂时停下来,谈谈将要开发的项目。

想到了一个非常简单的项目,想象自己是一个房地产经纪人(谁知道一点编程),需要一个应用程序来运行全新的操作系统Windows 8。这个应用程序会有图片和一些关于想出售的房地产的详细信息。

一开始,会制作一个静态应用程序,并硬编码一切。考虑到金融危机还没有结束,房地产市场在这些日子里也不是一个动态的市场;没有必要进行大型应用程序架构和数据库集成等。目前,试图遵循KISS方法(保持简单,愚蠢)。正如看到的,项目的目的已经定义好了,让开始工作。

将项目命名为HouseRental,因为只卖房子。创建了空白项目后,有了这个项目结构。

有3个重要的文件需要提及:

  • default.css
  • default.js
  • default.html

这些文件的名称相当直观,default.css将包含为应用程序定义的默认样式,将看到在案例中,它包含了一些定义的空样式。default.html是一个HTML5文件,HTML标签将被添加到其中,这与default.css文件一起将创建应用程序的用户界面。default.js文件更有趣,这里是它的内容:

// 这是对空白模板的介绍,请参见以下文档: // http://go.microsoft.com/fwlink/?LinkId=232509 (function () { "use strict"; var app = WinJS.Application; var activation = Windows.ApplicationModel.Activation; WinJS.strictProcessing(); app.onactivated = function (args) { if (args.detail.kind === activation.ActivationKind.launch) { if (args.detail.previousExecutionState !== activation.ApplicationExecutionState.terminated) { // TODO: 这个应用程序是新启动的。在这里初始化应用程序。 } else { // TODO: 这个应用程序已从挂起状态重新激活。 // 恢复应用程序状态。 } args.setPromise(WinJS.UI.processAll()); } }; app.oncheckpoint = function (args) { // TODO: 这个应用程序即将挂起。在这里保存任何需要跨挂起保持的状态。 // 可能会使用WinJS.Application.sessionState对象,它会自动保存和恢复跨挂起。 // 如果需要在应用程序挂起之前完成一个异步操作,请调用args.setPromise()。 }; app.start(); })();

这是VS生成的,没有进行任何修改。与其他JavaScript文件不同的是,“use strict”字符串。这个字符串会激活严格模式。通过切换到严格模式,当试图在函数内部创建一个全局JavaScript变量时,会遇到错误。使用它还有其他好处,ECMAScript语言规范给出了更多细节。使用严格模式不是必须的,但专家们说使用它是一个好习惯。

在“use strict”部分之后,创建了局部变量,为onactivated和oncheckpoint事件做了2个订阅,最后调用了app.start()。整个逻辑都在一个自执行函数中。文件default.js连同default.css被default.html引用。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485