• Home
    • View
    • Login
    This page
    • Normal
    • Export PDF
    • Export Word
    • Attachments
    • Page Information

    Loading...
  1. Dashboard
  2. OpenJFX
  3. Main
  4. Community
  5. Code Style Rules

Code Style Rules

  • Created by Richard Bair, last modified by Kevin Rushforth on Oct 01, 2019

Code Style Rules

OpenJFX has strict code style guidelines that should be enforced on every changeset. All developers will differ in opinion on every coding convention (tabs or spaces?). However on a large project with many individuals, if it were left to each developer to specify their own conventions, then we would quickly end up with a complete mess for our source code. This extends far beyond spaces vs. tabs (which, by the way, we use spaces) but also includes API design and is one reason why all API must be reviewed before it is integrated. Consistency is vitally important in making an API easy to learn and use.

Our guidelines are based on the legacy Java Code Conventions, although we do not follow it strictly, except for those white-space rules that git jcheck enforces. The Java Code Conventions were drawn up at the dawn of time and are in sore need of a revision! For example 80-character line lengths was probably good advice in 1996, but in 2013 we have w-i-d-e monitors and we also like descriptive method and variable names. This leads to long lines and horrible wrapping when limited to 80 characters. A recommended maximum is 120 characters.

This document captures what rules we use. Any violations of these rules should be corrected either during a code review, or when discovered. By having a single consistent set of rules that we apply throughout the codebase, we make it easier to:

  1. Use tools to keep things nicely maintained
  2. Provide patches to any part of the platform
  3. Bring new developers up to speed
  4. Avoid chatter during a code review describing code style preferences unique to one part of the platform (we can instead just send a pointer to this document whenever there is a dispute)
  5. Handle disputes quickly and efficiently

Not everybody will like all of the code style rules, but hopefully most people will like most of them. More important, by following these rules we will have a consistent codebase with all the aforementioned benefits. This is a "living document" and will be amended as we go along. When new issues arise, we will add them to this list.

Whitespace

As mentioned above, some of the white-space rules are enforced by git jcheck. The rest are conventions to which we should all strive to adhere.

Enforced by jcheck

  1. No trailing whitespace. Most (all?) IDEs can be configured to automatically trim trailing whitespace
  2. Use Spaces not TABs.
  3. Use Unix-style (LF) line endings. No DOS-style (CR-LF) line endings.

Encouraged by Convention

  1. Use 4 space indentation
  2. Use a single new-line at the end of every file
  3. Insert a blank line between the Copyright notice and the package statement
  4. Insert a blank line between the package statement and any import statements
  5. There should be one blank line between the last import statement and the class documentation
Overview
Content Tools
ThemeBuilder
  • No labels

Terms of Use
• License: GPLv2
• Privacy • Trademarks • Contact Us

Powered by a free Atlassian Confluence Open Source Project License granted to https://www.atlassian.com/software/views/opensource-community-additional-license-offer. Evaluate Confluence today.

  • Kolekti ThemeBuilder Powered by Atlassian Confluence 8.5.21
  • Kolekti ThemeBuilder printed.by.atlassian.confluence
  • Report a bug
  • Atlassian News
Atlassian
Kolekti ThemeBuilder EngineAtlassian Confluence
{"serverDuration": 177, "requestCorrelationId": "d6049b6bf4165da8"}