Инструмент Python, который предлагает рефакторинги

Если я правильно понимаю, вы ищете все узлы типа Child, у которых нет исходящего ребра типа: PARENT. В этом случае в настоящее время я не вижу, как вы можете достичь этого с помощью подмножества OpenCypher у нас есть быстрое и простое решение: можно ввести новую функцию OUT_DEGREE, которая будет возвращать количество исходящих ребер из данного узла, тогда вы сможете фильтровать по OUT_DEGREE (n, "PARENT") = 0

10
задан Anonymous 24 April 2009 в 12:41
поделиться

4 ответа

Ознакомьтесь с ремонтником велосипедов http://bicyclerepair.sourceforge.net/

Что такое ремонтник велосипедов? Проект Bicycle Repair Man - это попытка создать функциональность браузера для Python. Он упакован в виде библиотеки, которую можно добавить в IDE и редакторы, чтобы обеспечить возможности рефакторинга. Привязки для Emacs и Vi включены в пакет.

Никогда не использовал его сам, но читал об этом. Похоже, что вы ищете.

2
ответ дан 4 December 2019 в 03:17
поделиться

Я не знаю, существует ли этот тип инструмента на каком-либо конкретном языке, хотя концепция упоминалась в книге рефакторинга Мартина Фаулера ( веб-ссылка ).

лучший из известных мне инструментов - цикломатическая сложность. В этой статье реализован счетчик цикломатической сложности для python.

Другой простой метрикой для цели является длина метода / функции, количество атрибутов объектов / классов и количество параметров для функций, если я помню, их уже подсчитал pylint.

1
ответ дан 4 December 2019 в 03:17
поделиться

NetBeans имеет версию с ранним доступом, которая поддерживает Python, и это довольно приятно. У меня есть несколько основных инструментов рефакторинга, которые я считаю полезными. В качестве дополнительного бонуса он работает в Windows, Linux, Mac OS X и Solaris.

Проверьте это по адресу: http://www.netbeans.org/features/python/

0
ответ дан 4 December 2019 в 03:17
поделиться

О, Забудьте о своем инструменте, вместо этого используйте TDD и хорошую книгу вроде рефакторинга шаблонов проектирования Кериевского. Проблема в том, что рефакторинг - это способ улучшить ваш код и дизайн, но только вы можете знать, чего хотите достичь, ни один инструмент рефакторинга не может сделать это за вас.

Я считаю, что лучший способ научиться рефакторингу - это изучить примеры, чтобы не следовать некоторым глупым / простым инструментам, потому что они не научат вас сложному рефакторингу и не скажут, есть ли у вас рефакторинг, который хорошо сочетается с вашим кодом.

PS Прочтите Фаулер «Рефакторинг» и Кериевский «Рефакторинг для проектирования При изучении рефакторинга необходимо прочитать эти книги. И они упоминают простой способ проверить, нужен ли рефакторинг (запах). Бек «Разработка через тестирование на примере» - хорошая книга для начала. А в Python есть PyUnit для TDD.

1
ответ дан 4 December 2019 в 03:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: