Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Code and Documentation Style Guide #241

Open
DemoXinMC opened this issue Jan 4, 2024 · 1 comment
Open

Code and Documentation Style Guide #241

DemoXinMC opened this issue Jan 4, 2024 · 1 comment
Labels
Docs Feature New functionality or extending of an existing one
Milestone

Comments

@DemoXinMC
Copy link
Contributor

As far as I know, SFML.NET doesn't have an official style guide for either code or in-code documentation. There is a general guide for C# coding conventions, but AFAIK, it doesn't cover things like maximum line length, use of expression bodies for one-line methods, or constructor signature format.

As I've been working through a lot of the issues, I've noticed a ton of inconsistencies in general code style:

  • Chained constructors frequently have their base() or this() chaining on a second line, even though both pieces are very short
  • Use of unsafe, fixed, and GC.Alloc() are very inconsistent across different classes despite being used for the same purposes
  • In-code documentation makes use of a LOT of lines that amount to ////////////////////////////// and this seems super wasteful
  • In-code documentation seems to be mostly stuck on the idea of keeping lines shorter than 80 characters; this seems super unnecessary in the modern landscape of large resolution screens

I will update this issue if/when I run into other prevalent inconsistencies. I would really like feedback about creating a set of actual guidelines so that we can unify the code and documentation quality.

@eXpl0it3r eXpl0it3r added the Docs label Jan 4, 2024
@eXpl0it3r eXpl0it3r added the Feature New functionality or extending of an existing one label Jun 5, 2024
@Marioalexsan
Copy link
Member

Some of the things are now covered by the code style enforcement at build time, such as the use of expression bodies. We still have to look at GC.Alloc() vs fixed though.

@eXpl0it3r eXpl0it3r added this to the 3.0 milestone Sep 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Docs Feature New functionality or extending of an existing one
Projects
None yet
Development

No branches or pull requests

3 participants