【问题标题】:How to write code in Visual Studio faster? [closed]如何更快地在 Visual Studio 中编写代码? [关闭]
【发布时间】:2011-01-09 11:13:24
【问题描述】:

每当我开始一个新的软件项目时,我都会在开始时花大量时间绘制类图和其他流程图来规划我如何看待应用程序的工作方式。这部分只需要大量的思考和测试。但是到了某个时刻,当一切都计划好时,我不需要再考虑太多了,我只需要编写代码即可。

IntelliSense 绝对是天赐之物,因为它能够通过按 TAB 键自动生成代码。但现在我想知道:人们使用哪些其他技术或工具来尽快将脑海中的代码显示在屏幕上?

【问题讨论】:

  • 比闪电还快
  • 不要复制更多/过去更多:这是您编程错误的信号。面向复制/过去的编程很糟糕。如果你通过复制/粘贴比编写和使用 IDE 建议更快,那么你的速度不够快,也没有编写足够的代码。
  • 我只是在开玩笑,伙计们。严重地。 :)
  • 在 Firefox 中关闭 SO 选项卡有助于我更快地编写代码...
  • 关闭 Firefox 让一切变得更快。

标签: c# .net visual-studio-2008 performance


【解决方案1】:

我从 Resharper 中获得了很多生产力 - 如果您了解所有功能和键盘快捷键,它会特别有用

【讨论】:

  • ReSharper 是排名第一的生产力助推器!
  • 虽然有其他产品可用(例如 CodeRush & Resharper!)。我并不比另一个更好,但有些人更喜欢一个。课程用马。 :)
  • 世界被分成了各种各样的人:讨厌 Resharper 的人和没有 Resharper 就活不下去的人……我与第一类人有关..
  • @opc 我会说世界分为实用主义者和教条主义者,这样你也可以覆盖非程序员
【解决方案2】:
  1. 正如其他人所提到的,使用 Resharper 或同等产品。

  2. 了解键盘快捷键并使用它们。几乎您在 VS 中可以执行的每个操作都有一个等效的键盘,您知道的操作越多,您花在菜单上的时间就越少。这对于使用 Resharper 来说同样重要。

  3. 注意你必须等待的任何事情。你在等待构建完成吗?从您的解决方案中删除您未处理的项目并改为引用它们的程序集。如果需要,您可以随时将它们添加回来。你在等待单元测试运行吗?也许您可以将测试分成每天运行几次的一组和每次签到前运行的一组。每次测试时,您是否都在等待应用程序启动?也许您可以定义一个构建配置,排除启动代码,这些代码的功能与您现在正在处理的工作无关。

  4. 获取固态驱动器并将您的操作系统和开发工具放在上面。在您的机器中添加更多内存。

  5. 一个简单的提示,用于处理您复制和粘贴的单调乏味的代码:不要复制和粘贴代码。我确信在某些情况下它是复制和粘贴代码是可接受的,甚至是必要的,但如果它是您日常工作流程的一部分,您需要停止正在做的事情并修复它。如果不止一个人建议,我什至不会提及。

【讨论】:

  • +1 用于删除项目。构建时间可能是 VS 中的主要障碍。
  • 正如陀思妥耶夫斯基所说,人是可以适应任何事情的动物。这可能是一种巨大的力量,但这也意味着我们经常忘记,甚至可以改变困扰我们的事情。
【解决方案3】:

我不想打开整个 CodeRush & Refactor! / Resharper 一罐蠕虫,但是像其中之一这样的高质量重构工具可能会大有帮助。我一直在使用 CodeRush 和 Refactor!一年多一点,现在编写健壮且可维护的代码所需的时间比几年前要短得多。

当然,有一个学习曲线,但几周后的好处是巨大的。

【讨论】:

  • 不幸的是圣战,我是一个实用主义者,我会对大家说:你自己试试 resharper 和 coderush 一个星期,然后用最适合你的那个... 两个都不用是唯一错误的选择
  • 我的观点完全正确。我尝试了 Resharper,发现它不适合我,但我知道那里有很多快乐的用户。如果产品没有好处,两家公司都无法生存。 :)
  • 我两个一起用。通过一些调整,他们可以很好地配合。如果您同时使用了这两种方法,您就会知道存在一些重叠,但每种的格式塔是完全不同的,它们相互补充得很好。
【解决方案4】:

让您的环境响应更快。

缓慢的 pc、IDE、构建、重复性任务可能会严重影响速度。


每一件小事都很重要。甚至在控制面板=>键盘属性中增加Repeat rate

【讨论】:

  • 重复率+1。这是我必须开始在新计算机上工作时做的第一件事 - 最大化重复率,并将重复延迟设置为最小。
  • 我发现速度快的硬盘在这里发挥最大的作用
  • 最近升级了我的开发笔记本电脑以使用 runco​​re 64g SSD。 200/100 读/写让一切变得更快!
  • 你们输入了多少个重复字符?
  • @notJim 它的滚动速度明显更快
【解决方案5】:

您可以在 Enterprise Architect 等建模工具中绘制您的类/序列图,然后为您生成代码。

