Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Общие вопросы > Зацените программу


Автор: aspolyakov 26.1.2009, 07:47
Хеллоу! Я хотел бы услышать комменты к своей софтине: http://sourceforge.net/projects/mydbf2mysql/
Любые, и по стилю, и рекомендации, советы.

Автор: alex_smirnov 26.1.2009, 09:37
Не могу заценить. Не являюсь пользователем dbf формата.

Но по коду: блин :(, 
 * ограничение на длинну строки в 79 символов, где?
 * заворачивание минимальных кусков кода в try except, это явно не про вас smile
 * окружение мат. знаков пробелами
 * if (current[0] == right_current): , что тут лишнее? и так по всему коду
 *- метод run c двенадцатимерной вложенностью вообще убил
 * код после класса, для меня сейчас представил манную кашу на завтрак ;)
 * а ещё cp1251... 
 * ...

Из всех тудух нужно на первое место поставить: # - To refactor and optimize some code.

Не то, чтобы оптимизировать, а переписать с минимальной вложенностью и максимальной ясностью.

Надо помнить Less kode = less bugs, и http://en.wikipedia.org/wiki/KISS_principle

Желаю больших успехов! smile 

ЗЫ: если хочется делать действительно открытое и качественное ПО о качестве кода надо думать постоянно, кстати, и о документации тоже.

Автор: aspolyakov 26.1.2009, 10:06
Цитата

* if (current[0] == right_current): , что тут лишнее? и так по всему коду

Что там лишнее? Пробел перед скобкой?
Как надо было оформить код после класса?

Автор: alex_smirnov 26.1.2009, 11:25
Лишние круглые скобки вокруг логического выражения.

Код после класса, который подразумевает под собой main лучше оформлять так:

Код

if __name__ == '__main__':
    #main block class

Автор: aspolyakov 29.1.2009, 20:04
поправил, пересмотрел итд. Гляньте снова(последний релиз)
https://sourceforge.net/project/showfiles.php?group_id=236791&package_id=287688&release_id=657118

Автор: alex_smirnov 2.2.2009, 20:51
Ну что тут скажешь... вложенность кода уменьшилась, теперь не 12, а 9-10 (как смог, посчитал). Легче не стало.
Ну как бы main был выделен, но дальше как был монолитный трудночитаемый код, так и остался. 

Да, немного поправлена пунктуации и кодинг стайл, но этого маловато будет.

Следующий шаг к улучшению (даже если что-то не работает ;)), это выделение сущностей. 
Попробуйте всё это невероятно линейное чудо с ямами разделить на функции или даже классы. Подсказка, начинать с ям.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)