Suche eine spezielle Präsentation zu Coding Guidelines
Hallo zusammen Ich bin vor einiger Zeit mal über eine Präsentation (PDF oder PowerPoint) zu Linux Coding Guidelines gestolpert, wo erklärt wird, weshalb Präprozessor-Makros in c-Files schlecht sind (der Wortlaut war irgendwie:"Why ....... are evil"). Die Präsentation war auf schwarzem Hintergrund und von einem nicht unbekannten Kernel-Entwickler verfasst. Leider half googeln nicht weiter. Kennt jemand die Präsentation und kann mir sagen, wo ich sie finden kann? Vielen Dank für eure Tip schon mal! -- Gruss Marco --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-programming-de+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-programming-de+help@opensuse.org
Moin moin, mit PDF kann ich nicht dienen... Am Mittwoch, 21. Februar 2007 16:42 schrieb Marco Schuler:
Ich bin vor einiger Zeit mal über eine Präsentation (PDF oder PowerPoint) zu Linux Coding Guidelines gestolpert, wo erklärt wird, weshalb Präprozessor-Makros in c-Files schlecht sind (der Wortlaut
less /usr/src/linux/Documentation/CodingStyle oder http://www.linuxjournal.com/article/5780 Hier steht zumindest, warum "ifdefs" nicht in .c Code erwünscht sind... HTH Andre --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-programming-de+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-programming-de+help@opensuse.org
On Wed, Feb 21, 2007 at 06:22:04PM +0100, Andre Heine wrote:
http://www.linuxjournal.com/article/5780
Hier steht zumindest, warum "ifdefs" nicht in .c Code erwünscht sind...
Und hier (gleicher Autor, im wesentlichen gleicher Inhalt) http://www.kroah.com/linux/talks/ols_2002_kernel_codingstyle_talk/html/ gibts auch was in weiss auf schwarz. Meinst du die? Gruss, Sonja -- Sonja Krause-Harder (skh@suse.de) SUSE Research & Development ----------------------------------------------------------------- SUSE Linux Products GmbH GF: Markus Rex, HRB 16746 (AG Nuernberg) --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-programming-de+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-programming-de+help@opensuse.org
Hallo Sonja,
Am 22.02.07 schrieb Sonja Krause-Harder
On Wed, Feb 21, 2007 at 06:22:04PM +0100, Andre Heine wrote:
http://www.linuxjournal.com/article/5780
Hier steht zumindest, warum "ifdefs" nicht in .c Code erwünscht sind...
Und hier (gleicher Autor, im wesentlichen gleicher Inhalt)
http://www.kroah.com/linux/talks/ols_2002_kernel_codingstyle_talk/html/
gibts auch was in weiss auf schwarz. Meinst du die?
Ja, genau die hab ich gemeint. Vielen Dank! -- Gruss Marco --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-programming-de+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-programming-de+help@opensuse.org
On Wed, 2007-02-21 at 18:22 +0100, Andre Heine wrote:
Moin moin,
mit PDF kann ich nicht dienen...
Am Mittwoch, 21. Februar 2007 16:42 schrieb Marco Schuler:
Ich bin vor einiger Zeit mal über eine Präsentation (PDF oder PowerPoint) zu Linux Coding Guidelines gestolpert, wo erklärt wird, weshalb Präprozessor-Makros in c-Files schlecht sind (der Wortlaut
less /usr/src/linux/Documentation/CodingStyle
oder
http://www.linuxjournal.com/article/5780
Hier steht zumindest, warum "ifdefs" nicht in .c Code erwünscht sind ... ... im Kernel-Code erwünscht sind ...
Vorsichtig formuliert, würde ich dort vorgebrachten Argumente bez. #ifdefs als "sehr streitbar" bezeichnen. Ralf --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-programming-de+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-programming-de+help@opensuse.org
Am Donnerstag, 22. Februar 2007 10:10 schrieb Ralf Corsepius:
On Wed, 2007-02-21 at 18:22 +0100, Andre Heine wrote:
[...]
http://www.linuxjournal.com/article/5780
Hier steht zumindest, warum "ifdefs" nicht in .c Code erwünscht sind ...
... im Kernel-Code erwünscht sind ...
Vorsichtig formuliert, würde ich dort vorgebrachten Argumente bez. #ifdefs als "sehr streitbar" bezeichnen.
IMHO ist das eine Entscheidung, die der Entwickler treffen muss. Technisch spricht AFAIK nichts gegen irgendwelche defines in den *.c oder *.h Dateien. Vom design her finde ich das egal. Defines sind immer irgendwie unübersichtlich, wenn man fremden Code anguckt:)) Siehe auch das Kommentar im obigen Link... Nimmt z.B. C++, wird suggeriert, dass "inlines" "defines" vorzuziehen sind. Sieht auch viel schöner aus... Geht ja beides. Ciao Andre --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-programming-de+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-programming-de+help@opensuse.org
On Thu, 2007-02-22 at 13:32 +0100, Andre Heine wrote:
Am Donnerstag, 22. Februar 2007 10:10 schrieb Ralf Corsepius:
On Wed, 2007-02-21 at 18:22 +0100, Andre Heine wrote:
[...]
http://www.linuxjournal.com/article/5780
Hier steht zumindest, warum "ifdefs" nicht in .c Code erwünscht sind ...
... im Kernel-Code erwünscht sind ...
Vorsichtig formuliert, würde ich dort vorgebrachten Argumente bez. #ifdefs als "sehr streitbar" bezeichnen.
IMHO ist das eine Entscheidung, die der Entwickler treffen muss. Technisch spricht AFAIK nichts gegen irgendwelche defines in den *.c oder *.h Dateien. Und ob.
Defines in public *.h's führen zu einer "define-abhängigen API", zu potentiellen define-Clashes zwischen Paketen und verführen unbedarfte User dazu, defines zu benutzen um sich selbst auszutricksen. Gegen defines in privaten *.h's und *.c's spricht nicht viel, da sie nur lokal, innerhalb eines Paketes verwendet werden.
Siehe auch das Kommentar im obigen Link...
Nimmt z.B. C++, wird suggeriert, dass "inlines" "defines" vorzuziehen sind. Sieht auch viel schöner aus... Ist nicht nur schöner, ... inlines sind typen-streng, defines nicht.
Ralf --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-programming-de+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-programming-de+help@opensuse.org
Moin moin, Am Donnerstag, 22. Februar 2007 13:41 schrieb Ralf Corsepius:
http://www.linuxjournal.com/article/5780
Hier steht zumindest, warum "ifdefs" nicht in .c Code erwünscht sind ...
... im Kernel-Code erwünscht sind ...
Vorsichtig formuliert, würde ich dort vorgebrachten Argumente bez. #ifdefs als "sehr streitbar" bezeichnen.
IMHO ist das eine Entscheidung, die der Entwickler treffen muss. Technisch spricht AFAIK nichts gegen irgendwelche defines in den *.c oder *.h Dateien.
Und ob. Defines in public *.h's führen zu einer "define-abhängigen API", zu potentiellen define-Clashes zwischen Paketen und verführen unbedarfte User dazu, defines zu benutzen um sich selbst auszutricksen.
Design technisch ACK... Der Compiler macht ja keinen Unterschied, ob ein Header im eigenen Paket ist oder public. (oder doch???) Ist ein bisschen wie "goto". Die meisten hassen, andere lieben es:) Aber "irgendwie" bekommt man es hin, wenn man aufpasst. Dazu gibt es ein paar nette Kommentare: C++ makes it much harder to shoot yourself in the foot, but when you do, it blows off your whole leg. - Bjarne Stroustrup In C we had to code our own bugs. In C++ we can inherit them. -Prof. Gerald Karam
Gegen defines in privaten *.h's und *.c's spricht nicht viel, da sie nur lokal, innerhalb eines Paketes verwendet werden.
Siehe auch das Kommentar im obigen Link...
Nimmt z.B. C++, wird suggeriert, dass "inlines" "defines" vorzuziehen sind. Sieht auch viel schöner aus...
Ist nicht nur schöner, ... inlines sind typen-streng, defines nicht.
Jep... Ciao Andre --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-programming-de+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-programming-de+help@opensuse.org
Am Wed, 21 Feb 2007 16:42:32 +0100
schrieb "Marco Schuler"
Ich bin vor einiger Zeit mal über eine Präsentation (PDF oder PowerPoint) zu Linux Coding Guidelines gestolpert, wo erklärt wird, weshalb Präprozessor-Makros in c-Files schlecht sind (der Wortlaut war irgendwie:"Why ....... are evil"). Die Präsentation war auf schwarzem Hintergrund und von einem nicht unbekannten Kernel-Entwickler verfasst.
Ich bin auf keine entsprechend aussehende Präsentation gestoßen, aber bei entsprechenden Suchbegriffen tauchen immer wieder die Namen Donald Knuth und Bjarne Stroustrup auf. Vielleicht meintest Du ja einen von denen. --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-programming-de+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-programming-de+help@opensuse.org
participants (5)
-
Andre Heine
-
Marco Schuler
-
mesmero
-
Ralf Corsepius
-
Sonja Krause-Harder