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

Develop Documentation Guidelines #1575

Closed
tomspilman opened this issue Mar 21, 2013 · 12 comments
Closed

Develop Documentation Guidelines #1575

tomspilman opened this issue Mar 21, 2013 · 12 comments

Comments

@tomspilman
Copy link
Member

We need to develop a set of guidelines for users helping with MonoGame API reference documentation.

The guidelines should include some simple bullet points as to things documentation writers should address in class, method, and parameter docs.

It should also include examples of bad and good docs which illustrate what we want to see and what we don't want to see in the MonoGame docs.

The guide should be maintained in the wiki.

@darkling3100
Copy link

I definitely think that a very short bit of example code should be included just to see the basic usage of the method and a short clear explanation of the parameters. Also a string possibly somewhere at the top of the needed "#using" statement.

@tomspilman
Copy link
Member Author

very short bit of example code

Putting sample code into the inline reference docs is pretty hard to do, but I agree that examples are important. At the very least the reference docs could link to examples of use that can be shared for multiple methods. I just don't know how that would work in the C# XML doc format.

@darkling3100
Copy link

Well I'm not to sure how you would feel about adding samples individually per page, if doing it through the wiki (which would be a hell of a job), but I think that's the only way to get clearly defined examples. But yeah I don't think there would be any way to add examples inline and still keep code "cleanliness."

@totallyeviljake
Copy link
Contributor

I have to agree with @tomspilman about being able to supply useful sample code in the XML summary on a method. There are two segments of code in MonoGame. One is the low level platform code and the other is the XNA interface code. The XNA interface code should not require extensive documentation since it has a broad internet following already. The low level code will only be interfaced with "expert" level programmers who will be reading code rather than using a binary distro. For those reasons, I don't think we really need any code samples in the XML summaries. Just make sure the algorithm in the method is documented and the parameters are clearly documented with boundary conditions.

@darkling3100
Copy link

Very true, no point in righting hundreds of more lines of text when most is already documented.

@KonajuGames
Copy link
Contributor

Miguel would like us to use monodoc for documentation. We can import the
existing xmldoc into monodoc, and we can supply sample code sections in
monodoc. This is something that I have to look into.

@kentcb
Copy link

kentcb commented Mar 22, 2013

Never used monodoc before, but when using SHFB you can "import" working, compiling, regions of code into your XML doc as examples. I used that here, for example. Perhaps monodoc has something similar?

@tomspilman
Copy link
Member Author

I'm going to address this soon. Will add a README.md into the new Documentation folder which will contain instructions on how to help work on the docs as well as some examples of good and bad docs.

@tomspilman
Copy link
Member Author

Took a first stab at the guidelines...

https://github.com/mono/MonoGame/blob/develop/Documentation/README.md

... could use some feedback on it.

@danzel
Copy link
Contributor

danzel commented May 1, 2014

Looks like a good start, I don't see any issues with what's in there so far :)

@tomspilman
Copy link
Member Author

Thanks!

dtaylorus pushed a commit to dtaylorus/MonoGame that referenced this issue Aug 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants