在VS 08和C#中提高工作效率的最快方法

时间:2008-10-02 07:16:29

标签: c# visual-studio visual-studio-2008 development-environment

我最近使用Komodo Edit和其他更简单的编辑器使用Python,但现在我正在做一个使用VS 08在C#中完成的项目。我很感激有关如何在该平台上快速提高效率的任何提示尽可能。

11 个答案:

答案 0 :(得分:11)

至于熟练使用C#,我强烈推荐Programming C#C# in Depth

对于Visual Studio,开始在IDE中闲逛,玩转,熟悉它。从简单的项目开始,探索所有不同的方面。了解如何optimize Visual Studio并熟悉一些优秀的keyboard shortcuts / hidden features IDE。

至少一次完成以下每项操作:

<强>项目:

  • 创建一个简单的控制台应用程序(例如hello world)
  • 创建一个类库(托管的.dll)并从您创建的其他应用程序中使用它
  • 创建一个简单的Windows应用程序
  • 创建一个简单的asp.net Web应用程序

<强>调试:

  • 调试命令行应用
  • 熟悉:断点,本地人和观察窗口,跳过,步入,退出,继续,停止调试
  • 创建一个使用类库中的函数的命令行应用程序。存储库的DLL和符号文件(.pdb)但删除源代码,在应用程序进入库时进行调试
  • 调试到网络服务
  • 了解如何使用ILDasm和ILAsm

命令行:

  • 熟悉Visual Studio命令行环境
  • 仅使用命令行构建
  • 使用devenv.exe / debugexe从命令行进行调试
  • 从命令行使用ILDasm / ILAsm将一个简单的应用程序反汇编为.IL,将其重新组合成一个不同命名的文件,测试看它是否仍然有用

<强>测试

  • 创建单元测试(右键单击方法,选择创建测试的选项)
  • 了解如何:运行所有单元测试,在调试器下运行所有​​单元测试,重新运行失败的单元测试,查看测试失败的详细信息,运行单元测试的子集
  • 了解如何收集测试的代码覆盖率统计信息

来源控制:

  • 了解如何在使用VS
  • 进行开发时与您选择的源代码管理系统进行交互

重构等:

  • 熟悉所有内置重构(尤其是重命名和提取方法)
  • 使用“转到定义”
  • 使用“查找所有参考文献”
  • 使用“在文件中查找”(ctrl-shift-F)

IDE&amp;键盘快捷键:

  • 了解如何将设计师很好地用于网络和winforms
  • 熟悉Solution Explorer窗口
  • 尝试不同的窗口布局,直到找到一个你喜欢的窗口布局,稍后继续试验,看看它是否仍然是最佳选择
  • 了解intellisense的细节,尽可能地利用它
  • 了解您所做的一切的键盘快捷键

答案 1 :(得分:8)

我个人会首先集中精力学习C#和.NET的核心部分。对我来说,这意味着编写控制台应用程序(而不是Windows窗体)来试验语言和IO等重要方面。如果您对基础感到满意,请转到您的项目所需的“外围”技术(WinForms,WPF,ASP.NET,WCF等)。

就书籍而言,我可以同时推荐C# 3.0 in a NutshellAccelerated C# 2008。链接是我对书籍的评论。两者都涵盖语言+核心库。  我不会太担心LINQ的开头 - 在你处理LINQ之前,对语言的其余部分,尤其是代理和泛型,感到很自在。那时,在开始使用LINQ to SQL或Entity Framework之前,我彻底建议使用LINQ to Objects一段时间。 (另一方面,如果你需要使用XML,我会直接使用LINQ to XML - 它是一个完整的XML API,而不仅仅是一个LINQ提供者。它比普通的DOM API好得多。)

答案 2 :(得分:3)

选择您过去完成的Python项目并手动将其转换为C#。这就是我学习目前所知的每种语言的方法(x86汇编除外)。

考虑使用IronPython来弥补差距 - 您可以通过IronPython引用.NET程序集,以及创建.NET程序集以引用C#。

此外,非常远那些在21天内学习C#!书籍......他们几乎从不辜负炒作,而且通常比好。

答案 3 :(得分:3)

  

我很感激任何有关如何使用的提示   在那个平台上获得高效率   尽快。

实践经验我的朋友。 启动尽快使用 尽快

一些明显的建议是:

  • 为频繁操作创建快捷方式\宏\模板。 强制自己使用快捷方式而不是点击菜单
  • 安装ReSharper - 将为您提供1000%的生产力提升(如果您有几块钱可以购买)

并且不时犹豫地查看manual:)

答案 4 :(得分:1)

获得一本优秀的书并开始阅读。我有Pro C# 2008 and the .NET 3.5 Platform

因为你有一个项目可以帮助你做很多事情。

答案 5 :(得分:1)

我看看从Python到C#的转变是进化阶梯的一步。 期待更冗长的体验(例如变量声明和类属性)。

密切注意IronPython - 它将帮助您使用熟悉的语言来感受.NET。 Python的动态特性使得检查.NET行为比在C#中检查想法快得多。您可以使用IronPython直接从Visual Studio使用IronPython Studio

答案 6 :(得分:1)

Python到C#转换

您通常会通过将其功能与您已知的语言进行比较来学习下一语言。由于您熟悉Python,请阅读一些Python / C#比较,如"A Python Programmmer's Perspective on C#""Does C# 3.0 Beat Dynamic Languages at their Own Game?"。 C#3.5和Python之间的差异并不大。

答案 7 :(得分:0)

做小型迷你项目。我头脑中的一些。

1)Hello world 2)控制台
3)GUI     设计
4)玩具项目

他们会比阅读教程更快地提高你的速度。拿一杯啤酒玩得开心。

答案 8 :(得分:0)

微软有一个很好的学习平台:

http://msdn.microsoft.com/en-us/vcsharp/aa336766.aspx

我建议您查看“我如何”视频系列。

答案 9 :(得分:0)

我认为这取决于一些事情。例如,你使用键盘而不是鼠标吗?如果是这样,我会学习VS快捷方式。你知道C#吗?读一些书。我知道这很模糊,但这是一个有点模糊的问题。

练习,练习,练习,获得经验,提高工作效率。

答案 10 :(得分:0)

对于每一种工具,系统,语言或其他任何东西,最快捷的方式是(至少对我而言)了解背景而不是从hello world开始,然后从一个命令绊倒到下一个命令你认为你需要。

所以买一本好书(例如微软出版社)或者去微软MSDN和Technet,尽可能多地阅读背景资料。详细的东西(书或互联网)可以稍后再提及。

此外 - 为了提高工作效率 - 加入邮件列表,IRC,使用组等,以使用相同的工具,系统,语言等来获取有关他人日常问题的知识。

然后 - 一两个星期后 - 开始编程。

我知道,这不是开始使用新语言时想要做的事情。但对我来说,这个应用程序效果最好,是最近几年。