Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

oop-design-frage

0 views
Skip to first unread message

Jan-Herbert Damm

unread,
Nov 30, 2009, 6:27:02 AM11/30/09
to
Hallo zusammen,

ich habe meinen autodidaktischen Python-Grundkurs abgeschlossen und möchte
mich jetzt einem konkreten Projekt zuwenden. Ich möchte einen Code verbessern,
der folgende Aufgabe hat:

Es werden Daten eines Gerätes ausgewertet, die Licht, (Lichtverschmutzung)
messen. Diese Daten werden bisher als eine in eine Instanz einer Klasse
gespeichert und dann mit pylab (matplotlib) geplottet. Dazu gibt es rund ein
Dutzend Funktionen, die die Darstellung verfeinern:

--> plotte das gemessene licht auf einer zeitachse
--> plotte das licht des mondes zusätzlich
--> plotte die summe natürlichen Lichtes
etc...

Bevor die Daten geplottet werden, muss eine Logik ermitteln, welches Format die
Datenfiles haben (es sind semikolon-separierte csv-files) und die Daten müssen
anhand von Kalibrationsdaten umgerechnet werden.

Selbst mit meiner geringen Programmiererfahrung, erkenne ich, daß der
bisherige Code schlecht organisiert ist. Die Formaterkennungslogik wird zigmal
wiederholt, und das Klassenkonzept ist wenig logisch und unpraktisch.

Meine Frage:

Kennt jemand eine frei zugängliche Software, die etwas ähnliches
bewerkstelligt, die gut geschrieben ist, und die ich studieren könnte, um mein
Vorhaben voranzutreiben?

Gerne versuche ich, diese Geschichte bei Bedarf konkreter zu beschreiben.

Grüße von der Elbe

jan

Thomas Lehmann

unread,
Dec 20, 2009, 12:32:55 PM12/20/09
to
>
> Bevor die Daten geplottet werden, muss eine Logik ermitteln, welches Format die
> Datenfiles haben (es sind semikolon-separierte csv-files) und die Daten müssen
> anhand von Kalibrationsdaten umgerechnet werden.
>
> Selbst mit meiner geringen Programmiererfahrung, erkenne ich, daß der
> bisherige Code schlecht organisiert ist. Die Formaterkennungslogik wird zigmal
> wiederholt, und das Klassenkonzept ist wenig logisch und unpraktisch.
>
> Meine Frage:
>
> Kennt jemand eine frei zugängliche Software, die etwas ähnliches
> bewerkstelligt, die gut geschrieben ist, und die ich studieren könnte, um mein
> Vorhaben voranzutreiben?

Zu spezifisch fürchte ich. Ein Tipp. Wenn Du eine Software kennst die
Daten plotten
kann - wie etwa GNUPlot - dann würde ich die spezifische Datei selber
einlesen, die
Berechnungen ausführen und im GNUPlot format abspeichern. Dann ist es
einfach
diese Datei in GNUPlot anzuzeigen. Es gibt sogar Bibliotheken für
Python mit der man
GNUPLot direkt ansprechen kann.

Dabei lernst Du am Meisten!
Nun weiss ich leider nicht, ob GNUPlot für Deine Zwecke ausreicht...

Dietmar Schwertberger

unread,
Dec 20, 2009, 1:14:01 PM12/20/09
to
Jan-Herbert Damm schrieb:

> ich habe meinen autodidaktischen Python-Grundkurs abgeschlossen und möchte
> mich jetzt einem konkreten Projekt zuwenden. Ich möchte einen Code verbessern,
> der folgende Aufgabe hat:
>
> Es werden Daten eines Gerätes ausgewertet, die Licht, (Lichtverschmutzung)
> messen. Diese Daten werden bisher als eine in eine Instanz einer Klasse
> gespeichert und dann mit pylab (matplotlib) geplottet. Dazu gibt es rund ein
> Dutzend Funktionen, die die Darstellung verfeinern:

Wie wär's mit diesem Buch:
http://www.apress.com/book/view/9781430218432


Gruß,

Dietmar

Torsten Bronger

unread,
Dec 20, 2009, 1:15:13 PM12/20/09
to
Hall�chen!

Thomas Lehmann schreibt:

>> [...]
>>
>> Selbst mit meiner geringen Programmiererfahrung, erkenne ich, da�


>> der bisherige Code schlecht organisiert ist. Die
>> Formaterkennungslogik wird zigmal wiederholt, und das
>> Klassenkonzept ist wenig logisch und unpraktisch.
>>
>> Meine Frage:
>>

>> Kennt jemand eine frei zug�ngliche Software, die etwas �hnliches


>> bewerkstelligt, die gut geschrieben ist, und die ich studieren

>> k�nnte, um mein Vorhaben voranzutreiben?
>
> Zu spezifisch f�rchte ich. Ein Tipp. Wenn Du eine Software
> kennst die Daten plotten kann - wie etwa GNUPlot - dann w�rde ich
> die spezifische Datei selber einlesen, die Berechnungen ausf�hren


> und im GNUPlot format abspeichern. Dann ist es einfach diese

> Datei in GNUPlot anzuzeigen. [...]


>
> Dabei lernst Du am Meisten!

Das meinst du damit genau?

Zum einen scheint das Plotten per se ja nicht das Problem zu sein,
und Matplotlib ist eine solide, wenn auch schneckenlangsame
Plot-Bibliothek. Au�erdem lernt der OP so nicht, eine pragmatische
Klassenhierarchie zu bauen oder dem DRY-Prinzip zu folgen, was ja
seinen Aussagen nach die Schwachpunkte im bisherigen Code sind.

Ich gebe dir allerdings recht, da� Jan-Herbert kein spezifisches
Programm hier genannt bekommen wird, an dem er sich orientieren
k�nnte. Daf�r m��te man wenigstens den bisherigen Code sehen. Er
mu� sich stattdessen normalen guten Python-Code ansehen (oder B�cher
dazu lesen) und das auf sein Problem �bertragen.

Tsch�,
Torsten.

--
Torsten Bronger, aquisgrana, europa vetus
Jabber-ID: torsten...@jabber.rwth-aachen.de
oder http://bronger-jmp.appspot.com

0 new messages