Programmieren für Loksim

  • Hallo Zusammen,


    da nebenan mal wieder das Thema 'Programmieren' hochkommt, vielleicht so ein, zwei Bemerkungen von mir zu diesem Thema.
    Grundsätzlich ist das Programmieren gar nicht so schwer und auch garnicht teuer. Es gibt gute Entwicklungsumgebungen incl. Compiler für nahezu alle gängigen Hochsprachen für Lau aka Freeware. Man besorge sich die entsprechende Software und baut sich ein 'Hello World' zusammen um zu sehen, ob man mit der Umgebung und/oder der Sprache zurecht kommt.
    Wie Lukas schon richtig geschreiben hat, ist das XML-Format der Loksimdateien eine offene Einladung an alle, damit 'herumzuspielen'. Es gibt da viele Möglichkeiten und Ideen, die hier oder auch im Forum nebenan schon beschreiben worden sind. Es muß sich nur jemand hinsetzen und anfangen.


    Der Eine oder Andere weiss es bereits, das ich da ein kleines Tool geschrieben habe, das genau das macht, was ich oben beschreiben habe: Es schreibt XML-Dateien. ;-) Und die Entwicklung war auch nicht wirklich Aufwendig im Vergleich zu der Beschaffung der geeigneten Unterlagen. An dieser Stelle meinen Dank an die Zuträger.


    Also, A r s c h hoch und angepackt.
    Der Rest kommt dann von alleine.


    Gruss
    Uwe

    --
    Wenn du die Götter zum Lachen bringen willst, mach’ einen Plan.

  • Hallo Zusammen,


    ich hatte ja bereits vor einiger Zeit an anderer Stelle angemerkt, das die Entwickler 'regelmäßig' berichten möchten. Wie der eine oder andere, der lesen kann, bereits gemerkt haben könnte, hat sich im Entwicklerbereich eine Veränderung ergeben, sodaß dort mein Name auch auftaucht. Damit bin ich natürlich in der Pflicht, obige Forderung auch umzusetzten.


    Zunächst erlaubt mir einen kleinen Rückblick auf das vergangene Jahr. Nachdem ich mit eigen Hindernissen den Loksim compilieren konnte, habe ich mich an die Abarbeitung der verschiedenen Vorschlagslisten gemacht und dabei festgestellt, das diese eine doch recht ansehliche Länge bekommen haben. Daher bin ich noch nicht so weit fortgeschritten, wie ich es gerne gehabt hätte, zumal einige der Vorschläge die Graphik betreffen, etwas das ich nicht anfassen möchte.


    Aktuell arbeite ich daran, die Fonts genau wie Objekte über die 'statischen' Variablen steuerbar zu machen. Was dann kommt, werden wir sehen.


    Weiterhin möchte ich Lukas für seine Unterstützung bei meinen ersten Gehversuchen danken.


    Und nicht vergessen:
    Was sich ändert oder was neu ist kann hier Loksim-Wiki nachgesehen werden.


    Gruss
    Uwe

    --
    Wenn du die Götter zum Lachen bringen willst, mach’ einen Plan.

  • Tach, ich bin es. ;-)


    Ich kann mit großer Freude verkünden, das nunmehr in der kommenden Version auch die Fonts über statische Varaiblen steuerbar sind. Das heißt, Fonts können wie Objekte gesteuert und auch ausgeblendet werden können.


    Zwischendurch ist noch ein kleiner Fehler betreffend das Zs7 behoben worden.


    Gruss
    Uwe

    --
    Wenn du die Götter zum Lachen bringen willst, mach’ einen Plan.

    Einmal editiert, zuletzt von taler () aus folgendem Grund: Fehlenden Buchstaben ergänzt

  • Uwe Danke das ist wirklich eine Sache die schon ewig lang auf meiner Wunschliste herumgeistert...
    Dafür darfst du dir locker ein Bier aufmachen.. ^^

  • Uwe Danke das ist wirklich eine Sache die schon ewig lang auf meiner Wunschliste herumgeistert...

    Nicht nur bei Dir. ;-) Hat sich aber auch etwas gewehrt.


    Dafür darfst du dir locker ein Bier aufmachen.. ^^

    Was haste denn im Angebot André?


    Gruss
    Uwe

    --
    Wenn du die Götter zum Lachen bringen willst, mach’ einen Plan.

  • Hallo alle zusammen,


    Nach Uwe möchte ich mich heute dazu outen, mich dem Loksim-Entwicklerteam (programmseitig versteht sich) angeschlossen zu haben.


    Für alle, die mich noch nicht kennen: Ich habe einst vor vielen Jahren als Jugendlicher das Quertragwerke-Tool geschrieben. Inzwischen bin ich Student und studiere Informatik in Stuttgart. Da ich vorher noch nicht so viel unter Windows und mit C++ programmiert habe, konnte ich früher nicht dazu beitragen.


    Ich will mein bestes dazu beitragen, Loksim noch besser zu machen. Und erst durch die Community, die Strecken, Objekte, Führerstände usw. baut, ist der Loksim eine runde Sache.


    Mein erster Beitrag zum Loksim sind Detailverbesserungen in der LZB, eine Sache, die mir schon ewig auf der Seele brannte. Stand aktuell sollte die LZB80 jetzt zu 90% realitätsgetreu nachgebildet sein. Was fehlt, sind gewisse Störfälle, wie Übertragungsausfall u.dgl., die sich m.E. nicht lohnen. CIR-ELKE möchte ich in Angriff nehmen, werde es aber nicht ums verrecken in das nächste Release unterbringen wollen.


    Ich möchte in unregelmäßigen Abständen kommunizieren, was ich einbaue, werde dies aber erst im Nachhinein tun, weil das keine Erwartungshaltung erzeugt. Ich denke, es sollte auch jeder akzeptieren können, dass mein Leben aus mehr als Loksim besteht :-)


    Viele Grüße
    Martin

  • Hallo Martin,


    herzlich willkommen bei 'Programmieren für Loksim' ;-)


    BTW: Dir ist es letztendlich zu verdanken, das es diesen Thread hier gibt.
    Denn Dein Quertragwerkstool war für mich der Auslöser den Fahrleitungsgenerator zuschreiben und über diesen bin ich dann zum Loksimcode gekommen.


    Gruss
    Uwe

    --
    Wenn du die Götter zum Lachen bringen willst, mach’ einen Plan.

    Einmal editiert, zuletzt von taler () aus folgendem Grund: Ergänzung

  • Hallo Martin,

    Hallo alle zusammen,


    Nach Uwe möchte ich mich heute dazu outen, mich dem Loksim-Entwicklerteam (programmseitig versteht sich) angeschlossen zu haben.

    ich wünsche dir alles Gute (wir kennen uns ja schon sehr lange und auch persönlich).


    Viel Erfolg


    Rainer

  • Hallo,


    welche Programme eignen sich genau zum Programmieren? Was hat es mit dem <Hello World> auf sich? Interessiere mich schon etwas länger für das programmieren, aber leider fehlen bei mir komplet die Grundlagen. Könnte mir jemand helfen oder vielleicht eine Seite empfehlen, die eine Hilfe enthält. "Die Zukunft muss schließlich in die richtigen Richtungen gelenkt werden!"


    Gruß Eisenbahner96

    Der, Die, Das. Wieso, Weshalb, Warum? Wer nicht fragt bleibt dumm!

  • Programmieren lernt man nicht mal so nebenbei. Man muss prinzipielle Konzepte verstehen und auf ein konkretes Problem anwenden. Das kann sehr komplex werden.


    Es gibt sehr viele verschiedene Programmiersprachen. Der Loksim beispielsweise ist großteils in C++ geschrieben. Bevor man das versteht, muss man sich mit objektorientierter Programmierung auseinandersetzen. Es ist Tradition, wenn man eine Programmiersprache(!) lernt(Programmieren und Programmiersprache sind zwei verschiedene Dinge die zu lernen sind!!), ein Hello-World Programm zu schreiben/ zu sehen wie es geschrieben wird. Das ist ein Programm, das einfach nur Hello World ausgibt. Daran kann man ein paar syntaktische Sachen sehen, die besonders sind in der Sprache.


    Es gibt viele Tutorials, die Mehrheit in Englisch. Es gibt auch verschiedenste Printliteratur, die schon auch ins Geld gehen kann .....


    Programmieren lernt man nur durch tun. Alle Theorie ist grau, wenn man sich nicht selbst ransetzt. Die ersten Programme sollten einfach und überschaubar sein und sich dann steigern.


    Ich tu es, seit ich 13 oder so bin.


    Das soll dich keinesfalls abschrecken, es selbst zu wagen. Jedoch wirst du viel Ausdauer benötigen, bis du auf dem Stand bist, direkt im Loksim zu programmieren.

  • Aus eigener Erfahrung kann ich stark dazu raten, OOP (Objektorientiertes Programmieren) anhand von Java zu lernen, und ebenfalls aus eigener Erfahrung kann ich sehr davon abraten, in irgendeiner Prozeduralsprache wie QuickBasic und anderem Murx zu "lernen", auch wenn manche alten Hasen das so machen. Hatte so einen als ITG-Lehrer, vergeudete Jahre...

    Triebfahrzeugführer im Streckendienst der DB Fernverkehr in Frankfurt/Main
    BR: 101, 120, 147.5, IC-Steuerwagen, IC2-Steuerwagen, 401 ("ICE 1"), 402 ("ICE 2"), 403 ("ICE 3"), 406 ("ICE 3M"/"ICE 3MF"), 407 ("neuer ICE 3"), 411 ("ICE T"), 415 ("ICE T")

  • Blank OO gleich am Anfang finde ich nicht empfehlenswert.


    Bevor man in die OOP geht, sollte man sich überhaupt erstmal im klaren sein, was Variablen, Operatoren, usw. sind, wozu man sie braucht etc. pp. Ohne das nutzt OO garnix.


    Und für einiges ist OO auch völlig unnötig. Rekursion z.B.


    Es ist egal, welche Programmiersprache man zum lernen nimmt. Wichtig ist, dass sie nicht zu beschränkt in ihren Möglichkeiten ist und dass sie immer Mittel zum Zweck bleibt.


    Jemand, der programmieren kann, kann sich in nicht allzugroßer Zeit in die Besonderheiten einer Programmiersprache einarbeiten.


    Jemand, der eine Programmiersprache lernt, wird sie ohne die Konzepte dahinter nie lernen und ist dann bei einer anderen Programmiersprache verloren.


    Ich hoffe, den Unterschied verständlich herausgestellt zu haben.


    Jede Programmiersprache hat ihre Einsatzfelder, Vorzüge und Nachteile. Es ist müßig, eine Rangliste der besten Programmiersprachen aufzustellen. Das hängt zu stark vom Einsatzgebiet und auch vom persönlichen Geschmack ab. Gewiss kann man mit Java anfangen, früher oder später kann man es auch an seine Grenzen bringen.


    Viele Grüße
    Martin

  • Hallo Eisenbahner96,

    Hallo,
    welche Programme eignen sich genau zum Programmieren?

    hm, alle!?


    Was hat es mit dem <Hello World> auf sich?

    http://de.wikipedia.org/wiki/Hallo-Welt-Programm



    Interessiere mich schon etwas länger für das programmieren, aber leider fehlen bei mir komplet die Grundlagen. Könnte mir jemand helfen oder vielleicht eine Seite empfehlen, die eine Hilfe enthält.

    http://de.wikipedia.org/wiki/Programmierung


    Und um ans Eingemachte zu gehen:
    Wenn Dir die Grundlagen fehlen, so wirst Du sie Dir erarbeiten müssen. Damit könntes Du anfangen. Grundsätzlich ist programmieren das Erarbeiten einer Lösung für ein gegebenes Problem. Und wie die Lösung dann umgesetzt wird, ist abhängig von der Umgebung. Ist die Umgebung eine Maschiene, so kann die Programmierung als fest verdrahtete Schaltung erfolgen. Ist die Umgebung ein Computer, so kann die Programmierung in einer Programmiersprache erfolgen. Welche Sprache ist erst einmal egal.


    Ich habe mit Baisc angefangen und bin über Assembler bei Pascal und C++ gelandet, was aber auch nur Sprachen sind und mit dem finden einer Lösung nichts zu tun hat.


    Viel Erfolg beim Lernen.


    Gruss
    Uwe

    --
    Wenn du die Götter zum Lachen bringen willst, mach’ einen Plan.

    Einmal editiert, zuletzt von taler () aus folgendem Grund: Fipptehler

  • Ich habe mit Baisc angefangen und bin über Assembler bei Pascal und C++ gelandet, was aber auch nur Sprachen sind und mit dem finden einer Lösung nichts zu tun hat.


    Uwe man könnte meinen mit Basic und Assembler angefangen du hattest auch die Brotkiste...^^
    Assembler setzt aber schon wieder Hardwarekenntnisse vorraus, gerade im Mikrocontrolerbereich.
    Trotzalledem programmiere ich eben jehne lieber mit Assembler als mit C++.


    Letzten Endes hat Max den Finger drauf.
    Egal ob man heutzutage mit Java oder Basic beginnt, die Grundlagen müssen da sein, ohne die wird es Mist.
    Ein Umstieg zwichen den Sprachen später, ist in der heutigen Zeit gar nicht mehr so wild wie zu Zeiten eines C<64 Basic´s,
    wo man sich beim Umstieg auf Pascal oder C++ selbiges erstmal getrost aus dem Kopf hat schlagen müssen.
    Die Sprachen sind heutzutage sehr ähnlich geworden siehe Php das sehr an Basic angelehnt ist.


    Gruß André

  • Hallo André,

    Uwe man könnte meinen mit Basic und Assembler angefangen du hattest auch die Brotkiste...^^

    nein, ich habe[1] einen richtigen Computer, einen apple ][-Nachbau. War damals richtig teuer mit Floppy und Monitor. Und für Assmblerporgrammierung war der 6502 auch nicht schlecht. Nix mit Indexregistern und so'n Zeuch. Alles schön im RAM hin- und herschieben.


    Gruss
    Uwe, manchmal von alten Zeiten...


    [1]Die Kiste steht noch hier im Schrank.

    --
    Wenn du die Götter zum Lachen bringen willst, mach’ einen Plan.

  • Hallo Zusammen,


    heute mal ein Bericht aus der Programmierküche...


    Bisher wurde der Loksim mit einem etwas älteren Compiler (VC6) bearbeitet, nunmehr sind wir dabei, auf einen etwas aktuelleren Compiler (VC2010) umzustellen. Bei mir sträubt sich der Compiler noch etwas, aber das werden wir in den Griff bekommen. Hierdurch sind allerdings die Arbeiten an der zusätzlichen 'Nicht-Halt'-Option vulgo Zugfolgestelle ins Stocken geraten.


    Soweit der Bericht von hier, zurück an die angeschlossenen Anstalten...


    Gruss
    Uwe

    --
    Wenn du die Götter zum Lachen bringen willst, mach’ einen Plan.