Portabilität - Linux ist ja auch nur ein Windows



  • eine kleine frage schrieb:

    hi,

    Dass dies nicht immer so einfach ist, hat Marcus Bäckmann beim ersten Forentreffen eindrucksvoll gezeigt.

    was war da genau, wenn ich fragen darf?

    eigentlich hat er gezeigt, daß es recht einfach ist, wenn ich mich recht erinner.

    er hat nen kleinen vortrag über's MVC-Konzept (siehe humes page) gehalten. und den räuber-beute-system-simulator aus seinem buch mit ner GUI verziert. und vorgemacht, wie man mit dem visitor-pattern prima den simulator von der gui trennen kann. ne kleine konsole-anwendung zum testen. und wenn der simulator steht auch ne gui drum. und theorettich auch ne gui mit nem anderen gui-tool oder nem anderen bs.



  • Potierbarkeit muss immer im Design schon berücksichtigt werden.
    Ursprünglich waren alle C-Programme portierbar bis die Hersteller
    anfingen dies bewusst aufzugeben. Heute versucht man diese
    Entwicklung mit wxWidget, QT, VLX und wie sie alle heisen.

    Oft findet man vollkommen unnötige Abhängfigkeiten von
    z. B. der MFC. Deswegen verwende ich wenn möglich immer
    Cross-Platform-Librarys wie cbccl.



  • Das ist mal ein guter Bericht über das Thema. Fange gerade damit an, möglichst systemunabhängig zu schreiben. Macht irgendwie ne Menge Spaß, aber für mich ist atm wirklich die "Compilerunabhängigkeit" das größte Ärgernis.

    Was ich mich schon lange gefragt habe: warum muss man (soweit ich weiß) NUR unter Windows verschiedene Hauptprozeduren verweden, je nach Programmtyp? Also statt main() auch mal WinMain, LibMain oder gar deren Unicode-Äquivalente... Ich finde, dass Microsoft da wirklich großen Mist verzapft hat.



  • Shade Of Mine schrieb:

    Viel tun, um sich gegen Compilerprobleme zu schützen, kann man leider nicht.

    Am einfachsten ist es, sich direkt auf einen Compiler zu beschränken. Wenn man den gcc nimmt, deckt man wahrscheinlich schon alle relevanten Systeme mit ab. Wenn man lieber mit einem anderen Compiler entwickelt, zB. weil dort die IDE so schön ist, hat man zumindest nur noch zwei Compiler, die man testen muss.

    Noch mehr Compiler zu unterstützen, macht nur bei OpenSource Sinn.



  • DrGreenthumb schrieb:

    Noch mehr Compiler zu unterstützen, macht nur bei OpenSource Sinn.

    darf man fragen, welchen?



  • solaris-cc, icc...



  • Man kann viele Probleme vermeiden, wenn man aktuelle Compiler einsetzt, die so gut wie möglich erstmal den ISO-Standard umsetzen. Klar gibts dann immer noch Stolperfallen, aber man minimiert es schon mal. Somit muß man sich nicht mal auf einen bestimmten Compiler einstellen.



  • SG1 schrieb:

    solaris-cc, icc...

    thx..



  • andere Möglichkeiten der Distribution bieten Scons und CMake, da sie portable Wrapper um Make sind

    sie ersetzen make, aber sie wrappen es nicht!



  • asdasd schrieb:

    andere Möglichkeiten der Distribution bieten Scons und CMake, da sie portable Wrapper um Make sind

    sie ersetzen make, aber sie wrappen es nicht!

    Das trifft nur auf Scons zu. CMake generiert Makefiles.


Anmelden zum Antworten