Questions tagged «refactoring»

重构是一种用于重组现有代码,更改其内部结构而不更改其外部行为的严格技术。关于堆栈重构的开放式问题对于Stack Overflow来说是没有意义的,但是它们可能适合代码审查。


20
如何在Eclipse中更改软件包名称?
在Eclipse中,我有一个简单的Java项目,其中包含一个名为(默认程序包)的程序包,并且在该程序包中有一个类。 我想将此软件包重命名为:com.myCompany.executable 我尝试选择(默认程序包)--->右键单击--->重构,但是现在我只看到一个名为:推断通用类型参数的声音,但看不到更改程序包名称的可能性。 为什么?我要在Eclipse中做什么以更改软件包的名称?

8
如何使数据绑定类型安全并支持重构?
当我希望将控件绑定到对象的属性时,必须提供属性名称作为字符串。这不是很好,因为: 如果该属性被删除或重命名,那么我不会收到编译器警告。 如果使用重构工具重命名该属性,则很可能不会更新数据绑定。 如果属性的类型错误,例如将整数绑定到日期选择器,那么直到运行时我都不会出错。 是否有一种设计模式可以解决此问题,但仍易于使用数据绑定? (这是WinForms,ASP.NET和WPF以及其他系统中的问题。) 现在,我发现“ C#中的nameof()运算符的变通办法:typesafe数据绑定”也为解决方案提供了良好的起点。 如果您愿意在编译代码后使用后处理器,那么NotifyPropertyWeaver值得一看。 当绑定是用XML而不是C#完成时,有人知道WPF的一种好的解决方案吗?



4
猫鼬-创建文档(如果不存在),否则,在两种情况下均会更新并返回文档
我正在寻找一种将代码的一部分重构为更短,更简单的方法,但是我对Mongoose不太了解,我不确定该如何进行。 我正在尝试检查集合中是否存在文档,如果不存在,则创建它。如果确实存在,我需要对其进行更新。无论哪种情况,我都需要随后访问文档的内容。 到目前为止,我设法做到的是查询集合中的特定文档,如果找不到,则创建一个新文档。如果找到它,我将对其进行更新(当前使用日期作为虚拟数据)。从那里,我可以从我的初始find操作中访问找到的文档,也可以访问新保存的文档,并且此方法有效,但是必须有更好的方法来完成我要执行的操作。 这是我的工作代码,没有其他功能。 var query = Model.find({ /* query */ }).lean().limit(1); // Find the document query.exec(function(error, result) { if (error) { throw error; } // If the document doesn't exist if (!result.length) { // Create a new one var model = new Model(); //use the defaults in the schema …

11
使用C ++ 11进行重构
鉴于c ++提供了许多程序员的新工具集,其目的是简化代码,表达性,提高效率,浏览旧代码并进行调整(有些毫无意义,有些成功)以实现其目标。在尝试不花太多时间从事此类工作并且仅进行非侵入性且自成一体的更改时,最佳实践是什么? 让我删掉显而易见的内容: 使用auto运行基于迭代器的循环: for (std::vector<foo>::const_iterator it(lala.begin()), ite(lala.end()); it != ite; ++it); // becomes for (auto it(lala.cbegin()), ite(lala.cend()); it != ite; ++it); 将tie用于仅产生C样式代码行的多个分配(如何一次将多个值分配给一个结构?) a = 1; b = 2; c = 3; d = 4; e = 5; // becomes std::tie(a, b, c, d, e) = std::make_tuple(1, 2, 3, 4, …
70 c++  c++11  refactoring 

7
您为Python使用哪些重构工具?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 1年前关闭。 改善这个问题 我有一堆要重命名的类。其中一些名称较小,并且该名称在其他类名称中重复使用,我不希望该名称更改。其中大多数都存在于Python代码中,但是我们也有一些引用类名的XML代码。 简单的搜索和替换只能使我到目前为止。就我而言,我想将AdminAction重命名为AdminActionPlug,将AdminActionLogger重命名为AdminActionLoggerPlug,因此第一个的搜索和替换也将错误地命中第二个。 有没有人有使用Python重构工具的经验?如果他们还可以修复XML文档中的类名,则有加分。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.