RSS

Monthly Archives: 十二月 2008

《Visual Studio Tips》之感想

借MVP之名从微软那里借来了这本书,现在要交个作业(就是写个书评)。

这本书基本上和任何程序设计的概念、算法、语言都没有太大关系,是一本关于“工具”的书;然而和一般的使用说明书不同的是,这本书并非是完整的介绍Visual Studio的使用,而是分门别类地介绍了200多个关于如何更有效率地用好Visual Studio的技巧。古人说,工欲善其事,必先利其器,这本书正是这样一个目的。

书里面介绍的Visual Studio的内容基本上是基于VS2005的,当然在VS2008里基本上也都有这些内容,有些技巧在VS2003中也可以使用。不过有一点需要注意的是,这些技巧是基于英文版的VS的,中文版有个别内容有一些出入(主要是快捷键有些不同)。

本书的作者Sara Ford是VS这个产品组中的一名测试人员,因此对VS有比较深入的理解,这本书中的内容实际上是从她(没错,是“她”)的博客中整理出来的。书中除了这些技巧之外,在附录中还有一些关于VS的8g(比如为什么程序的名字不叫vs.exe或者visualstudio.exe而是devenv.exe)、作者关于软件测试的一些心得、作者的编程经历(里面居然还有任天堂的红白机……)。此外,作者还很“狡猾”地在整本书的最后(附录后面)写了第252个tip,要知道,就连封面上写的都是(251 Ways to Improve Your Productivity),作为完整看完整本书的“奖励”,嘿嘿……

书中关于vs的技巧大致划分为如下几个段落:

1、代码编辑器。这里面主要是关于Editor这个开发人员接触最多、也是作为IDE来说vs最核心的一部分内容。这部分是和我们日常code关系最为密切的。

2、高级编辑功能。依然是在围绕代码编辑器的介绍,比如关于选择、注释、格式化代码、打开文件、书签、智能标签、代码片段等内容。

3、搜索。这个也是在开发过程中使用很多的一个功能,对于分析其他人的代码有很大的帮助。

4、应用程序布局。包括了文档工作区、工具栏窗口、窗口布局、工具栏和上下文菜相关的一些技巧。

5、工具栏窗口相关的技巧。包括命令行窗口(Command Window)、输出窗口、工具箱、任务列表窗口、对象浏览器的技巧。

6、关于对话框的一些技巧。比如外部工具、搜索对话框、开始页(Start Page)的一些技巧。

7、关于解决方案(Solution)、工程(Project)和调试相关的技巧。

其实书中的很多技巧都是关于如何更高效的使用VS(通过快捷键)、如何通过设置来改变VS默认的一些行为的技巧,也有一些技巧对我来说是很有用的,能够真正使用到日常的开发中(有意思的是,当我把其中一些技巧告诉周围人的时候,对方说:“你才知道有这个功能?”,呵呵)。举几个印象比较深刻的例子:

1、循环剪贴板。其实这个功能在菜单里就能看到,不过可能很多写代码的人都不怎么看菜单吧,尤其是“编辑”菜单。用Ctrl + Shift + V就可以使用循环剪贴板。有点像是office里的那种,Ctrl + C的时候把内容复制到一个循环队列中,队列长度是20,也就是说循环剪贴版中可以存下最近20次的“复制”或“剪切”操作的内容,当然20次也足够用了……

2、Ctrl + I的快速搜索。同样在菜单里就有,同样之前没有关注过。不用任何对话框、工具栏就可以在当前打开的文件中做搜索,很有意思,建议大家自己试试。

3、在当前行的任意位置Ctrl + Enter在上一行插入空行(Ctrl + Shift + Enter在下一行插入空行)。这个看似很简单的功能,但是对于提高coding效率还是相当有用的一个技巧。比如一般当我写代码块的时候,都是写完一行(比如for、foreach、if或者函数名)->然后敲入一对完整的大括号->然后把光标往上移动一行->移动到行尾->按回车,现在这个操作一次就可以完成了。在整理代码的时候也很有用。

4、Ctrl + L剪切当前行、Ctrl + Shift + L删除当前行。其实我之前知道有这个功能,不过没记住快捷键……

上面这些都还只是第一章中第一节里面的内容,后面还有很多有用的、有意思的小东西。看完这本书之后,我觉得Visual Studio这个IDE真是博大精深,很多功能如果不是在这里面写出来,恐怕我一辈子都不知道居然vs还能这么用,留给我印象最深刻的就是工具栏上的那个搜索框:当输入一些文字之后,按回车,会在当前打开的文件中从当前光标位置向后搜索内容,并选中第一个搜到的内容(估计用过这个玩意儿的人都知道);输入一个数字行号,按Ctrl + G,就会跳转到这一行;输入工程中的一个文件名,按Ctrl + Shift + G,会打开这个文件;输入一些内容,按F1会打开帮助搜索这段内容;输入一个函数名、按F9,会在这个函数上加上断点;输入大于号,后面可以使用vs中的一些命令,比如File.OpenFile……

我不知道这本书会不会引进到中国甚至出中文版,不过我想如果你每天有超过2、3个小时的时间都是在和Visual Studio打交道的话,那么建议你去读一下这本书,即使你的英文不算太好,读起来也是很轻松愉快的。

 

Posted by on 2008 年 12 月 07 日 in 未分类

Leave a comment

Tags:

Live Services Jumpstart第二天

今天才有空继续写这个,之前出差了一周……

不过第二天可写的内容没有那么多了,主要是在讲Live Mesh(就是类似于基于网络的“我的电脑”)的应用和开发。

Live Mesh目前分成两个版本,公开版(www.mesh.com)和开发版(url忘了,似乎有个ctp什么的),开发版需要有专门的Key才能在上面做开发(于是讲课后每人发了俩key),每人5G的空间。

简单的操作和“我的电脑”很类似,新建文件夹、上传文件,目前似乎只支持图片的预览,其他格式的内容的查看似乎都不支持(包括纯文本)。其实这部分的功能主要还是各个设备之间的同步,当场演示了用智能手机拍了张照片,然后通过gprs网络自动同步到mesh上,然后也自动同步到电脑上,然后通过电脑修改之后再自动同步回mesh上。另一个作用就是文件共享和协作,可以邀请一个email地址或者live的账号来分享文件。

另外Mesh现在也支持一些应用程序,现在上面已经有一些简单的应用程序可以用,比如桌面贴、填字游戏之类的,当然也都可以支持共享和多人协同的操作。

关于开发部分,主要就是通过一个Resource Explorer可以观察到mesh里面的内容(包括联系人、mesh的文件夹和文件、应用程序等等),可以通过xml或者json的形式来返回结果。其实编程从底层上就是向一个url发送一个请求(GET或者PUT),然后返回一段xml来进行信息的查看、增加或者修改。当然,外面也包了一层API可以直接用。

从两天的培训来看,Live Services这套内容主要还是偏向个人应用(尤其是Mesh),可以一定程度上进行少数人的协同工作。当然,Live ID集成这套东西似乎还是比较有作为的。而且目前这些云端服务器都在美国,网速是一个很大的问题。

 

Posted by on 2008 年 12 月 07 日 in 未分类

Leave a comment

Tags: