Allgemeine Fragen

Hi,
ich habe ein paar allgemeine Programmierfragen:

  • Sollte lieber in deutsch oder englisch programmiert werden (Funktionen, Variablen etc.)? Eure Erfahrungen und Meinungen würden mich hierzu interessieren.

  • Sollten Eigenschaftswerte eines Objektes lieber direkt oder über eine Objektmethode gesetzt und gelesen werden? (Mal abgesehen von Eigenschaften die generell eine weitergehende Änderung der Daten oder der Visuallisierung verändern wie zB: „objekt.sichtbar“)

  • Im Moment bin ich mir nicht sicher, wie ich meine Datei-Struktur aufbaue. Konkret handelt es sich um XML-Dateien für eine Lernanwendung. Dabei kommen sehr viele Daten zusammen weshalb ich die Datei auftrennen möchte (Geschwindigkeitsoptimierung). Macht es nun Sinn, beispielsweise pro Seite eine Datei zu verwenden (ähnlich HTML), oder doch lieber alles in ein paar wenigen Dateien (beispielsweise pro Kapitel).

  • Ich suche ein gutes Buch oder Internetreferenz für allgemeines Softwaredesign. Wie sollte ich meine Klassenstruktur aufbauen, was ist allgemein zu berücksichtigen, wie sind beispielsweise klassische Windowsanwendungen aufgebaut etc.

Vielen Dank für Eure Kommentare, Erfahrungen und Unterstützung und schöne Grüße
Daniel

Hi,

  • Sollte lieber in deutsch oder englisch programmiert werden
    (Funktionen, Variablen etc.)?

die Sprache der Programmierung ist englisch. Das betrifft ganz besonders die Dokumentation!

  • Sollten Eigenschaftswerte eines Objektes lieber direkt oder
    über eine Objektmethode gesetzt und gelesen werden?

Kapselung wird meist bevorzugt; von Fall zu Fall kann aber auch das direkte Setzen eines Wertes sinnvoll sein.

  • Im Moment bin ich mir nicht sicher, wie ich meine
    Datei-Struktur aufbaue. Konkret handelt es sich um XML-Dateien
    für eine Lernanwendung. Dabei kommen sehr viele Daten zusammen
    weshalb ich die Datei auftrennen möchte
    (Geschwindigkeitsoptimierung). Macht es nun Sinn,
    beispielsweise pro Seite eine Datei zu verwenden (ähnlich
    HTML), oder doch lieber alles in ein paar wenigen Dateien
    (beispielsweise pro Kapitel).

Hm da möchte ich pauschal eigentlich nichts zu sagen. Du kannst aber eine einzige XML-Datei in eine Objektstruktur umwandeln, die Du resistent im Speicher hälst - je nach Umfang der Anwendung als eigenständiges Programm (shared object etwa), oder über CORBA o.ä.

  • Ich suche ein gutes Buch oder Internetreferenz für
    allgemeines Softwaredesign. Wie sollte ich meine
    Klassenstruktur aufbauen, was ist allgemein zu
    berücksichtigen, wie sind beispielsweise klassische
    Windowsanwendungen aufgebaut etc.

Herrje, da gibt es ein Standardwerk. Mir fällt jetzt dummerweise der Name nicht ein… Ich schau mal, ob ich es in irgendeinem Schrank finde, und melde mich in dem Fall noch mal :smile:

Cheatah

Hi,

Barracuda.

  • Sollte lieber in deutsch oder englisch programmiert werden
    (Funktionen, Variablen etc.)? Eure Erfahrungen und Meinungen
    würden mich hierzu interessieren.

Also, ich programmiere seit über 20 Jahren. Es verbessert die Lesbarkeit des Codes, meine ich, wenn Du Englisch verwendest. Ganz einfach deshalb, weil die Programmiersprachen irgendwo auf Englisch basieren. Aber natürlich auch, weil es verbreiteter ist. Sollte mal jemand in USA auf die Idee kommen, Deinen Code warten zu wollen (oder auch nur eine Applikaton auf Portierbarkeit zu untersuchen), vermeidest Du Mißverständnisse. Die rudimentären Englischkenntnisse einer Programmiersprache kannst Du ruhigen Gewissens bei jedem, der sich mit Code befaßt, voraussetzen.

Etwas anderes ist die Dokumentation im Code. Hier solltest Du die Sprache verwenden, von der Du glaubst, daß sie in Deinem Hauptabsatzmarkt gesprochen und verstanden wird.
Einfach deshalb, damit Du nicht, wenn Du mit dem Kunden über ein Implementierungsproblem redest, ihm die Dokumentation mit übersetzen mußt. Außerdem ist es natürlich von Deinen Sprachkenntnissen abhängig, damit Du nicht das Äquivalent einer Gebrauchsanweisung für Billigprodukte lieferst …

  • Sollten Eigenschaftswerte eines Objektes lieber direkt oder
    über eine Objektmethode gesetzt und gelesen werden? (Mal
    abgesehen von Eigenschaften die generell eine weitergehende
    Änderung der Daten oder der Visuallisierung verändern wie zB:
    „objekt.sichtbar“)

Ist eher ein akademisches Problem, meine ich. Nach der reinen Lehre (ommmm) solltest Du den Weg über definierte Methoden wählen. Ansonsten nimm das, was sich, in dieser Reihenfolge, am ehesten anbietet :

Wartbarkeit des Codes
Performance des Codes
persönliche Präferenz

  • Im Moment bin ich mir nicht sicher, wie ich meine
    Datei-Struktur aufbaue. Konkret handelt es sich um XML-Dateien
    für eine Lernanwendung. Dabei kommen sehr viele Daten zusammen
    weshalb ich die Datei auftrennen möchte
    (Geschwindigkeitsoptimierung). Macht es nun Sinn,
    beispielsweise pro Seite eine Datei zu verwenden (ähnlich
    HTML), oder doch lieber alles in ein paar wenigen Dateien
    (beispielsweise pro Kapitel).

Denk ans Verschicken (es gibt immer noch Leute ohne CD-Laufwerk). Es ist außerdem einfacher, Fehler in kleinen Dateien zu beheben … der Mehraufwand für die zunehmende Anzahl der Querverweise lohnt sich, imho.

  • Ich suche ein gutes Buch oder Internetreferenz für
    allgemeines Softwaredesign. Wie sollte ich meine
    Klassenstruktur aufbauen, was ist allgemein zu
    berücksichtigen, wie sind beispielsweise klassische
    Windowsanwendungen aufgebaut etc.

Wenn Du in http://www.amazon.de die Stichwörter „Software Design“, „Programmierung“, „Softwareentwicklung“ u.dgl. eingibst, kriegst Du mehr Lesestoff angeboten, als Dir lieb sein kann.

Drei Empfehlungen von mir sind

ISBN: 1556154844 Buch anschauen Code Complete : Englisch, aber very gut.
ISBN: 3446193898 Buch anschauen GUI Design
ISBN: 3882291818 Buch anschauen Software mit ISO 9001

Die beiden letzteren kenne ich persönlich nicht, sind aber bei Amazon recht gut bewertet …

Vielen Dank für Eure Kommentare, Erfahrungen und Unterstützung

Gern geschehen

und schöne Grüße

Desgleichen.

Daniel

kw

Hi,

hab schon eins. Es ist das Buch, an das ich spontan dachte; aber IIRC leider doch nicht _das_ Standardwerk. Ich hoffe, es hilft trotzdem.

Wie sollte ich meine Klassenstruktur aufbauen, […]

Design Patterns
Erich Gamma
Addison-Wesley
ISBN 0-201-63361-2 Buch anschauen
DM 104,90

Cheatah

Hallo.

umwandeln, die Du resistent im Speicher hälst - je nach Umfang

Meine Art der Softwareentwicklung scheint sich inzwischen überholt zu haben. Ich halte die Dinger immer noch resident

Tschuldigung, konnte grad nicht anders. *g*

Gruß kw

Hi,

resistent im Speicher

resident

*argl* ich wußte doch, da stimmt was nicht… :smile:

Chea „Ich meinte natürlich resistent gegen Viren…“ tah *g*

Hi,

Etwas anderes ist die Dokumentation im Code.

