Здравствуйте, maloi_alex, Вы писали:
_>Нет ли инструментов под .net, чтобы код можно было править код в декларативном стиле, например:
_> where t.IsAssignableFrom(typeof(BaseType)) && (!t.IsPublic || !t.IsSealed); http://www.ndepend.com/
Рефакторинг сам не сделает, но найти все классы по условию поможет: www.ndepend.com/Features.aspx#CQL
from m in Application.Methods
where m.NbLinesOfCode > 30 && m.IsPublic
select m
А имея список провести рефакторинг можно и вручную (или с помощью решарпера).
Здравствуйте, maloi_alex, Вы писали:
_>Нет ли инструментов под .net, чтобы код можно было править код в декларативном стиле, например:
В плане функционала (PM по AST и выполнение преобразований над его узлами) в NRefactory есть нечто подобное:
var pattern = new VariableDeclarationStatement {
Type = new AnyNode("type"),
Variables = {
new VariableInitializer {
Name = Pattern.AnyString,
Initializer = new ObjectCreateExpression {
Type = new Backreference("type"),
Arguments = { new Repeat(new AnyNode()) }
}
}
}};
Match m = pattern.Match(someNode);
if (m.Success) {
// Replace redundant type name with 'var'
m.Get<AstType>("type").Single().ReplaceWith(new SimpleType("var"));
}
Здравствуйте, Aikin, Вы писали:
A>http://www.ndepend.com/ A>Рефакторинг сам не сделает, но найти все классы по условию поможет: www.ndepend.com/Features.aspx#CQL
Ещё можно глянуть nitriq. Возможностей в плане визуализации поменьше, зато он бесплатен.