我在VB.NET(VS2008)中有很长的功能,我想缩小它们。我知道#region
指令,但它们在函数内部不起作用。
我想知道是否有人知道visual studio 2008的任何插件允许我折叠if
语句,循环和try catch
语句。我已经为Visual Studio 2005找到了几个插件,但是Visual Studio 2008没有插件。
答案 0 :(得分:11)
您可能需要阅读Martin Fowler的书籍 Refactoring: Improving the Design of Existing Code ,以及 Code Complete: 2nd Edition 。
refactoring book http://ecx.images-amazon.com/images/I/21ZceZ5jBTL._SL160_PIsitb-sticker-arrow-dp,TopRight,12,-18_SH30_OU01_AA115_.jpg
如果您的函数和子程序很长,则意味着需要重构的工作中存在更大的复杂性。
<强>更新强>:
我刚刚完成了“叔叔”鲍勃·马丁的那本书 Clean Code ,我不得不说它属于“必读”类别中的其他两个。< / p>
答案 1 :(得分:3)
“我正在VB.net 2008中编写一些冗长的函数”== Code Smell
不要治疗症状,解决原因并对您的方法进行组件化。
答案 2 :(得分:2)
对许多人来说,地区是一种主观的东西。
我主动不喜欢隐藏意义的任何东西。如果您发现“正在编写冗长的函数”,请尝试将功能重构为单独的对象和方法。从长远来看,它使代码更易于理解和维护。
在地区隐藏代码是一个坏主意,IMO。
答案 3 :(得分:1)
好的,所以我终于找到了一个在子和函数中折叠代码的工具。它并不理想,因为你必须指定要折叠的区域,但它能够完成工作。 这块软件叫做smartoutline。一旦你通过破损的安装程序。
http://submain.com/products/smartoutline.aspx
安装程序在管理员权限方面存在一些问题,因此要安装它,您需要创建一个指向msi作为参数的Windows安装程序快捷方式,然后以管理员身份运行