Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 8 Next »

Overview

This page is a developer space for this project.

Developer Accounts Needed

Project Resources

Sprints and Milestones and Meeting Notes

 

UMLS Notes

Eclipse Setup

  • Performance tips - http://stackoverflow.com/questions/5660247/hints-to-improve-eclipse-performance
  • Eclipse Plugins
    • Use version 4.4 (Luna) - consider the J2EE edition
    • m2e with m2e-egit (Eclipse marketplace)
    • Jautodoc (Eclipse marketplace)
  • Set Eclipse preferences to use "UTF-8" as the character encoding and "Unix" as the line termination setting. These are not typical defaults
    • See General->Workspace under Window->Preferences
  • Code and XML Formatting in Eclipse (includes jautodoc configuration)
  • Configure Java warnings/errors according to spec (need screenshots)
    • All warnings (including missing javadoc) should be resolved before commits occur
    • Keep these ignored
      • Code Style
        • Unqualified access to instance field
        • Non-externalized strings
        • Resource not managed via try-with-resource
      • Potential programming problems
        • n/a
      • Name shadowing and conflicts
        • local variable declaration hides another field
      • Deprecated and restricted API
        • n/a
      • Unnecessary code
        • Unnecessary else statement
      • Generic Types
        • Redundant type arguments
      • Annotations
        • n/a
  • Configure Javadoc warnings
    • Java -> Compiler -> Javadoc
    • Set everything that's "ignore" to "warning" and check all boxes.

Coding Standards

Only commit projects when the following things are the case:

  • Non-parent maven projects should not directly reference versions
    • where absolutely necessary, they should use variables for version info
  • All java errors and warnings should be removed.
  • Javadoc should be added and fleshed out
  • Imports should be properly organized and code is formatted
  • No "TODO" sections should remain in the code - create additional tickets if necessary
  • Service (JPA) calls should take parameters in general (except "add" and "update" calls).
  • Swagger annotations should be up to date and reflect current state of REST APIs
  • Exception handling "catch" clauses should always properly handle errors
    • Low-level code (e.g. services) should NEVER handle exceptions, they should show them
    • The right level at which to handle an error is any code that is capable of showing the user an error message.
  • System.out and System.err calls should be replaced by Logger.getLogger... calls
  • Remove any explicit package names, class names, file paths, database names, or other hard coded environment information that makes assumptions about what exists and where it exists.  All of this should be data-driven (either from config files or from the database.

Git Best Practice

Training Videos

  • TBD
  • No labels