Microsoft stellt sichere Programmiersprache SDL vor



  • Ethon schrieb:

    Nein, er kritisiert höchstwarscheinlich das SDL-Team, von dem auch der Code in seinem Beitrag stammt. Lies doch mal den letzten Kommentar.

    Dann hat TyRoXx das SDL Team nicht verstanden, da wird ein Fall Null-Auto-Zuweisung nach Freigabe angeben. Der Entwickler muss kein NULL setzen, dass soll die Umgebung für ihm machen, damit solchen dumme Macros, wie das SDL gesehen hat, unnötig werden.



  • TyRoXx schrieb:

    Es ging mir hauptsächlich um den Kommentar, in dem jemand von Microsoft schlechten Code empfiehlt. Vor allem, weil es in dem Post darum geht, dass potentiell unsicherer Code von Visual C++ 11 als Fehler angezeigt werden kann.

    Dann lies nochmal worum es geht.
    double delete ist ein Problem in vielen Codes. CHECKED_DELETE Macros sind eine gaengige Loesung fuer das Problem (nicht eine gute, aber eine gaengige).

    Nachtrag: das SDL Team sagt nicht, dass man diese Macros verwenden soll, noch dass diese Teil der SDL Implementierung im VC++ sind, sondern dass dies eine aktuelle Praxis ist. Das ist ein sehr relevanter Unterschied!

    Diese /sdl -Option ist so lächerlich wie selbstverständlich. Deswegen ist sie auch nicht der Rede Wert und dient nur als Inspiration und Namensgeber.
    Einige der Warnungen ergeben schon Sinn wie C4146 "A unary minus operator was applied to an unsigned type, resulting in an unsigned result".

    Genauso wie -Weffc++ beim gcc.
    Warnungen sind prinzipiell nie verkehrt.

    Du hast einfach nur nicht verstanden worum es geht.

    SDL ist keine Loesung fuer alle unsere Probleme, aber es warnt bei ein paar tricky Sachen. zB sind die unsafe Function Warnings im VC++ schon sehr nett. Ich finde es praktisch wenn mein Compiler mich vor potentiellen Fehlern warnt. Ich kann ja immernoch die Warnung abschalten wenn ich sie fuer nicht sinnvoll erachte.

    Aber Code wird nicht nur von guten Programmierern entwickelt sondern auch von Schlechten. Und die brauchen jede Hilfe die sie bekommen koennen.



  • Also -Weffc++ habe ich noch nie verwendet. Was tut das nochmal?



  • 314159265358979 schrieb:

    Also -Weffc++ habe ich noch nie verwendet. Was tut das nochmal?

    Doku lesen. Ist ja echt nicht schwer, oder?

    Es schaltet Warnungen aus Effective C++ ein. Die sind tw auch doof - aber es ist nett sie zu haben wenn man sie denn nutzen will.



  • Schwer nicht, aber Arbeit. Danke unso.



  • 314159265358979 schrieb:

    Also -Weffc++ habe ich noch nie verwendet. Was tut das nochmal?

    Die Idee fand ich gut, weil ich auch das Buch (Effective C++) immer gern empfehle. Aber im Buch stehen halt Daumenregeln drin, die nicht immer passen. Und wenn die nicht passen, nervt so eine Warnung. Mir wurde da mal was angemeckert, weil ich einer bestimmten Klassen keinen virtuellen Destruktor spendierte. Der war aber in meinem Fall auch unnötig. Man muss ja nicht immer "polymorph löschen" können, gerade bei so Dingen wie Iterator-Klassen oder Funktionsobjekten, wo es mal praktisch sein kann, sie per public inheritance zusammenzusetzen à la CRTP oder so...

    Da fällt mir ein, ich wollte immer noch ein paar andere "static code analyzer" ausprobiert haben.



  • krümelkacker schrieb:

    Aber im Buch stehen halt Daumenregeln drin, die nicht immer passen.

    Faustregeln.



  • volkard schrieb:

    krümelkacker schrieb:

    Aber im Buch stehen halt Daumenregeln drin, die nicht immer passen.

    Faustregeln.

    Volkard wird mit -Wduden compiliert. 😉



  • Bashar schrieb:

    volkard schrieb:

    krümelkacker schrieb:

    Aber im Buch stehen halt Daumenregeln drin, die nicht immer passen.

    Faustregeln.

    Volkard wird mit -Wduden compiliert. 😉

    eher -Wlexikon

    Wobei er in diesem Fall versagte, Daumenregel ist legitim.

    Sorry@volkard



  • TyRoXx schrieb:

    Ein Post auf blogs.msdn.com bietet erstmals Einblicke in die jüngste Programmiersprache aus dem Hause Microsoft. Die Sprache verbindet die Verbosität von C++ mit der Aktualität von C und bietet einzigartige Sicherheitsfunktionen. Erscheinen wird diese Revolution mit Visual Studio 11 unter dem Namen Secure Development Language, kurz SDL.

    Der Name ist wohl Programm zum Krieg gegen die Simple DirectMedia Layer.
    Denn wenn man SDL in google eingibt, dann ist diese das Erste, was auftaucht.

    Da die SDL mit Version 2.0 bald unter einer zlib artigen Lizenz stehen wird, und somit für kommerziell agierende Firmen deswegen plötzlich interessant wird und deswegen zur Konkurrenz von DirectX werden kann, will man der SDL wohl den Boden unter den Füßen wegziehen, in dem man eine stark vermarktete Programmiersprache mit dem gleichen Namen auf den Markt wirft, so daß die Lib bei der Googlesuche nur noch untergehen kann.

    Die Methoden von MS sind echt verabscheuenswürdig. 😡 👎 👎



  • Klar...

    MfG SideWinder



  • Habe ich auch gedacht als ich SDL gelesen habe. Am Ende gibt es noch eine Option in den Einstellungen "Mit SDL kompilieren." Das kann man leich verwechseln mit "SDL linken". 😮



  • duden schrieb:

    Bashar schrieb:

    volkard schrieb:

    krümelkacker schrieb:

    Aber im Buch stehen halt Daumenregeln drin, die nicht immer passen.

    Faustregeln.

    Volkard wird mit -Wduden compiliert. 😉

    eher -Wlexikon

    Wobei er in diesem Fall versagte, Daumenregel ist legitim.

    Sorry@volkard

    Richtig, da hat Bashar den pi gemacht und war zu faul die Doku zu lesen. Mit -Wduden geht Daumenregel durch, kombiniert man aber -Wduden mit -pedantic... 🤡



  • duden schrieb:

    Bashar schrieb:

    volkard schrieb:

    krümelkacker schrieb:

    Aber im Buch stehen halt Daumenregeln drin, die nicht immer passen.

    Faustregeln.

    Volkard wird mit -Wduden compiliert. 😉

    eher -Wlexikon

    Wobei er in diesem Fall versagte, Daumenregel ist legitim.

    Sorry@volkard

    Legitim? Klar. Aber es verrät, daß jemand mit seiner deutschen Sprache nicht so liebevoll umgeht, wie mit seiner Lieblingsprogrammiersprache.
    Es ist die wörtliche Übersetzung der "rule of thumb" oder "thumb rule" und zieht immer mehr ein, weil die Leute auch englische Bücher lesen und das mit der Zeit vermengern.
    Noch(!) lassen sich die Spuren erahnen, "Faustregel" sieht man im Internet in allen Themengebieten von allen Autoren. "Daumenregel" eher in technisch-naturwissenschaftlichen Threads und eher aus höheren Bildungsschichten.



  • SDL ist auch die Abkürzung für die Specification and Description Language.

    Fluch der TLA, der Thesaurus Linguae Aegyptiae, äh Three Letter Acronym 😉

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


Anmelden zum Antworten