【讨论】:

  • 这样可以省去很多小时的繁琐打字,它甚至会为你生成骨架方法。它使 UML 更加有用,因为您还可以在更改代码时链接您的代码/UML 含义,该工具可以更新您的 UML 以匹配,并且 UML 不会像您的文档的其余部分那样过期。跨度>
【解决方案6】:

我不想成为提出这个问题的人,而且我不是 Linux 粉丝,但几个月前我尝试了一个名为 ViEmu 的插件。我至少花了一个月的时间才恢复到平时的工作效率,因为学习所有命令以及如何将它们链接起来是一个很大的问题,但是现在,我在重构方面轻松快了 5 到 10 倍。

这有点难以解释,但是当您遇到看起来很尴尬且重复的文本编辑工作时,您会从中获得最大的工作量,..假设您有 20 行代码需要删除变量名的中间驼峰大小写单词。就是这种东西。

ViEmu 的链接在这里 - http://www.viemu.com/

HTH

【讨论】:

  • 我喜欢 ViEmu。在 Visual Studio 中拥有命令/编辑模式加快了我的编程速度。
【解决方案7】:

不幸的是,这只是智能感知,尽管我确实倾向于重新绑定一些键盘快捷键来提供帮助。上下文菜单(我的键盘没有上下文菜单按钮)是我最常用于添加引用等的菜单之一。

不久前,我确实读到过关于游戏玩家的“神经头带”。它的设计目的是让他们可以思考“前进”和“开火”,而不是按 W + Mouse1,并声称可以增加反应时间。我怀疑它是否可以训练得足够多,但是如果可以使用这样的技术,那么您认为“实现基类 Foo 并添加方法 Bar()”并且代码是在 VS 中生成的,那将是惊人的 :) 可悲的是有点远,我可以想象“咖啡”是太多损坏构建的结果......

【讨论】:

    【解决方案8】:

    好的工具有很大帮助。我特别喜欢Visual Assist Xhttp://www.wholetomato.com/

    【讨论】:

      【解决方案9】:

      您是否考虑过为您经常做的事情创建和使用代码 sn-ps?这些可以节省实时时间,因为您只需将它们直接转储并可以轻松重构其中使用的变量。

      【讨论】:

        【解决方案10】:

        好吧,毫无疑问,我是个怪人,但对于桌面应用程序(不是网络),这就是我的工作。我认为几乎所有应用程序都只是一个美化的编辑器。也就是说,它有一个需要持久化的数据结构,以及一个让用户将信息放入该数据结构并从中取出的 UI。

        对于数据结构,保持简单,简单,简单。我认为它只是一个信息存储库,尽可能少的冗余。我不想构建为了成为底层数据的可见表现而存在的数据结构,例如树控件等,因为那样需要与底层数据保持一致,并且您会进入所有如何保持冗余数据一致的问题。 (例如:对于图形,不要build它,draw它。)如果我无法避免创建冗余数据结构,我会尽可能远离通知样式试图保持冗余数据结构紧密一致的编程。许多错误列表和性能问题都由此产生。相反,我更喜欢松散耦合,其中可以容忍一定程度的不一致,并由不时运行以传播更改的进程进行管理。

        对于 UI,我非常相信 OOP 和 MVC 风格的 UI 编码,直到 1986 年我发现this。现在我被宠坏了,我可以在很短的时间内编写复杂的 UI通过通常的控制事件处理风格,随着需求的变化,它们很容易修改。但到目前为止,我所在的公司可能只有 3 个人在使用它,因为它绝对不是主流。

        【讨论】:

          【解决方案11】:

          在我看来,我看到了两件事:

          1. 您没有全键盘。我不建议您购买足够的新键盘。
          2. 您可以使用模板来简化它。我认为在你开始你的项目之前,你必须做很多编程。如果您要使用模板,您可以制作一个包含所有异常处理程序、.NET 引用等的模板。然后,当您想编写代码时,您只需打开模板,编辑命名空间(可能是自动的),一切顺利。

          【讨论】:

            【解决方案12】:

            你可以试试Resharper

            其他选项 - 您可以尝试 Telerik 的 Just Code

            【讨论】:

              【解决方案13】:

              我学习了dvorak keyboard layout,这对于英语来说要快得多,而对于编程来说要快一点。我花了三个月的时间才恢复到原来的 qwerty 速度,但我继续进步。从长远来看,我认为它为我节省了很多时间。

              【讨论】:

                【解决方案14】:

                除了 Resharper,我还发现 Hawkeye 为我节省了大量时间来跟踪特定小部件的源代码,或者实时试用属性及其视觉效果。强烈推荐。

                它有点像 .NET 富客户端的 FireBug。

                【讨论】:

                  【解决方案15】:

                  阅读 Zain Naboulsi 的优秀 "Coding Faster: Visual Studio Tips & Tricks"

                  【讨论】:

                    猜你喜欢
                    • 2011-06-10
                    • 1970-01-01
                    • 2016-03-08
                    • 2011-10-14
                    • 1970-01-01
                    • 2011-05-28
                    • 2021-05-10
                    • 1970-01-01
                    • 1970-01-01
                    相关资源
                    最近更新 更多