Форум сайта python.su
Создал одиночный Учебный проект, в котором я собираюсь сделать динамический график, напоминающий тот, что имеется в Диспетчере задач Windows, но с дополнительными возможностями. Например, с паузой, прокруткой (просмотр истории), масштабированием и т.д.
Цель: изучить Python, wxPython, возможно, Tkinter и закрепить знание ООП. Наиболее важным для меня является научиться писать простой для восприятия код; он должен быть минимально зависимым от конкретного GUI, не содержать дублирования. Важным является изучение рефакторинга и юнит-тестирования.
То есть целью является не продукт, а процесс. Я знаю, что есть альтернативные проекты с графиками (например, тот что входит в wxPython) и буду посматривать на них. Пока я создал “резиновый график”, с легендами и сеткой. Начат ввод масштабирования.
Мой проект находится по адресу:
http://code.google.com/p/dynamic-plot/
Код:
http://dynamic-plot.googlecode.com/svn/trunk/
Черновик ТЗ:
http://dynamic-plot.googlecode.com/files/TZ_dynamic_plot.pdf
Планирую изменять код как можно чаще и выкладывать изменения здесь (вроде бы это не противоречит правилам).
Хорошо было бы, если бы нашлись зрители-критики, которые будут говорить об ошибках, нечитаемости, дублировании и т.д.
Офлайн
xFin = self.rectLeft + self.rectWidth
Офлайн
FerromanПочитайте труды великого диктатора, на самом деле соблюдение стиля принято и очень облегчит работу людям, которые будут читать ваш код и, может, совместно с вами разрабатывать проект: http://www.python.org/dev/peps/pep-0008/
Методы вроде как положено называть с маленькой буквы. По сути сейчас сказать трудно - мало всего пока.
Отредактировано (Дек. 11, 2009 15:10:43)
Офлайн
Вообще-то диктатор у нас “великодушный”.
Офлайн
FerromanДублирование? Удалю. Но пока не решил как сделать лучше. Наверное сделаю переменной класса, а потом класс порву на части.xFin = self.rectLeft + self.rectWidth
FerromanНапример, в wxPython они начинаются с большой. Понятно, что это связано с тем, что хотели сохранить какую-то совместимость с C++. Но всё же это прецедент. И так как я собираюсь потом все переписать на C++, то не думаю, что сильно грешу. Тут мне главнее соблюдать единообразие в своем стиле.
Методы вроде как положено называть с маленькой буквы.
FerromanНо то малое, что уже есть, хоть как-то поддается прочтению (если закрыть глаза на большие буквы функций)?
По сути сейчас сказать трудно - мало всего пока.
Офлайн
Дублирование? Удалю. Но пока не решил как сделать лучше. Наверное сделаю переменной класса, а потом класс порву на части.В смысле “переменной класса”?
Например, в wxPython они начинаются с большой. Понятно, что это связано с тем, что хотели сохранить какую-то совместимость с C++. Но всё же это прецедент.Эти “прецеденты” описаны отдельно в PEP8. Рекомендую ознакомится.
Офлайн
Изменил стиль кода для функций, как сказано в PEP8.
Офлайн