NACK. Besonders im Code sollte IMHO englisch geschrieben werden. Außerhalb desselben gibt es den Unterschied zwischen Dokumentation (=technische Doku) und Handbuch (=Benutzerhandbuch) - ersteres ist (zumeist) auch bei deutschsprachigen Produkten, die von Deutschen für Deutsche im deutschsprachigen Einsatz erstellt wurden auf englisch; während letzteres sich an der bevorzugten Sprache des Anwenders orientiert.

Einfach deshalb, damit Du nicht, wenn Du mit dem Kunden über
ein Implementierungsproblem redest, ihm die Dokumentation mit
übersetzen mußt.

Implementierungen geschehen durch Techniker, die ebenfalls englisch sprechen - oder nicht genügend tauglich sind und ergo Support _benötigen_. Man sollte dann erst recht nicht versuchen, das ganze zu vereinfachen, weil man dadurch mehr Probleme schafft als löst.

Außerdem ist es natürlich von Deinen
Sprachkenntnissen abhängig, damit Du nicht das Äquivalent
einer Gebrauchsanweisung für Billigprodukte lieferst …

Naja, man sollte die Texte ggf. vielleicht von jemandem korrekturlesen lassen, der die Sprache besser beherrscht :smile:

Alles natürlich IMHO, welche ich aber von den meisten meiner Kollegen geteilt sehe.

Cheatah

Hi,

Barracuda.

Etwas anderes ist die Dokumentation im Code.

NACK. Besonders im Code sollte IMHO englisch geschrieben
werden. Außerhalb desselben gibt es den Unterschied zwischen
Dokumentation (=technische Doku) und Handbuch
(=Benutzerhandbuch) - ersteres ist (zumeist) auch bei
deutschsprachigen Produkten, die von Deutschen für Deutsche im
deutschsprachigen Einsatz erstellt wurden auf englisch;
während letzteres sich an der bevorzugten Sprache des
Anwenders orientiert.

Ich glaube, wir meinen das Gleiche. Vermutlich habe ich mich etwas verdrückt ausgekehrt …

Die Grenzen sind m.E. (Anm.d.Ü.:IMHO in einer halbtoten Sprache *g*) fließend. Letzten Endes kommt es dabei auf den Kreis derjenigen an, die sich mit dem Geschreibsel später auseinandersetzen müssen; Kundenorientierung sollte hier auch Trumpf sein.

OK?
Langes Leben und Wohlstand wünscht
Okinaptz - die Rache ist wie ein Targ und erhebt sich hungrig nach langem Schlaf - Uglwf
(kw)

Noch ein Hi,

Hi,

Barracuda.

wußtest Du eigentlich, daß die meisten tropischen Fische in einem Aquarium überleben können, das mit Menschenblut gefüllt ist?

Ich glaube, wir meinen das Gleiche.

Da ich den Rest Deines Postings kopfnickend gelesen habe, möchte ich das nicht bezweifeln. Vielleicht habe ich Dich auch einfach nur in dem Punkt falsch verstanden.

Die Grenzen sind m.E. (Anm.d.Ü.:IMHO in einer halbtoten
Sprache
*g*)

*rotfl*

fließend.

ACK. Man sollte immer den speziellen Fall speziell bewerten. Allgemeine Richtlinien helfen dabei, ersetzen aber nicht die eigene Entscheidung.

OK?

Und umgekehrt, wegen der Hitze :smile:

Cheatah

Ahoi.

wußtest Du eigentlich, daß die meisten tropischen Fische in
einem Aquarium überleben können, das mit Menschenblut gefüllt
ist?

wie lange? :wink:

Und wußtest Du, daß alle Goldhamster der Welt eine Pyramide bauen könnten, indem sie sich aufeinanderstellen, und daß diese dann bis zum Mond reichen würde?

Wenn die Viecher bloß nicht so doof wären …

Gruß kw

Ahoi.

Salve,

wußtest Du eigentlich, daß die meisten tropischen Fische in
einem Aquarium überleben können, das mit Menschenblut gefüllt
ist?

wie lange? :wink:

das ist nicht überliefert :wink:

Und wußtest Du, daß alle Goldhamster der Welt eine Pyramide
bauen könnten, indem sie sich aufeinanderstellen, und daß
diese dann bis zum Mond reichen würde?

Meinst Du, die Zahl der existierenden Hamster ist so günstig, daß die Pyramide geometrisch noch korrekt ist? :smile: